输入10个整数,将其中最小的数与第一个数对换,把最大的数与最后一个数对换。写3个函数:①输入10个数;②进行处理;③输出10个数。

#include
void input(int *p);
void process(int *p);
void output(int *p);
void input(int *p){
int i;
printf("请输入10个数!\n");
for(i=0;i<10;i++,p++){
scanf("%d",p);
}
}
void process(int *p){
int temp,i;
int *ph=p,*pt=p+9,*min=p,*max=p;    //ph为第一个数的位置,pt为最后一个数的位置 
for(i=0;i<10;i++,p++){
if(*p<*min){
min=p;
}
if(*p>*max){
max=p;
}
}
temp=*min;
*min=*ph;
*ph=temp;
temp=*max;
*max=*pt;
*pt=temp;
}
void output(int *p){
int i;
for(i=0;i<10;i++,p++){
printf("%d ",*p);
}
printf("\n");
}
int main()
{
int num[10];
input(num);
process(num);
output(num);
return 0;
}

你可能感兴趣的:(C语言,作业)