qq_41653273 2019-09-16 19:55 采纳率: 33.3%
浏览 389

关于指针指向数组的问题

一个void的函数,目的是,
统计随机生成的50个数(a[50])在对应范围的个数,并将对应个数分别放在b[11]数组的对应位置。
例如,15,则b[1]+1;8,则b[0]+1;110,则b[10]+1;

fun函数
图片说明

main函数
图片说明

结果:
图片说明

组织语言重新来过。
按照正常输出结果,大于100的数的个数应该是8,但是结果是9.这是为什么?
谢谢各位大佬!!!

  • 写回答

2条回答 默认 最新

  • JonathanYan 2019-09-16 20:26
    关注

    1.仍然+1
    什么东西仍然+1,仍然加一有什么后果,你想让他以什么条件停止?

    2.当我的i>=N时,循环就应该结束了
    哪个循环的i>=N就结束?应该结束的意思是你现在的代码没结束么?我看都没越界啊。

    3.用数组来做,就是对的
    哪段代码用数组做就对了?你这代码用的不就是数组吗,怎么算对,你这个输出里哪些部分是对的,哪些是错的。

    4.请问这是为什么
    “这”指的是什么?

    麻烦把问题问清楚

    另外你fun函数里第一个for循环后两个部分是反的,i也没赋初值,你确定没问题?


    数组越界,不该掉这个问题没法定位别的问题,你的age赋值时50个,但是while的截止是'\0',显然这50个数理没有'\0',肯定会访问到越界的数,也就不知道发生了什么了。

    评论

报告相同问题?

悬赏问题

  • ¥15 程序不包含适用于入口点的静态Main方法
  • ¥15 素材场景中光线烘焙后灯光失效
  • ¥15 请教一下各位,为什么我这个没有实现模拟点击
  • ¥15 执行 virtuoso 命令后,界面没有,cadence 启动不起来
  • ¥50 comfyui下连接animatediff节点生成视频质量非常差的原因
  • ¥20 有关区间dp的问题求解
  • ¥15 多电路系统共用电源的串扰问题
  • ¥15 slam rangenet++配置
  • ¥15 有没有研究水声通信方面的帮我改俩matlab代码
  • ¥15 ubuntu子系统密码忘记