吾爱破解 - 52pojie.cn

 找回密码
 注册[Register]

QQ登录

只需一步,快速开始

查看: 993|回复: 7
收起左侧

[求助] 数组上限

[复制链接]
鸿氏 发表于 2021-3-21 13:32
1.jpg

2.jpg
图一是源代码(插入排序),图二是运行结果,这个33是哪里来的
我知道代码有错,第一个循环应该是i<=5,但是不知道为什么会出现33,而且每次运行都是33

发帖前要善用论坛搜索功能,那里可能会有你要找的答案或者已经有人发布过相同内容了,请勿重复发帖。

yacc 发表于 2021-3-21 13:44
估计是数组越界,内存里a[5]再往后的位置正好是33,给你当成7个数字排序了,最后输出前六个,最大的没了。
ZHXZHX 发表于 2021-3-21 14:17
你将排序过程输出就知道了。C语言不检查边界,33是边界外的值,而你代码刚好把33也算到插入排序。
晨星的天空 发表于 2021-3-21 15:00
小木曾雪菜 发表于 2021-3-21 15:45
数组越界了,i<=6会出现a[6]
 楼主| 鸿氏 发表于 2021-3-26 21:27
yacc 发表于 2021-3-21 13:44
估计是数组越界,内存里a[5]再往后的位置正好是33,给你当成7个数字排序了,最后输出前六个,最大的没了。

也就是说a[6]=33?a[6]我没有定义初始化过啊

点评

可能跟编译器有关,也可能是内存里随机的数据,反正不要越界就对了  详情 回复 发表于 2021-3-26 21:43
 楼主| 鸿氏 发表于 2021-3-26 21:28

33这个值是随机的吗
yacc 发表于 2021-3-26 21:43
鸿氏 发表于 2021-3-26 21:27
也就是说a[6]=33?a[6]我没有定义初始化过啊

可能跟编译器有关,也可能是内存里随机的数据,反正不要越界就对了
您需要登录后才可以回帖 登录 | 注册[Register]

本版积分规则

返回列表

RSS订阅|小黑屋|处罚记录|联系我们|吾爱破解 - LCG - LSG ( 京ICP备16042023号 | 京公网安备 11010502030087号 )

GMT+8, 2024-11-26 04:41

Powered by Discuz!

Copyright © 2001-2020, Tencent Cloud.

快速回复 返回顶部 返回列表