输入三行文字,找出其中有多少个空格和多少个单词(规定单词间以一个或多个空格分开)。若一个单词恰好在行末结束,则下一行的开头应有空格,句号和逗号后面也应有空格,后半部分的条件怎么满足
#include <stdio.h>
#include<stdlib.h>
int main()
{
char *p,str[3][255],sp=' ';
int i,w=0,sps=0;
for (i=0;i<3;i++) gets(str[i]);
for(i=0;i<3;i++)
{
p=str[i];
while(*p==sp){sps++;p++;}
do {
if (*p==sp)
{
w++;sps++;p++;
while(*p==sp) {sps++;p++;}
}
else if (*p)
p++;
} while(*p);
if (*(--p)!=sp) w++;
}
printf("有%d个单词,%d个空格\n",w,sps);
system("PAUSE");
return 0;
}
while(*p==sp) {sps++;p++;} 这个循环是做什么用的?
您好,我是有问必答小助手,您的问题已经有小伙伴解答了,您看下是否解决,可以追评进行沟通哦~
如果有您比较满意的答案 / 帮您提供解决思路的答案,可以点击【采纳】按钮,给回答的小伙伴一些鼓励哦~~
ps:问答VIP仅需29元,即可享受5次/月 有问必答服务,了解详情>>>https://vip.csdn.net/askvip?utm_source=1146287632