为了账号安全,请及时绑定邮箱和手机立即绑定

C语言编程时候的运行问题!求大佬指教!

C语言编程时候的运行问题!求大佬指教!

C C# C++
做一个好码农 2017-06-21 13:39:34
编程统计输入的字符串中数字字符出现的次数,不知道为啥结果不对!
查看完整描述

8 回答

已采纳
?
qq_一只珂_0

TA贡献1条经验 获得超15个赞

ch[i]的话是字符型,然后放在a[ch[i]]就不对了,改成a[ch[i]-'0']

查看完整回答
15 反对 回复 2017-06-21
点击展开后面1
?
qq_荒原冰竹_0

TA贡献2条经验 获得超1个赞

#include <stdlib.h>

#include <stdio.h>



int main(int arg,char * args)

{

char ch[80];

int count = 0; //用来统计字符出现次数

printf("请输入你的字符.\n");

int i = 0;

for(i = 0;i < strlen(ch);i ++)

{

gets(ch);

}

while(ch[i] != '\0')

{

if(ch[i] == 'c')  //此处判断为假设你要查找的字符是c

{

count++;

}

}

printf("字符c出现的次数为%d次!\n",count);



/*以上代码中可能出现的函数使用方法不是很正确,毕竟是用记事本写的代码。如便难以出错请查询函数用法自行改正。。。。。。。

*/


return 0;

}


查看完整回答
1 反对 回复 2017-08-11
?
慕田峪7504017

TA贡献1条经验 获得超0个赞

写的好烂,a[ch[i]]++是什么鬼,单单就这个数组下标越界就什么都不说了,为什么最后还要用一个for,你是要上天吗?
查看完整回答
反对 回复 2020-06-12
?
专业爬虫

TA贡献4条经验 获得超1个赞

buzhidao o 

查看完整回答
反对 回复 2019-07-09
?
qq_荒原冰竹_0

TA贡献2条经验 获得超1个赞

第一个for循环,应该改为i++,保证循环次数10次。另外while循环下的if条件判断不对,你要打印的是字符出现的次数,a[10]这个数组其实没必要。定义一个变量统计就可以,打印的语句也有问题。

查看完整回答
反对 回复 2017-08-11
?
嗷呜呜呜呜呜呜呜

TA贡献7条经验 获得超3个赞

hhh

查看完整回答
反对 回复 2017-07-15
?
逸薄云天

TA贡献4条经验 获得超1个赞

什么时候才能不用void main.

查看完整回答
反对 回复 2017-06-21
  • 慕粉1242266
    慕粉1242266
    唉,这些年轻人都是喜欢这样,很多大学都是这样教的,超级不负责
?
书旅

TA贡献238条经验 获得超101个赞

a[ch[i]]++这个很明显不对,c语言里边有下标是字符的情况吗

查看完整回答
反对 回复 2017-06-21
  • 做一个好码农
    做一个好码农
    ch[i]是一个字符,但他对应了一个ASCII值啊,下标不可以用它所对应的ASCII值表示吗?
  • 8 回答
  • 3 关注
  • 12929 浏览

添加回答

举报

0/150
提交
取消
意见反馈 帮助中心 APP下载
官方微信