输入
输入:大小写字母以及空格,单词以空格分隔
输出:单词个数
代码
如果不是空格
且inWord=0
说明是进入单词的第一个字母,则单词总数加一。
如果是空格,证明离开单词,inWord = 0。
#include <stdio.h>
#include <string.h>
#include <ctype.h>
int countWords(char *str) {int count = 0;int inWord = 0;for (int i = 0; i < strlen(str); i++) {if (isspace(str[i])) {inWord = 0;}else {if (!inWord) {inWord = 1;count++;}}}return count;
}
运行
int main() {char str[100];gets(str);int len = countWords(str);printf("%d\n", len);return 0;
}
前后都有空格: