问题一:
报错信息:
3条回答 默认 最新
- robot8me 2021-07-16 17:29关注
1、肯定是发生了越界。建议改成这样:
for (int i = 0; i < n /* arlength(a1)*/; i++) { int sign = 0; for (int k = 0; k < n/* arlength(a1)*/; k++) { for (int j = 0; j < alength(a, i) && i != k; j++) {
2、
arlength
这个获取长度方式也有问题,里面必然会导致越界问题。而a1
就是通过new int[n]
动态创建的,因此a1
长度已知的,直接使用n即可。
3、如果是想获取'a1中有效元素的长度,那么
arlength(a1)还应该传入
a1`数组的长度,for循环条件要加上k小于数组长度,a1之类的也最好初始化为其他整数,方便判断。本回答被题主选为最佳回答 , 对您是否有帮助呢?解决 无用评论 打赏 举报
悬赏问题
- ¥15 微信会员卡等级和折扣规则
- ¥15 微信公众平台自制会员卡可以通过收款码收款码收款进行自动积分吗
- ¥15 随身WiFi网络灯亮但是没有网络,如何解决?
- ¥15 gdf格式的脑电数据如何处理matlab
- ¥20 重新写的代码替换了之后运行hbuliderx就这样了
- ¥100 监控抖音用户作品更新可以微信公众号提醒
- ¥15 UE5 如何可以不渲染HDRIBackdrop背景
- ¥70 2048小游戏毕设项目
- ¥20 mysql架构,按照姓名分表
- ¥15 MATLAB实现区间[a,b]上的Gauss-Legendre积分