c语言简单指针问题
发布网友
发布时间:2023-09-19 11:19
我来回答
共1个回答
热心网友
时间:2024-02-15 08:29
#include <stdio.h>
void mysort(int *p1,int *p2,int *p3)
{
int temp;
//保证第一个数小于第二个数。
if(*p1>*p2) //第一个数大于第二个数,则相互交换。
{
temp=*p1;
*p1=*p2;
*p2=temp;
}
//保证第二个数小于第三个数。
if(*p2>*p3) //第二个数大于第三个数,则相互交换。
{
temp=*p2;
*p2=*p3;
*p3=temp;
}
else return ; //此时刚好有序,直接退出。
//第二个数被修改过,需要重新判断第一和第二个数的大小。
if(*p1>*p2) //第一个数大于第二个数,则相互交换。
{
temp=*p1;
*p1=*p2;
*p2=temp;
}
}
int main()
{
int a,b,c;
scanf("%d%d%d",&a,&b,&c);
mysort(&a,&b,&c);
printf("%d %d %d\n",a,b,c);
return 0;
}追问如果是10个数呢 我想要用数组的
追答不早说,要是数组简单多了!冒泡啊!!!!!