description
輸入一行字元,分別統計其中英文本母、空格、數字和其它字元的個數。
input
鍵盤上的任意字串,以;結束。
output
character= ,blank= ,digit= ,other= ;
sample input
case 1:printf("very good!");sample output
character=18,blank=2,digit=1,other=6;本題主要考察字元的操作。思路很簡單,因為題目中說了字串以;結尾(以特定符號結尾的字串都可以考慮用這種方法操作),使用乙個while迴圈,不斷進行getchar()操作,判斷得到的字元是否為『;』,如果是則跳出迴圈,否則對得到的字元進行判斷,建立四個變數分別儲存四種字元型別,根據得到的字元對相應變數進行+1,最後按格式輸出即可。
#include using namespace std;
int main()
cout << "character=" << character << ",blank=" << blank << ",digit=" << digit << ",other=" << other << ";";
return 0;
}
這裡說一下,要是沒有特定的符號作為結尾卻要用這種方法的時候,可以使用字串變數將整個字串讀入(字串中有空格的話可能不適用),如果使用while+getchar的話需要對檔案尾進行判斷,在oj上提供的資料是以eof(end of file)結尾的,只要對這個進行判斷就能將整個字串按字元讀入。 廈理OJ 1008 3 7紅玫瑰數
應大家要求,先來寫寫這題的解析 滑稽 description 若正整數n的所有因子之和等於n的倍數,則稱n為紅玫瑰數,如28的因子之和為1 2 4 7 14 28 56 28 2,故28是紅玫瑰數,求 1 1,700 之間最大的紅玫瑰數。2 1,700 之間有多少個紅玫瑰數。input無 outpu...
廈理OJ 1004 3 6搬磚問題
之前事情有點多,託更了,抱歉qaq description 某工地需要搬運磚塊,已知男人一人搬3塊,女人一人搬2塊,小孩兩人搬1塊,有多少種搬法用45人正好搬45塊磚?input無 output men women child sample input 無sample output men 0 wo...
南理oj 57 6174問題(水)
時間限制 1000 ms 記憶體限制 65535 kb 難度 2 描述 假設你有乙個各位數字互不相同的四位數,把所有的數字從大到小排序後得到a,從小到大後得到b,然後用a b替換原來這個數,並且繼續操作。例如,從1234出發,依次可以得到4321 1234 3087 8730 378 8352 85...