#include<stdio.h>
intMinIndex(int a[], int n) //函数返回数组a中最小元素的下标
{
int min;
int mi = 0; //储存下标
min = a[0];
for (int i = 1; i < n; i++)
{
if (a[i] < min)
{
min = a[i];
mi = i;
}
}
return mi;
}
intMaxIndex(int a[], int n) //函数返回数组a中最大元素的下标
{
int max;
int ma = 0;//储存下标
max = a[0];
for (int i = 1; i < n; i++)
{
if (a[i] > max)
{
max = a[i];
ma = i;
}
}
return ma;
}
void PrintArr(int a[], int n) //数组元素的输出调用函数
{
int min, max;
int q = 0, p = 0;//用作置换
min = intMinIndex(a, n);
q = a[0];
a[0] = a[min];
a[min] = q;
max = intMaxIndex(a, n);
p = a[n - 1];
a[n - 1] = a[max];
a[max] = p;
for (int i = 0; i < n - 1; i++)
{
printf("%d ", a[i]);
}
printf("%d", a[n - 1]);
}
int main()
{
int n;
int a[10];
scanf("%d", &n);
for (int i = 0; i < n; i++)
{
scanf("%d", &a[i]);
}
PrintArr(a, n);
return 0;
}
题目描述有一个长度为n的整数序列。请写一个程序,先把序列中的最小值与第一个数交换,再把最大值与最后一个数交换。输出转换好的序列。 分别编写两个函数MinIndex()和MaxIndex()来计算最小值下标和最大值下标。intMinIndex(int a[], int n); //函数返回数组a中最小元素的下标intMaxIndex(int a[], int n); //函数返回数组...