C语言编程题,输入3个整数,由小到大输出,用指针变量
展开全部
#include
<stdio.h>
void
main()
{
int
a,b,c,x;
int
*pa,*pb,*pc;
pa=&a;//这里的指针前的星号去掉就行了
pb=&b;//
pc=&c;//三个都一样
printf("请输入3个整数\n");
scanf("%d%d%d",pa,pb,pc);
if(*pa>*pb)
{
x=*pa;
*pa=*pb;
*pb=x;
}
if(*pa>*pc)
{
x=*pa;
*pa=*pc;
*pc=x;
}
if(*pb>*pc)
{
x=*pb;
*pb=*pc;
*pc=x;
}
printf("这3个数由小到大的排列顺序为%d,%d,%d",*pa,*pb,*pc);
}
<stdio.h>
void
main()
{
int
a,b,c,x;
int
*pa,*pb,*pc;
pa=&a;//这里的指针前的星号去掉就行了
pb=&b;//
pc=&c;//三个都一样
printf("请输入3个整数\n");
scanf("%d%d%d",pa,pb,pc);
if(*pa>*pb)
{
x=*pa;
*pa=*pb;
*pb=x;
}
if(*pa>*pc)
{
x=*pa;
*pa=*pc;
*pc=x;
}
if(*pb>*pc)
{
x=*pb;
*pb=*pc;
*pc=x;
}
printf("这3个数由小到大的排列顺序为%d,%d,%d",*pa,*pb,*pc);
}
展开全部
#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
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中的数值变了*/
已赞过
已踩过<
评论
收起
你对这个回答的评价是?
推荐律师服务:
若未解决您的问题,请您详细描述您的问题,通过百度律临进行免费专业咨询
广告 您可能关注的内容 |