C语言:从键盘上输入一个字符串,假定该字符串的长度小于80,计算其中字母、数字和空格的个数。

#include<stdio.h>#define M 80main(){ int a,b,c,i; int s[M]; printf("please input s[M]:"); scanf("%d",&s[M]); for(i=0;s[i]!='/0'&&i<80;i++) { if(s[i]>'A'&&s[i]<'Z'||s[i]>'a'&&s[i]<'z') a++; if(s[i]>'0'&&s[i]<'9') b++; if(s[i]==' ') c++;break; } printf("字母个数:%d\n数字个数:%d\n空格个数:%d\n",a,b,c);}请问哪里错了啊。运行结果是:


#include<stdio.h>

#define N 80

main()

{

int a=0,b=0,c=0,i;

char s[N];

printf("please input s[N]:");

gets(s);

for(i=0;s[i]!='/0'&&i<N;i++)

{

if(s[i]>'A'&&s[i]<'Z'||s[i]>'a'&&s[i]<'z')

a++;

if(s[i]>'0'&&s[i]<'9')

b++;

if(s[i]==' ')

c++;

}

printf("字母个数:%d\n数字个数:%d\n空格个数:%d\n",a,b,c);

}

温馨提示:答案为网友推荐,仅供参考
第1个回答  2016-05-22
初始化a = 0,b = 0,c = 0
第2个回答  2016-05-22
#include<stdio.h>
#define M 80

main()
{
    int a = 0, b = 0, c = 0, i;   //初始化
    int s[M];
    printf("please input s[M]:");
    scanf("%d", &s[M]);
    for(i = 0; s[i] != '/0' && i < 80; i++)  {
    
      if(s[i]>'A'&&s[i]<'Z'||s[i]>'a'&&s[i]<'z')  a++;
      if(s[i]>'0'&&s[i]<'9')  b++;
      if(s[i]==' ')  c++;
      
//      break;  删除这句

    }
    printf("字母个数:%d\n数字个数:%d\n空格个数:%d\n",a,b,c);
}

本回答被网友采纳

相关了解……

你可能感兴趣的内容

本站内容来自于网友发表,不代表本站立场,仅表示其个人看法,不对其真实性、正确性、有效性作任何的担保
相关事宜请发邮件给我们
© 非常风气网