题目:输入数组,最大的与第一个元素交换,最小的与最后一个元素交换,输出数组。
#include<stdio.h>
int main(){
int a[20];
int i,n;
scanf("%d",&n);
for(i=0;i<n;i++)
scanf("%d",&a[i]);
int t,x=0,y=0; //!!x,y一定要赋初值 养成习惯,所有的变量定义都要赋初值。
int min=a[0],max=a[0];
for(i=0;i<n;i++){
if(min>a[i]){
min=a[i];
x=i;
}
if(max<a[i]){
max=a[i];
y=i;
}
}
printf("max=%d,y=%d,min=%d,x=%d\n",max,y,min,x);
t=a[x];
a[x]=a[n-1];
a[n-1]=t;
t=a[y];
a[y]=a[0];
a[0]=t;
for(i=0;i<n;i++){
printf("%d ",a[i]);
}
}