题目1201:互换最大最小数
输入一个数n,然后输入n个数值各不相同,调换数组中最大和最小的两个数,然后输出。
测试数据有多组,输入n(1<=n<=20),接着输入n个数。
对于每组输入,输出交换后的结果。
5
1 2 3 4 5
5 2 3 4 1
*** 提示已隐藏,点击上方 [+] 可显示 ***
2010年哈尔滨工业大学计算机研究生机试真题
/********************************* * 日期:2013-3-5 * 作者:SJF0115 * 题号: 天勤OJ 题目1201:互换最大最小数 * 来源:http://acmclub.com/problem.php?id=1201 * 结果:AC * 来源:2010年哈尔滨工业大学计算机研究生机试真题 * 总结:**********************************/#include<stdio.h>#include<stdlib.h> int main(){ int n,i; //freopen("C:\\Users\\SJF\\Desktop\\acm.txt","r",stdin); while(scanf("%d",&n)!=EOF) { int num[21],Min,Max,MinIndex,MaxIndex,temp; for(i = 0;i < n;i++){ scanf("%d",&num[i]); if(i == 0){ Min = num[i]; Max = num[i]; MinIndex = i; MaxIndex = i; } if(Min > num[i]){ Min = num[i]; MinIndex = i; } if(Max < num[i]){ Max = num[i]; MaxIndex = i; } } //交换最大值最小值 temp = num[MinIndex]; num[MinIndex] = num[MaxIndex]; num[MaxIndex] = temp; //输出 for(i = 0;i < n;i++){ printf("%d",num[i]); if(i != n-1){ printf(" "); } } printf("\n"); } return 0;}