该题注意数值的交换,需要小心数值被覆盖。
#include<stdio.h>
int main()
{
int n,i,k,x,y,min,max;
int a[20];
scanf("%d",&k);
for(n=0;n<k;n++){
scanf("%d",&a[n]);
}
min=0,max=k-1;
for(n=0;n<k;n++){
if(a[n]<a[min]){
min=n;
}
if(a[n]>a[max]){
max=n;
y=a[max];
}
}
x=a[0],a[0]=a[min],a[min]=x;
for(n=0;n<k;n++){
if(a[n]==y){
max=n;
break;
}
}
y=a[k-1],a[k-1]=a[max],a[max]=y;
for(n=0;n<k;n++){
printf("%d ",a[n]);
}
return 0;
}