【发布时间】:2014-09-04 21:17:54
【问题描述】:
我想编写一个打印最多 10 个整数的 C 程序。但我得到这个错误。有什么问题?(错误是:超出时间限制)
int main()
{
int arr[9];
int i;
int max=-1;
for(i=0;i<=10;i++) {
scanf("%d",&arr[i]);
if(arr[i]>arr[i+1]){
arr[i]=max;
}
}
printf("%d",max);
}
程序就是这样,谢谢你的帮助
int main()
{
int arr[9];
int i;
int max=-1;
for(i=0;i<=9;i++) {
scanf("%d",&arr[i]);
if(arr[i]>max) {
max=arr[i]; } }
printf("%d",max);
}
【问题讨论】:
-
你遇到了什么错误?
-
这听起来像是您用来运行代码的环境正在执行的操作。
-
如果你想有 10 个数字,为什么要声明一个只能容纳 9 个数字的数组?然后阅读其中的 11 个?
-
在您的帖子中进行更改,而不是作为评论
-
我仍然想知道为什么在这个中有一个数组。您需要 两个 数字(如果包括循环计数器,则需要三个):您刚刚读取的数字和目前为止的最大数字。如果前者大于后者,gratz,你有一个新的最大值,所以分配它并移动到下一次迭代。您的描述中没有任何内容表明数组是有保证的。