#include<stdio.h> //输入一串数字,将其中最小的与第一个调换,最大的与第二个调换,然后输出 //打印输出函数 void print(int a[]) { int i; for(i=0;i<10;i++) { printf("%d\t",a[i]); } } //主函数 int main() { int a[]={2,5,3,1,4,9,6,7,0,8};//自定义数组并附初值 int max=a[0]; int min=a[0];//max,min初始化为数组第一个的值 int maxIndex=0; int minIndex=0;//max,min初始化索引值为0 int i;//for循环变量 //for循环判断出最大值最小值 for(i=0;i<10;i++) { if(max<a[i]) { max=a[i]; maxIndex=i; } if(min>a[i]) { min=a[i]; minIndex=i; } } printf("原来的数组是:\n"); print(a); printf("max=%d\tmin=%d\n",max,min);//输出最大最小值 //最小的和第一个交换(把最小值的索引位置与第一个值交换位置,最小值已经保存在min中了) a[minIndex]=a[0]; a[0]=min; //最大的和第二个交换 a[maxIndex]=a[1]; a[1]=max; printf("交换后数组是:\n"); print(a); return 0; }