输入10个数,将其中最小的数与第一个数交换,把最大的一个数与最后一个数对换,写3个函数;1、输入10个数;2、进行处理;3、输出10个数。
例:
#include<stdio.h>
int main()
{
int number[10];
void input(int array[10]); //函数定义
void change(int array[10]);
void output(int array[10]);
input(number); //函数调用
change(number);
output(number);
return 0;
}
void inout(int array[10]) //输入10个数
{
int *p;
printf("input 10 numbers:\n");
for(p=array;p<array=10;p++)
scanf("%d",&*p);
}
void output(int array[10]) //按顺序输出10个数
{
int *p;
printf("now:\n");
for(p=array;p<array+10;p++)
printf("%d",*p);
putchar('\n');
}
void change(int array[10]) //对10个数进行换位
{
int *max,*min,*p;
min=max=array; //将数组的第一个元素赋给min,max
for(p=array+1;p<array+10;p++) //用for循环找出数组中最大的元素和最小的元素
{
if(*max<*p)
max=p;
else if(*min>*p)
min=p;
}
*p=array[9]; //将最大的元素赋给p所指向的地址,并将最大值与最后一个元素进行调换
array[9]=*max;
*max=*p;
*p=array[0]; //同上,将最小值与第一个元素进行调换
array[0]=*min;
*min=*p;
return ;
}