C语言实验——最值
Time Limit: 1000ms Memory limit: 65536K 有疑问?点这里^_^
题目描述
有一个长度为n的整数序列,其中最大值和最小值不会出现在序列的第一和最后一个位置。
请写一个程序,把序列中的最小值与第一个数交换,最大值与最后一个数交换。输出转换好的序列。
请写一个程序,把序列中的最小值与第一个数交换,最大值与最后一个数交换。输出转换好的序列。
输入
输入包括两行。
第一行为正整数n(1≤n≤10)。
第二行为n个正整数组成的序列。
第一行为正整数n(1≤n≤10)。
第二行为n个正整数组成的序列。
输出
输出转换好的序列。数据之间用空格隔开。
示例输入
5 2 1 5 4 3
示例输出
1 2 3 4 5
#include int main() { int n, t, ma, mi, i; int max, min; int a[10]; scanf("%d",&n); for(i = 0; i <= n-1; i++) { scanf("%d",&a[i]); } max = a[0]; min = a[0]; for(i = 0; i <= n-1; i++) { if(a[i] > max) { max = a[i]; ma = i; } if(a[i] < min) { min = a[i]; mi = i; } } t = a[ma]; a[ma] = a[n-1]; a[n-1] = t; t = a[mi]; a[mi] = a[0]; a[0] = t; for(i = 0; i <= n-1; i++) { if(i ==0) printf("%d",a[i]); else printf(" %d",a[i]); } return 0; }