NTYCRZ
2021-11-02 19:38
采纳率: 100%
浏览 25

c语言用getchar函数取得单词长度时碰到的问题

题目:题目内容:

你的程序要读入一行文本,其中以空格分隔为若干个单词,以‘.’结束。你要输出这行文本中每个单词的长度。这里的单词与语言无关,可以包括各种符号,比如“it's”算一个单词,长度为4。注意,行中可能出现连续的空格。

输入格式:

输入在一行中给出一行文本,以‘.’结束,结尾的句号不能计算在最后一个单词的长度内。

输出格式:

在一行中输出这行文本对应的单词的长度,每个长度之间以空格隔开,行末没有最后的空格。

输入样例:

It's great to see you here.

输出样例:

4 5 2 3 3 4

我的代码遇到的问题:

img

以下是我的代码,请各位指点!

#include <stdio.h>
#include <string.h>
int main()
{
char a[25];
char c;
int i=0,k;
c=getchar();

while(c!='.'){
    while(c!=' '&&c!='.')
    {
        a[i]=c;
        i++;
        c=getchar();
    }
    if(c!='.')
    {
        printf("%d ",strlen(a));
        i=0;
        for(k=0;k<25;k++)
        {
            a[k]='\0';
        }
        c=getchar();
    }else {
        printf("%d",strlen(a));
    }
}
return 0; 
} 

  • 写回答
  • 好问题 提建议
  • 追加酬金
  • 关注问题
  • 邀请回答

2条回答 默认 最新

相关推荐 更多相似问题