- 问题
- 输入一行字符,假设单词之间用空格隔开,统计有多少个字符
- 特殊情况
- 字符开头有一连串空格
- 字符结尾没有空格或有一连串空格
- 思路
- 第一种,在输入字符后加上一个字符,保证字符末尾必有空格,方便统计;开头的空格可在统计前先处理掉
- 第二种,不用处理,一个单词的出现,除了最开始可能直接出现非空格符,前面必由一个空格+第一个非空格符,按此统计即可(推荐)
int main()
{
char s[1000];
gets(s);
int sum=(s[0]!=' ')?1:0; //最开始直接出现单词情况判断
for(int i=1;s[i]!='\0';i++)
{
if(s[i]!=' '&&s[i-1]==' ') sum++;
}
printf("%d",sum);
return 0;
}