本题目要求编写程序统计一行字符中单词的个数。所谓“单词”是指连续不含空格的字符串,各单词之间用空格分隔,空格数可以是多个。
输入格式:
输入给出一行字符。
输出格式:
在一行中输出单词个数。
输入样例:
Let's go to room 209.
输出样例:
5
解题过程
我的思路是识别每个空格(分隔符)如果后方是字符便统计,如果不是便继续获取字符
#define _CRT_SECURE_NO_WARNINGS
#include <math.h>
#include <stdio.h>
#include <string.h>
int main() {
char s[114];
char c, d;
int n = 1;
for (;;) {//清理前方空格
d = getchar();
if (d == '\n') {
c = d;
n = 0;
break;
}
if (d != ' ') {
c = d;
break;
}
}
for (;;) {
if (c == '\n')
break;
for (; c == ' ';) {
d = getchar();
if (d == '\n') {//处理结尾多空格的情况
printf("%d", n);
return 0;
}
if (d != ' ')//忽略字符前空格
n++;
c = d;
}
c = getchar();
}
printf("%d\n", n);
}