输入一个正整数n(1 <n≤10),再输入n 个整数,将最小值与第一个数交换,最大值与最后一个数交换.

日期:2013-05-09 21:05:14 人气:1

输入一个正整数n(1 <n≤10),再输入n 个整数,将最小值与第一个数交换,最大值与最后一个数交换.

将这段代码位置调整一下就好了,先找最小的,找到后就进行交换,再找最大的,找到后,进行交换。你的问题在于,最后才交换,导致找到的下标位置所对应的原数发生了变化 !! max=min=0; for(i=0;i<n;i++) if(a[i]<a[min]) min=i; temp=a[min]; a[min]=a[0]; a[0]=temp; for(i=0;i<n;i++) if(
    A+
热门评论