C语言,请大佬看看这个解析程序包时出现问题哪里有问题,有两个警告,输出的数据有问题

编程统计输入的字符串中数字字符出现的次数,不知道为啥结果不对!
ch[i]的话是字符型,然后放在a[ch[i]]就不对了,改成a[ch[i]-'0']
已被提问者采纳
你还没有登录,请先登录或注册慕课网帐号
#include&stdio.h&
#include&string.h&
void main()
char ch[80];
int i,a[10],j,t;
for(i=0;i&10;i++)
//gets(ch);
scanf("%s",ch);
t=strlen(ch);
printf("%s\n",ch);
printf("字符串的长度是%d\n",t);
for(i=0;i&=t;i++)
if(ch[i]== '0')
if(ch[i]== '1')
if(ch[i]== '2')
if(ch[i]== '3')
if(ch[i]== '4')
if(ch[i]== '5')
if(ch[i]== '6')
if(ch[i]== '7')
if(ch[i]== '8')
if(ch[i]== '9')
for(i=0;i&10;i++)
printf("数字%d出现%d次\n",i,a[i]);
}这是我的想法,繁琐了点,应该可以用switch语句吧关于你的代码if(ch[i]&='0'&&ch[i]&='9')
a[ch[i]]++;这句代码就像楼上说的那样,它的值是个字符,就像'0'这样,是不能作为下标的
你还没有登录,请先登录或注册慕课网帐号
什么时候才能不用void main.
你还没有登录,请先登录或注册慕课网帐号
也许迟早会败给现实,那么请在举手投降之前,再拼一次
a[ch[i]]++这个很明显不对,c语言里边有下标是字符的情况吗
你还没有登录,请先登录或注册慕课网帐号
21633人关注
6586人关注
13051人关注
Copyright (C)
All Rights Reserved | 京ICP备 号-2}

我要回帖

更多关于 微信小程序缓存问题 的文章

更多推荐

版权声明:文章内容来源于网络,版权归原作者所有,如有侵权请点击这里与我们联系,我们将及时删除。

点击添加站长微信