[求助]为什么我的数组在循环中出错
题目:输入数组,最大的与第一个元素交换,最小的与最后一个元素交换,输出数组 #include "stdio.h"
main()
{ int i,t,max,min;
int a[10];
for(i=0;i<=9;i++) /*输入数组*/
{scanf("%d",&a[i]);}
for(i=0;i<9;i++) /*找出最大和最小值*/
{ if(a[i]>a[i+1])
max=a[i];
min=a[i+1];
if(a[i]<a[i+1])
max=a[i+1];
min=a[i];
}
for(i=0;i<=9;i++) /*将最大值和第一个数值交换,将最小值和最后一个交换*/
{if(max==a[i])
t=a[0];
a[0]=max;
a[i]=t;
if(min==a[i])
t=a[9];
a[9]=min;
a[i]=t;
}
for(i=0;i<=9;i++) /*输出最后结果*/
{printf("%d ",a[i]);}
getch();
}
编译通过,但是输出只有最大值是对的,其他的数都是错的.