C语言:定义一个有10个元素的整型一维数组a,输入10个无重复数据存于该一维数组,找出其中最大数和次大数,要求不用排序实现,用一个循环实现。
时间: 2024-05-12 17:18:06 浏览: 99
C语言一维数组的定义和引用数组ppt课件.ppt
可以使用两个变量来分别记录最大数和次大数,初始值都赋为数组的第一个元素。然后循环遍历数组,如果当前元素大于最大数,则将次大数更新为原来的最大数,将最大数更新为当前元素;如果当前元素大于次大数但小于最大数,则更新次大数为当前元素。最后输出最大数和次大数即可。
下面是代码实现(C语言):
```
#include <stdio.h>
int main() {
int a[10], max, sec_max, i;
printf("请输入10个无重复数据:\n");
for(i = 0; i < 10; i++) {
scanf("%d", &a[i]);
}
max = a[0];
sec_max = a[0];
for(i = 1; i < 10; i++) {
if(a[i] > max) {
sec_max = max;
max = a[i];
}
else if(a[i] > sec_max) {
sec_max = a[i];
}
}
printf("最大数为:%d,次大数为:%d\n", max, sec_max);
return 0;
}
```
希望可以帮到您!
阅读全文