主题
这题应该是用指针改变变量的地址来排序。
#include <stdio.h>
int main()
{
void sort(int* p1, int* p2, int* p3);
int a, b, c;
int * p1=0,* p2=0, * p3=0;
printf("请输入三个整数:");
scanf_s("%d %d %d", &a, &b, &c);
p1 = &a;
p2 = &b;
p3 = &c;
sort(p1, p2, p3);
printf("%d %d %d", a, b, c);
return 0;
}
sort函数部分
void sort(int* p1, int* p2, int* p3)
{
if (*p1>*p2)
{
int temp;
temp = *p1;
*p1 = *p2;
*p2 = temp;
}
if (*p1 > *p3)
{
int temp;
temp = *p1;
*p1 = *p3;
*p3 = temp;
}
if (*p2>*p3)
{
int temp;
temp = *p2;
*p2 = *p3;
*p3 = temp;
}
}