作者:夏晓林
时间:2016.12
题目描述:输入一个字符串,将其分段输出,分段符为除字母和数字之外的符号。
问题及代码:
#include <stdio.h>
int main()
{
char str[20];
int i=0,num=0;
scanf("%s",str);
while(str[i]!='\0')
{
if((str[i]>='A'&&str[i]<='Z')||(str[i]>='a'&&str[i]<='z')||(str[i]>='0'&&str[i]<='9'))
{
printf("%c",str[i]);
num=0;
}
else if(num==0)//如果num为0,则说明前面的是字母或数字,接着输出换行。
{
printf("\n");
num=1;//如果num为1,说明前面的不是字母数字,而且已经换过行了,不用考虑,将i++,接着往后走。
}
i++;
}
return 0;
}
运行结果:
学习心得:
这道题目和书上P232的例题相似(通过空格来计算单词的个数)。不论两个单词的中间有多少个空格,但都只是有两个单词。