C语言有点小问题
#include<stdio.h>#include<stdlib.h>intmain(){printf("请输入一行字符,长度不超过254个,由英文的空格,逗号,句号和字...
#include <stdio.h>
#include <stdlib.h>
int main()
{
printf("请输入一行字符,长度不超过254个,由英文的空格,逗号,句号和字母组成\n");
char str[255];
int i,num=0;
gets(str);
if(str[0]!=' ')
num=1;
for(i=0;str[i];i++)
if(str[i]==' '&&(str[i+1]!=' '||(str[i]==','&&str[i+1]!=','||(str[i]=='.'&&str[i+1]!='.')//前一个是“英文的空格或逗号或句号”,并且后一个是字母时,单词数加1
num++;
printf("%d",num);
return 0;
}
哪里不对怎么改?
功能是输入一行字符,统计其中有多少个单词,单词之间用空格,逗号,或句号分隔开。 展开
#include <stdlib.h>
int main()
{
printf("请输入一行字符,长度不超过254个,由英文的空格,逗号,句号和字母组成\n");
char str[255];
int i,num=0;
gets(str);
if(str[0]!=' ')
num=1;
for(i=0;str[i];i++)
if(str[i]==' '&&(str[i+1]!=' '||(str[i]==','&&str[i+1]!=','||(str[i]=='.'&&str[i+1]!='.')//前一个是“英文的空格或逗号或句号”,并且后一个是字母时,单词数加1
num++;
printf("%d",num);
return 0;
}
哪里不对怎么改?
功能是输入一行字符,统计其中有多少个单词,单词之间用空格,逗号,或句号分隔开。 展开
1个回答
展开全部
#include <stdio.h>
#include <stdlib.h>
int main()
{
int i,num=0;
char str[254]; //定义数组时放在前面定义
printf("请输入一行字符,长度不超过254个,由英文的空格,逗号,句号和字母组成\n");
gets(str);
if(str[0]!=' ')
num=1;
for(i=0;str[i]!='\0';i++)
{ //if后面的判断条件括号要打齐,整体要加个括号,各判断条件分别加括号
if((((str[i]==' ')&&(str[i+1]!=' '))||((str[i]==','&&str[i+1]!=',')||(str[i]=='.'&&str[i+1]!='.')))&&(str[i+1]!='\0'))//前一个是“英文的空格或逗号或句号”,并且后一个是字母时,单词数加1
num++;
}
printf("%d\n",num);
return 0;
}望采纳
推荐律师服务:
若未解决您的问题,请您详细描述您的问题,通过百度律临进行免费专业咨询