输入一个字符串,编程统计字符串中的单词数,例如,输入I am a boy,则输出4
#include "stdio.h"
void main(void)
{
char x[100] = {0}, i = 0, n = 0, t = 1;
gets(x);
while(x[i]) {
if((x[i]) == ' ' && t) {n++; t = 0;}
if((x[i]) != ' ' ) t = 1;
i++;
}
printf("\nn = %d \n", n + 1);
}
void main(void)
{
char x[100] = {0}, i = 0, n = 0, t = 1;
gets(x);
while(x[i]) {
if((x[i]) == ' ' && t) {n++; t = 0;}
if((x[i]) != ' ' ) t = 1;
i++;
}
printf("\nn = %d \n", n + 1);
}
以空格分界。
输入连续的空格,都当作一个空格。
温馨提示:答案为网友推荐,仅供参考
第1个回答 2016-05-08
#include <stdio.h>
int main()
{
char c;
int cnt = 0, flag = 0;
while ((c=getchar()) != '\n') {
if (c==' ') {
if (flag) {
flag = 0;
cnt++;
}
continue;
}
flag=1;
}
if (flag) {
flag = 0;
cnt++;
}
printf ("%d\n", cnt);
return 0;
}
int main()
{
char c;
int cnt = 0, flag = 0;
while ((c=getchar()) != '\n') {
if (c==' ') {
if (flag) {
flag = 0;
cnt++;
}
continue;
}
flag=1;
}
if (flag) {
flag = 0;
cnt++;
}
printf ("%d\n", cnt);
return 0;
}
第2个回答 2016-05-08
循环全部输入字符
遇到空格记录词边界
遇到字母记录词开始
如果词已经开始 且当前遇到空格或字符结尾
单词个数加1
遇到空格记录词边界
遇到字母记录词开始
如果词已经开始 且当前遇到空格或字符结尾
单词个数加1
第3个回答 2020-02-18
a='I am a boy'
b=a.split()
num=0
for i in b:
num += 1
print(num)
python 代码,试试看
b=a.split()
num=0
for i in b:
num += 1
print(num)
python 代码,试试看
第4个回答 2016-05-08
方法太多了,不知道你需要用哪种语言