输入10个整数,将其中最小的数与第一个数对换,把最大的数与最后一个数对换。写三个函数;①输入10个数;②进行处理;③输出10个数。
#include <stdio.h>
int main(){
int num[10];
void input(int num[]);
void minAndMax(int num[]);
void output(int num[]);
input(num);
minAndMax(num);
output(num);
return 0;
}
//input
void input(int num[]){
printf("输入10个数:\n");
for(int i=0; i<10; i++){
scanf("%d",&num[i]);
}
}
//find min and max
void minAndMax(int num[]){
int j,m,n,t,min=num[0],max=num[9];
for(j=0; j<10; j++){
if( min >= *(num+j)) {
min=*(num+j);
m=j;
}
if( max <= *(num+j)){
max=*(num+j);
n=j;
}
}
{
t=*(num+m);
*(num+m)=*(num+0);
*(num+0)=t;
}
{
t=*(num+n);
*(num+n)=*(num+9);
*(num+9)=t;
}
}
void output(int num[]){
int i;
printf("处理之后:\n");
for(i=0; i<10; i++)
printf("%4d",num[i]);
printf("\n");
}
结果: