2015藍橋杯校選-統計單詞個數
阿新 • • 發佈:2018-12-20
題目:輸入一個字串,求它包含多少個單詞。單詞間以一個或者多個空格分開。
第一個單詞前,最後一個單詞後也可能有0到多個空格。 比如:" abc xyz" 包含兩個單詞,"ab c xyz " 包含3個單詞。
如下的程式解決了這個問題,請填寫劃線部分缺失的程式碼。
注意:只填寫劃線部分的程式碼,不要填寫任何多餘的內容。比如已經存在的小括號,註釋或說明文字等。
答案:*p!=' ' && tag==1
解題思路:由題目給的程式碼可知,我們要填的是一個條件,滿足該條件則單詞數加1。那麼我們先想想如何統計單詞個數,當前一個是空格,下一個是字元,這樣我是不是就可以判斷它為一個單詞?是的。所以答案顯而易見。
#include<stdio.h> int get_word_num(char* buf) { int n = 0; int tag = 1; char* p = buf; for(;*p!=0 && *p!=13 && *p!=10;p++){ if(*p==' ' && tag==0) tag=1; if(_________________) { n++; tag=0; } //填空 } return n; } int main() { char buf[1000]; fgets(buf,1000,stdin); printf("%d\n", get_word_num(buf)); return 0; }