搜索
查看: 1001|回复: 24
打印 上一主题 下一主题

从大到小在从小到大

[复制链接]
跳转到指定楼层
楼主
发表于 2014-3-31 23:05:38 | 只看该作者 回帖奖励 |倒序浏览 |阅读模式
5啊哈币

任意输入三个整数,输出从大到小,在从小到大
错误代码如下:
  1. #include<stdio.h>
  2. int xiaodao(void);
  3. int daoxiao(void);
  4. int a,b,c,num;
  5. int main(void)
  6. {
  7.         printf("请输入三个数;\n");
  8.         scanf("%d%d%d",&a,&b,&c);
  9.         daoxiao();
  10.         printf("这三个数从大到小的排列是\n");
  11.         printf("%5d%5d%5d\n",a,b,c);
  12.         xiaodao();
  13.         printf("这三个数从小到到的排列是\n");
  14.         printf("%5d%5d%5d\n",a,b,c);
  15.        
  16.         return 0;
  17. }
  18. int daoxiao(void)
  19. {
  20.         if(a<b)
  21.         {
  22.                 num=a;
  23.                 a=b;
  24.                 b=num;
  25.         }
  26.         if(a<c)
  27.         {
  28.                 num=a;
  29.                 a=c;
  30.                 c=num;
  31.         }
  32.         if(b<c)
  33.         {
  34.                 num=b;
  35.                 b=c;
  36.                 c=num;
  37.         }
  38. }
  39. int xiaodao(void)
  40. {
  41.         if(a>b)
  42.         {
  43.                 num=a;
  44.                 a=b;
  45.                 b=num;       
  46.         }
  47.         if(a>c)
  48.         {
  49.                 num=a;
  50.                 a=b;
  51.                 b=num;
  52.         }
  53.         if(b>c)
  54.         {
  55.                 num=b;
  56.                 b=c;
  57.                 c=num;
  58.         }
  59. }
复制代码




最佳答案

查看完整内容

掌柜要的是这个
沙发
发表于 2014-3-31 23:05:39 | 只看该作者
本帖最后由 超神级 于 2014-4-1 22:21 编辑
李掌柜 发表于 2014-4-1 10:06
嗯,这个不是重点,,
  1. #include<stdio.h>
  2. void xiaodao(void);
  3. void daoxiao(void);
  4. int a,b,c,num;
  5. int main(void)
  6. {
  7.         printf("请输入三个数;\n");
  8.         scanf("%d%d%d",&a,&b,&c);
  9.         daoxiao();
  10.         printf("这三个数从大到小的排列是\n");
  11.         printf("%5d%5d%5d\n",a,b,c);
  12.         xiaodao();
  13.         printf("这三个数从小到到的排列是\n");
  14.         printf("%5d%5d%5d\n",a,b,c);
  15.         
  16.         return 0;
  17. }
  18. void daoxiao(void)
  19. {
  20.         if(a<b)
  21.         {
  22.                 num=a;
  23.                 a=b;
  24.                 b=num;
  25.         }
  26.         if(a<c)
  27.         {
  28.                 num=a;
  29.                 a=c;
  30.                 c=num;
  31.         }
  32.         if(b<c)
  33.         {
  34.                 num=b;
  35.                 b=c;
  36.                 c=num;
  37.         }
  38. }
  39. void xiaodao(void)
  40. {
  41.         if(a>b)//如果a比b大就互换数字if不成立代表a<b.
  42.         {
  43.                   num=b;
  44.           b=a;
  45.           a=num;
  46.         }
  47.         if(a>c)//如果a比c大就互换数字,a<c
  48.         {
  49.          num=c;
  50.          c=a;
  51.          a=num;
  52.         }
  53.         if(b>c)//如果b比c大就互换数字,b>c,这样执行下来会造成a<b<c!
  54.         {
  55.                  num=c;
  56.                 c=b;
  57.                 b=num;
  58.         }
  59. }
复制代码
掌柜要的是这个

点评

写下错误注释及更正注释吧,不然这个帖子白帖了!  发表于 2014-4-1 22:06
板凳
发表于 2014-4-1 07:41:26 | 只看该作者
话说把14行printf()输出改成  printf("%5d%5d%5d\n",c,a,b);不是很好
地板
发表于 2014-4-1 08:59:18 | 只看该作者
算法有问题
5#
 楼主| 发表于 2014-4-1 10:04:06 来自手机 | 只看该作者
4399APPLE 发表于 2014-4-1 08:59
算法有问题

对,这是算法问题,因为很典型就贴出来,,
6#
 楼主| 发表于 2014-4-1 10:06:00 来自手机 | 只看该作者
超神级 发表于 2014-4-1 07:41
话说把14行printf()输出改成  printf("%5d%5d%5d\n",c,a,b);不是很好

嗯,这个不是重点,,

点评

嗯  发表于 2014-4-2 00:03
大侠都是从菜鸟走过来的嘛~~!  发表于 2014-4-1 23:21
小甲鱼那个论坛说实话真没啥技术含量里面人气是高,不过大多是菜鸟.  发表于 2014-4-1 22:51
呵呵 问题主要出在 xiaodao();函数的比较上~~!传递方向错了,不细心真的很难发现的,嘿嘿~~~  发表于 2014-4-1 22:29
额~~  发表于 2014-4-1 21:55
7#
发表于 2014-4-1 10:33:55 | 只看该作者
这也叫算法,算法这词果然不值钱……

对于这种代码应该做的是完全重写而不是改错
8#
发表于 2014-4-1 17:54:20 | 只看该作者
Orz好吧。。
9#
发表于 2014-4-1 22:09:09 | 只看该作者
刚才去帮你找哪本书没找到!这里有个残本的下载地址你http://download.csdn.net/download/cownew/277111

点评

呵呵!出了名就从免费进入到收费模式了~~个人感觉小甲鱼就不错~~!  发表于 2014-4-1 22:25
嗯,论坛现在进不去了貌似关了。只可以通过百度快照。还有搜索结果下发的版块链接进去。  发表于 2014-4-1 22:16
咦这不是C语言也能干大事的作者嘛!很牛B的一个人,现在他的论坛冷了  发表于 2014-4-1 22:12
10#
发表于 2014-4-1 22:52:27 | 只看该作者
李掌柜 发表于 2014-4-1 10:06
嗯,这个不是重点,,

还不如咱们论坛来的清静!就咱几个一起耍...
11#
发表于 2014-4-1 23:56:07 | 只看该作者
李掌柜 发表于 2014-4-1 10:06
嗯,这个不是重点,,

现在IT论坛要么定位高了要么定位低了,没有那个论坛高低定位都有的。
12#
发表于 2014-4-2 00:59:20 | 只看该作者

大小和小大为啥要写两个函数,写一个就行了……
13#
发表于 2014-4-2 20:33:07 | 只看该作者
rosynirvana 发表于 2014-4-2 00:59
大小和小大为啥要写两个函数,写一个就行了……

他这样要求的....我也不想这样写,,.................

点评

函数啊!!!我去...  发表于 2014-4-3 21:34
是用递归吧?个人觉得,功能函数吧,写成一块一块的,,用的时候调用就行了~~多方便  发表于 2014-4-3 21:25
您需要登录后才可以回帖 登录 | 立即注册

本版积分规则

广播台
特别关注
快速回复 返回顶部 返回列表