/*从键盘上输入10个整数存放到一维数组中,将其中最小的数与第一个数对换,最大的数与最后一个数对换。
要求进行数据交换的处理过程编写成一个函数,函数中对数据的处理要用指针方法实现。
*/
#include "stdio.h"
/*从键盘上输入10个整数存放到一维数组中,将其中最小的数与第一个数对换,最大的数与最后一个数对换。
要求进行数据交换的处理过程编写成一个函数,函数中对数据的处理要用指针方法实现。
*/
void Get_integer(int *, int );
void Exchange(int *, int );
int main(int argc, char *argv[])
{
int a[10], i;
Get_integer(a, 10);
printf("\n");
Exchange(a,10);
for(i = 0; i < 10; i++)
{
printf("%d ",a[i]);
}
printf("\n");
return 0;
}
void Get_integer(int *a, int n)
{
int i;
for(i = 0; i < n; i++)
{
scanf("%d",a+i);
}
}
void Exchange(int *a, int n )
{
int min =a[0], max =a[0];
int mi = 0, ma = 0, i;
for(i = 0; i < n; i++)
{
if(*(a+i) < min)
{
min = *(a+i);
mi = i;
}
if(*(a+i) > max)
{
max = *(a+i);
ma = i;
}
}
int temp;
temp = a[0];
a[0] = a[mi];
a[mi] = temp;
temp = a[n-1];
a[n - 1] = a[ma];
a[ma] = temp;
}