```c
#include <stdio.h>
int swap(int *p1, int *p2)
{ int p;
p=*p1;
*p1=*p2;
*p2=p;
}
main()
{ int a,b;
int *pointer_1,*pointer_2;
scanf("%d%d",&a,&b);
pointer_1=&a;
pointer_2=&b;
if(a<b)
swap(pointer_1,pointer_2);
printf("\n%d %d\n",a,b);
}
```为什么大一点的数就交换不了了,就比如32760 25469
只有a<b才交换,你的第一个数大于第二个数不会交换的,并不是大数的问题
有帮助的话采纳一下哦!
a < b才交换啊
-不是要判断a和b的大小吗,a<b才交换
代码没什么问题,交换是有条件的,if(a < b) swap() 才会执行,32760 25469 a > b ,不执行 swap()函数。
#include <stdio.h>
int swap(int* p1, int* p2)
{
int p;
p = *p1;
*p1 = *p2;
*p2 = p;
return 0;
}
int main()
{
int a, b;
int* pointer_1, * pointer_2;
scanf("%d%d", &a, &b);
pointer_1 = &a;
pointer_2 = &b;
if (a > b)
swap(pointer_1, pointer_2);
printf("\n%d %d\n", a, b);
return 0;
}