标题:初学指针碰到个问题,请高手指教下
取消只看楼主
fc176154001
Rank: 2
来 自:四川阆中
等 级:论坛游民
帖 子:87
专家分:96
注 册:2013-6-16
结帖率:100%
已结贴  问题点数:10 回复次数:2 
初学指针碰到个问题,请高手指教下
刚刚学指针,我想写个输入三个数据,然后从大到小排序,使用指针转换。但是编译后出来的不是我预期的效果 比如我依次输入 1 2 3 本来该 输出3 2 1的 结果出来的是 1,-858993460,-858993460,
下面是我的代码 请高手指教下 错在哪了
#include<stdio.h>
void main()
{
    int a,b,c;
    int *p1=&a,*p2=&b,*p3=&c,p;
    printf("请输入三个数字: ");
    scanf("%d,%d,%d",&a,&b,&c);
    if(*p1<*p2)
    {
        p=*p1;
        *p1=*p2;
        *p2=p;
    }
    if(*p1<*p3)
    {
        p=*p1;
        *p1=*p3;
        *p3=p;
    }
    if(*p2<*p3)
    {
        p=*p2;
        *p2=*p3;
        *p3=p;
    }
    printf("排序后的输出为:%d,%d,%d\n",a,b,c);
}
搜索更多相关主题的帖子: include 
2013-06-20 23:28
fc176154001
Rank: 2
来 自:四川阆中
等 级:论坛游民
帖 子:87
专家分:96
注 册:2013-6-16
得分:0 
我自己找到了 scanf("%d,%d,%d",&a,&b,&c);三个%d中间有逗号 我输入数字的时候没加逗号!第一次发帖 真丢人

大神永远不能体会菜鸟们之间的惺惺相惜,
2013-06-20 23:32
fc176154001
Rank: 2
来 自:四川阆中
等 级:论坛游民
帖 子:87
专家分:96
注 册:2013-6-16
得分:0 
谢谢,学习了!

大神永远不能体会菜鸟们之间的惺惺相惜,
2013-06-21 11:14



参与讨论请移步原网站贴子:https://bbs.bccn.net/thread-415679-1-1.html




关于我们 | 广告合作 | 编程中国 | 清除Cookies | TOP | 手机版

编程中国 版权所有,并保留所有权利。
Powered by Discuz, Processed in 1.761425 second(s), 10 queries.
Copyright©2004-2025, BCCN.NET, All Rights Reserved