标题:输入3个数,按从小到大顺序输出,有点疑问o(︶︿︶)o
只看楼主
半城寞少
Rank: 2
来 自:西安市
等 级:论坛游民
帖 子:27
专家分:25
注 册:2011-6-12
结帖率:100%
已结贴  问题点数:10 回复次数:4 
输入3个数,按从小到大顺序输出,有点疑问o(︶︿︶)o
#include <stdio.h>
void main()
{
    void swap(int *x,int *y);
    int a,b,c;
    printf("Please enter a b c:\n");
    scanf("%d%d%d",&a,&b,&c);
    if(a>b)swap(&a,&b);
    if(b>c)swap(&b,&c);
    if(a>c)swap(&a,&c);
    printf("The order is:%d %d %d"\n,a,b,c);
}
void swap(int *x,int *y)
{
    int t;
    t=*x;
    *x=*y;
    *y=t;
}这我写的,参考答案专门定义了三个指针变量P1 P2 P3  把a,b,c地址赋给他们  调用swap函数的时候用P1 P2 P3做实参,为什么不直接用a b c地址做实参啊
搜索更多相关主题的帖子: include 参考答案 enter order 
2011-10-08 10:16
TonyDeng
Rank: 20Rank: 20Rank: 20Rank: 20Rank: 20
等 级:贵宾
威 望:304
帖 子:25859
专家分:48889
注 册:2011-6-22
得分:3 
你先搞清楚交换数据要做什么动作,解决问题又需要怎样的具体步骤。

授人以渔,不授人以鱼。
2011-10-08 10:23
thlgood
Rank: 5Rank: 5
等 级:职业侠客
帖 子:281
专家分:381
注 册:2010-9-24
得分:3 
你这个能实现排序么???

o(∩∩)Linux & Python 群:187367181
2011-10-08 10:27
ileelsai
Rank: 5Rank: 5
等 级:职业侠客
帖 子:87
专家分:303
注 册:2011-9-25
得分:3 
#include <stdio.h>
 main()
{
    void swap(int *x,int *y);
    int a,b,c;
    printf("Please enter a b c:\n");
    scanf("%d%d%d",&a,&b,&c);

    if(a>b)swap(&a,&b);
    if(b>c)swap(&b,&c);              
    if(a>b)swap(&a,&b);                   //上面两步的作用是使c保存最大值 a,b未知      
    printf("The order is:%d %d %d\n",a,b,c);          //  \n写错位置
}
void swap(int *x,int *y)
{
    int t;
    t=*x;
    *x=*y;
    *y=t;
}
2011-10-08 11:14
半城寞少
Rank: 2
来 自:西安市
等 级:论坛游民
帖 子:27
专家分:25
注 册:2011-6-12
得分:0 
调试通过了  随便输入3个数也能排序

虽然不是我的对手,但还是可以成为我的狗
2011-10-08 11:32



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




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

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