#include<stdio.h>
int main()
{
int a[1000],i,max=0,q;
for(i=0;i<=1000;i++)
{
scanf("%d",&a[i]);
if(a[i]<0)
{
break;
}
}
for(q=0;q<=1000;q++)
{
if(max<a[q])
max=a[q];
}
printf("%d\n",max);
return 0;
}
无论输入什么,输出的结果都是2147353477
- 写回答
- 好问题 0 提建议
- 追加酬金
- 关注问题
- 邀请回答
-
2条回答 默认 最新
- curating 2022-11-28 18:10关注
原因是程序访问未初始化的数组变量造成。看第二张图。
修正方法:按当前思路,只需在第一个负值(即输入的负值位置)结束循环就可以符合逻辑。
程序访问未初始化的数组变量
本回答被题主选为最佳回答 , 对您是否有帮助呢?解决 1无用
悬赏问题
- ¥15 asp写PC网站开通了微信支付,扫码付款不能跳转
- ¥50 AI大模型精调(百度千帆、飞浆)
- ¥15 关于#c语言#的问题:我在vscode和codeblocks中编写c语言时出现打不开源文件该怎么办
- ¥15 非科班怎么跑代码?如何导数据和调参
- ¥15 福州市的全人群死因监测点死亡原因报表
- ¥15 Altair EDEM中生成一个颗粒,并且各个方向没有初始速度
- ¥15 系统2008r2 装机配置推荐一下
- ¥500 服务器搭建cisco AnyConnect vpn
- ¥15 悬赏Python-playwright部署在centos7上
- ¥15 psoc creator软件有没有人能远程安装啊