描述
输入一行单词序列,相邻单词之间由1个或多个空格间隔,请对应地计算各个单词的长度。
注意,如果有标点符号(如连字符,逗号),标点符号算作与之相连的词的一部分。没有被空格间开的符号串,都算作单词。
输入
一行单词序列,最少1个单词,最多300个单词,单词之间用至少1个空格间隔。单词序列总长度不超过1000。
输出
依次输出对应单词的长度,之间以逗号间隔。
#include<stdio.h>
#include<string.h>
int main()
{
char c[1001];
gets(c);
int s[301];
for(int i=0;i<301;i++)
{
s[i]=0;
}
int len=strlen(c);
int l=0;
for(int i=0;i<len;i++)
{
if(c[i]!=' ')
{
s[l]++;
}
//不是空格则计数
else if(c[i]==' '&&s[l]!=0) //防止遇到多个空格
{
l++; //遇到空格表示进入下一个单词存储
}
}
printf("%d",s[0]);
for(int i=1;i<=l;i++)
{
printf(",%d",s[i]);
} //防止逗号出现在最后面
}