给定一个数组 a ,求出这个数组的最大值和次大值(严格的,即次大值一定比最大值小)。
输入格式:输入的第一行是一个整数 n,第二行是 n个整数,为数组内的元素
输出格式:两个用单个空格分开的整数,即最大值和次大值。
下附我的解法:
#include <stdio.h>
int main(){
int n,t,i,j;
scanf("%d",&n);
int a[n];
for(i=0;i<=n-1;i++){
scanf("%d",&a[i]);
}
for(i=0;i<=n-1;i++){
for(j=0;j<n-i;j++){
if(a[j]<a[j+1]){
t=a[j];
a[j]=a[j+1];
a[j+1]=t;
}
}
}
for(int k=0;k<=n-1;k++){
if(a[k]>a[k+1]){
printf("%d %d",a[k],a[k+1]);
break;
}
}
return 0;
}