首页 > 技术文章 > 中国大学MOOC | C语言程序设计入门 第8周编程练习 翁恺

yishuad 2018-02-01 11:36 原文

1
单词长度(4分)

题目内容:

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

输入格式:

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

输出格式:

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

输入样例:

It's great to see you here.

输出样例:

4 5 2 3 3 4

时间限制:500ms内存限制:32000kb

 

参考代码

 

 1 #include <stdio.h>
 2 int main()
 3 {
 4     char x[100];//输入字符 
 5     int i=0;
 6     int j=0;
 7     //int size;
 8     int cnt=0;
 9     
10     printf("Input some strings\n");
11 //    scanf("%c",&x[i]);//1<=i<=3
12     while(x[i-1]!='.')
13     {
14         scanf("%c",&x[i]);
15         i++;
16     }
17                //                     123    ab abc.
18     for(j=0;j<i;j++)
19     {
20         if(x[j]!=' ' && x[j]!='.')
21         {
22             cnt++;
23         //    continue;
24         }
25         else if(x[j]==' ' )//第一次空格的时候打印 
26         {    if(x[j-1]!=' ')
27             {
28             printf("%d ",cnt);
29             cnt=0;
30             }
31             else continue;
32         }
33         else if(x[j]=='.')
34         {
35             printf("%d ",cnt);
36             break;
37         }
38     }
39     return 0;    
40 }
View Code

 

推荐阅读