2. 编程实现输入10个整数放入数组中,将其中最小的数与第一个数对换,把最大的数与最后一个数对换。除了main函数,另写出三个函数,功能分别是:输入10个数;进行处理;输出10个数(使用指针实现)。
【样例输入】
input 10 numbers:1 2 3 4 5 6 7 8 9 0
【样例输出】
now,they are:0 2 3 4 5 6 7 8 1 9
2. 编程实现输入10个整数放入数组中,将其中最小的数与第一个数对换,把最大的数与最后一个数对换。除了main函数,另写出三个函数,功能分别是:输入10个数;进行处理;输出10个数(使用指针实现)。
【样例输入】
input 10 numbers:1 2 3 4 5 6 7 8 9 0
【样例输出】
now,they are:0 2 3 4 5 6 7 8 1 9
代码如下,如有帮助,请采纳一下,谢谢。
#include <stdio.h>
void inputfun(int a[],int n)
{
int i = 0;
printf("请输入%个整数:");
for (i = 0; i < n; i++)
{
scanf("%d",&a[i]);
}
}
void Change(int a[],int n)
{
int max,min;
int i,j,maxindex = 0,minindex = 0;
max = a[0];
min = a[0];
for (i = 1; i < n; i++)
{
if(a[i] > max)
{
max = a[i];
maxindex = i;
}
if (a[i] < min)
{
min = a[i];
minindex = i;
}
}
//最小数与第一个交换
j = a[0];
a[0] = min;
a[minindex] = j;
if (maxindex == 0)
{
maxindex = minindex;
}
j = a[n-1];
a[maxindex] = j;
a[n-1] = max;
}
void outputfun(int a[],int n)
{
int i = 0;
for(i = 0; i < n; i++)
printf("%d ",a[i]);
printf("\n");
}
void main()
{
int a[10];
inputfun(a,10);
Change(a,10);
outputfun(a,10);
return;
}