7-1 統計一行文本的單詞個數 (15 分)
本題目要求編寫程序統計一行字符中單詞的個數。所謂“單詞”是指連續不含空格的字符串,各單詞之間用空格分隔,空格數可以是多個。
輸入格式:
輸入給出一行字符。
輸出格式:
在一行中輸出單詞個數。
輸入樣例:
Let's go to room 209.
輸出樣例:
5
1.實驗代碼
#include<stdio.h>
int main ()
{
int count=0,i=0;
char str[1000];
gets(str); //輸入字符
while(str[i]==' ') //跳過開頭的空格
i++;
while(str[i]!='\0') //循環到\0時結束
{
if(str[i]!=' ')
{
count++;
while(str[i]!=' ') //跳過一個單詞的其他字符
{
if(str[i]=='\0') //如果循環到\0,跳出循環
break;
i++;
}
}
else
{
while(str[i]==' ')
i++;
}
}
printf("%d\n",count);
return 0;
}
2.實驗設計思路:
先輸入字符串 ,為空格時跳過且i+1 ,后一個循環條件為循環到\0時結束
如果不為空格則count++,為空格則i++
需注意事項:
3.本題遇到的問題及解決辦法:
錯誤截圖:
問題:我開始沒有考慮以空格結尾和全空格的情況
解決辦法:我換了一種輸入字符串的方式 然后添加了 if(str[i]=='\0') break; i++