#include
int main(void)
{
int *a1,*b1,*c1,a,b,c;
a1=&a;
b1=&b;
c1=&c;
scanf("%d%d%d",a1,b1,c1);
if(*a1>*b1)
{
*a1=*a1^*b1;
*b1=*a1^*b1;
*a1=*a1^*b1;
}
if(*a1>*c1)
{
*a1=*a1^*c1;
*c1=*a1^*c1;
*a1=*a1^*c1;
}
if(*b1>*c1)
{
*b1=*b1^*c1;
*c1=*b1^*c1;
*b1=*b1^*c1;
}
printf("%d,%d,%d",*a1,*b1,*c1);
return(0);
}
#include
void main()
{
void swap(int *p1,int *p2);/*交换函数的申明*/
int *a1 , *b1 , *c1 , a , b , c ;
a1 = &a;
b1 = &b;
c1 = &c;
scanf("%d%d%d",a1,b1,c1);/*输入三个整数赋给a,b,c,*/
if(*a1 > *b1)
swap( a1,b1);
if(*a1 > *c1)
swap( a1,c1);
if(*b1 > *c1)
swap( b1,c1);
printf("%d,%d,%d",*a1,*b1,*c1);
}
void swap(int * p1,int * p2)
{
*p1 = *p1^*p2;/*语句中的^为C语言按位异或运算*/
*p2 = *p2^*p1;
*p1 = *p1^*p2;
}
/*经过三次交换后,a1,b1,c1还是指向a , b ,c,但是a,b,c中的数值变了*/
给你个交换函数
void swap(int *p1,int *p2)
{
int temp;
temp=*p1;
*p1=*p2;
*p2=temp;
}
其他的自己写
#include
int main()
{
int a,b,c,*p1,*p2,*p3;
scanf("%d%d%d",&a,&b,&c);
p1=&a;
p2=&b;
p3=&c;
if(*p1<*p2 && *p1<*p3)
{
printf("%d ",*p1);
if(*p2<*p3)
printf("%d %d\n",*p2,*p3);
else
printf("%d %d\n",*p3,*p2);
}
else
{
if(*p2<*p3 && *p2<*p1)
{
printf("%d ",*p2);
if(*p1<*p3)
printf("%d %d\n",*p1,*p3);
else
printf("%d %d\n",*p3,*p1);
}
else
{
printf("%d ",*p3);
if(*p1<*p2)
printf("%d %d\n",*p1,*p2);
else
printf("%d %d\n",*p2,*p1);
}
}
return 0;
}