问题擋述 从鍵盘输入10个整数,先将其中最小的数与第一个数对换,再将其中最大的数与最后一个数对换,如果有多个最小数或最大数,只针对找到的第一个最小或最大数做如前操作。要求编写三个函数 (1)输入10个整数,函数首部: void inputf ( int *p int n ) (2)找到最小最大数,并做规定的交换,函数首部: void swap ( int *p int n ) (3)輸出结果,函数首部: void print ( int *p int n ) 输入形式:%d 输出形式:%d/n
#include<stdio.h>
void input(int*p)
{ int i,j;
for(i=0;i<10;i++)
{
scanf("%d",p+i);
}
}
void conduct(int*p)
{
int max,min,i,j,k,temp;
max=*p;
min=*p;
for(i=0;i<10;i++)
{if(max<*(p+i)) max=*(p+i);j=i;
if(min>*(p+i)) min=*(p+i);k=i;
}
temp=*p;
*p=*(p+k);
*(p+k)=temp;
temp=*p;
*p=*(p+j);
*(p+j)=temp;
}
void output(int*p)
{ int i;
printf("\n");
for(i=0;i<10;i++)
printf("%d ",*(p+i));
}
main()
{
int a[10];
input(a);
conduct(a);
output(a);
}
您好,我是有问必答小助手,您的问题已经有小伙伴解答了,您看下是否解决,可以追评进行沟通哦~
如果有您比较满意的答案 / 帮您提供解决思路的答案,可以点击【采纳】按钮,给回答的小伙伴一些鼓励哦~~
ps:问答VIP仅需29元,即可享受5次/月 有问必答服务,了解详情>>>https://vip.csdn.net/askvip?utm_source=1146287632