
C语言:用指针把三个数由小到大排序 这么写哪错了啊
#include<stdio.h>main(){voidswap(int*p1,int*p2);intn1,n2,n3;int*p1,*p2,*p3;printf("in...
#include<stdio.h>
main()
{void swap(int *p1,int *p2);
int n1,n2,n3;
int *p1,*p2,*p3;
printf("input three integer n1,n2,n3:");
scanf("%d,%d,%d",&n1,&n2,&n3);
p1=&n1;
p2=&n2;
p3=&n3;
if(n1>n2)swap(p1,p2);
if(n1>n3)swap(p1,p3);
if(n2>n3)swap(p2,p3);
printf("Now,the order is:%d,%d,%d\n",n1,n2,n3);
}
void swap(int *p1,int *p2)
{int p;
p=*p1;*p1=*p2;*p2=p;
} 展开
main()
{void swap(int *p1,int *p2);
int n1,n2,n3;
int *p1,*p2,*p3;
printf("input three integer n1,n2,n3:");
scanf("%d,%d,%d",&n1,&n2,&n3);
p1=&n1;
p2=&n2;
p3=&n3;
if(n1>n2)swap(p1,p2);
if(n1>n3)swap(p1,p3);
if(n2>n3)swap(p2,p3);
printf("Now,the order is:%d,%d,%d\n",n1,n2,n3);
}
void swap(int *p1,int *p2)
{int p;
p=*p1;*p1=*p2;*p2=p;
} 展开
4个回答
展开全部
程序完全正确啊 我运行了 我估计是你自己输入错了
scanf("%d,%d,%d",&n1,&n2,&n3);这句 你输入时要自己加逗号的
例如55,89,95 这样带逗号的输入
scanf("%d,%d,%d",&n1,&n2,&n3);这句 你输入时要自己加逗号的
例如55,89,95 这样带逗号的输入
展开全部
恩 是啊
已赞过
已踩过<
评论
收起
你对这个回答的评价是?
展开全部
if(n1>n2)swap(p1,p2);
if(n1>n3)swap(p1,p3);
if(n2>n3)swap(p2,p3);
无法将三个数正确排序
if(n1>n3)swap(p1,p3);
if(n2>n3)swap(p2,p3);
无法将三个数正确排序
已赞过
已踩过<
评论
收起
你对这个回答的评价是?
展开全部
程序完全对呀!
已赞过
已踩过<
评论
收起
你对这个回答的评价是?
推荐律师服务:
若未解决您的问题,请您详细描述您的问题,通过百度律临进行免费专业咨询