输入一行字符,统计其中有多少个单词,单词之间用空格分隔开
1、打开visualC++6.0-文件-新建-文件-C++SourceFile。
2、定义数组和变量:
#include<stdio.h>
intmain()
{
charcString[100];/*定义保存字符串的数组*/
intiIndex,iWord=1;/*iWord表示单词的个数*/
charcBlank;/*表示空格*/
3、输入字符串:
printf("输入字符串:");
gets(cString);/*输入字符串*/
4、如果字符串为空:
if(cString[0]=='\0')/*判断如果字符串为空的情况*/
{
printf("没有输入字符\n");
}
5、如果第一个字符为空格:
elseif(cString[0]=='')/*判断第一个字符为空格的情况*/
{
printf("输入字符的格式错误了\n");
}
6、分离字符:
else
{
for(iIndex=0;cString[iIndex]!='\0';iIndex++)/*循环判断每一个字符*/
{
cBlank=cString[iIndex];
7、判断是不是空格:
if(cBlank=='')/*判断是不是空格*/
{
iWord++;/*如果是则加1*/
}
}
printf("%d\n",iWord);
8、完整的源代码:
#include<stdio.h>
intmain()
{
charcString[100];/*定义保存字符串的数组*/
intiIndex,iWord=1;/*iWord表示单词的个数*/
charcBlank;/*表示空格*/
printf("输入字符串:");
gets(cString);/*输入字符串*/
if(cString[0]=='\0')/*判断如果字符串为空的情况*/
{
printf("没有输入字符\n");
}
elseif(cString[0]=='')/*判断第一个字符为空格的情况*/
{
printf("输入字符的格式错误了\n");
}
else
{
for(iIndex=0;cString[iIndex]!='\0';iIndex++)/*循环判断每一个字符*/
{
cBlank=cString[iIndex];/*得到数组中的字符元素*/
if(cBlank=='')/*判断是不是空格*/
{
iWord++;/*如果是则加1*/
}
}
printf("%d\n",iWord);
}
}
{
for(iIndex=0;cString[iIndex]!='\0';iIndex++)/*循环判断每一个字符*/
{
cBlank=cString[iIndex];
{
iWord++;/*如果是则加1*/
}
}
printf("%d\n",iWord);
}
}
推荐于2016-12-01 · 知道合伙人数码行家
知道合伙人数码行家
向TA提问 私信TA
题目:输入一行字符,统计其中有多少单词,单词之间用空格分隔开。
下面是运行结果:
下面是我编写的源代码:
#include <stdio.h>
//输入一行字符,统计其中有多少单词,单词之间用空格分隔开
int main()
{
int i,num=0,word=0;
char string[80];
char c;
gets(string);
for(i=0;(c=string[i])!='\0';i++)
if(c==' ')word=0;
else if(word==0)
{word=1;
num++;
}
printf("there is %d words in this line;\n",num);
return 0;
}