由键盘上输入10个不重复的整数,请将这些数中的最小值与第一个数交换,将最大值与最后一个数交换,然后输出交换后的数列。
阅读下面程序,按要求编写函数input函数输入10个整数,swap函数进行处理,output函数输出10个数。
#include <stdio.h>
#define N 10
void input(int *number)
{
///程序填空,请将该函数填写完整
}
void swap(int *number)
{
///程序填空,请将该函数填写完整
}
void output(int *number)
{
///程序填空,请将该函数填写完整
}
int main()
{
int number[N];
input(number);
swap(number);
output(number);
return 0;
}
注意:请务必提交完整的程序代码,不要修改代码框架。
输入
输入10个不重复的整数,邻近两数之间用一个空格隔开。
输出
输出交换之后的10个整数,邻近两数之间用一个空格隔开。
输入示例1
10 7 6 3 9 8 2 5 1 4
输出示例1
1 7 6 3 9 8 2 5 4 10
输入示例2
1 2 3 4 5 6 7 8 9 10
输出示例2
1 2 3 4 5 6 7 8 9 10
输入示例3
10 9 8 7 6 5 4 3 2 1
输出示例3
1 9 8 7 6 5 4 3 2 10
数据范围
输入和输出均为int范围的整数
#include <stdio.h>
#define N 10
void input(int *number){
for(int *p=number;p<number+10;p++){
scanf("%d",p);
}
}
void swap(int *number){
int max=-10000,min=10000;
int *mun;
int *mux;
for(int *p=number;p<number+10;p++){
if(*p>max){
max=*p;
mux=p;
}
}
*mux=*(number+9);
*(number+9)=max;
for(int *q=number;q<number+10;q++){
if(*q<min){
min=*q;
mun=q;
}
}
*mun=*number;
*number=min;
}
void output(int *number){
for(int *pst=number;pst<number+10;pst++){
printf("%d ",*pst);
}
}
int main()
{
int number[N];
input(number);
swap(number);
output(number);
return 0;
}