#include <stdio.h>
#define N 5
int main()
{
int numbers[N];
int max, nextMax;
printf("请输入 N = %d 个数\n", N);
for(int i = 0; i < N; ++i) {
scanf("%d", numbers+i);
}
max = numbers[0];
nextMax = max;
for(int i = 0; i < N; ++i) {
if(numbers[i] > max) {
nextMax = max;
max = numbers[i];
} else if(numbers[i] > nextMax) {
nextMax = numbers[i];
}
}
printf("次大的数为 %d", nextMax);
return 0;
}
追问最后执行时还有一个错误,这个是怎么弄的
![](https://video.ask-data.xyz/img.php?b=https://iknow-pic.cdn.bcebos.com/5ab5c9ea15ce36d331d1de9037f33a87e850b1bd?x-bce-process=image%2Fresize%2Cm_lfit%2Cw_600%2Ch_800%2Climit_1%2Fquality%2Cq_85%2Fformat%2Cf_auto)
追答// 会不会你编译器版本太老了,你用这个程序再试试
#include <stdio.h>
#define N 5
int main()
{
int numbers[N];
int i, max, nextMax;
printf("请输入 N = %d 个数\n", N);
for(i = 0; i < N; ++i) {
scanf("%d", numbers+i);
}
max = numbers[0];
nextMax = max;
for(i = 0; i < N; ++i) {
if(numbers[i] > max) {
nextMax = max;
max = numbers[i];
} else if(numbers[i] > nextMax) {
nextMax = numbers[i];
}
}
printf("次大的数为 %d", nextMax);
return 0;
}
本回答被网友采纳