本题目要求编写程序统计一行字符中单词的个数。所谓“单词”是指连续不含空格的字符串,各单词之间用空格分隔,空格数可以是多个。
输入格式:
输入给出一行字符。
输出格式:
在一行中输出单词个数。
输入样例:
Let's go to room 209.
输出样例:
5
这道题给我写吐了,想了好久也不觉得有啥代码问题,这道题其实不难,关键是我用的数组写的,当初我定义a[100] ,结果是“ 运行时错误”,这就给我整懵逼了。最后还是对照大佬写的才知道100太小了,至少也得a[500]。但最后写出来了还是挺开心的。
以下为原答案
#include <stdio.h>
#include <string.h>
int main (void)
{
char a[1000]; //这里一定要注意,不能太小
int len,l=0,i;
gets (a);
len=strlen (a);
for (i=0;i<len;i++) //判断第一个数是否为空格
{
if (a[i]!=' ')
{
l++;
break;
}
}
for (i;i<len-1;i++) //判断后续的数,一个空格和一个非空格看做一个单词
{
if (a[i]==' ' && a[i+1]!=' ')
{
l++;
}
}
printf ("%d",l);
return 0;
}