愿风指引着你的道路,愿你的刀刃永远锋利。 收藏本站
登陆 / 注册 搜索

阅读: 5.9K   回复: 10

C语言,【对任意三个数字进行排序】,求助!

翰苑思齐 「初入古黑」 2016-11-16 19:17 |显示全部楼层

这个用户很懒,还没有填写自我介绍呢~

20金币
我是在这个里面下载了郝斌老师的视频,然后开始接触C,学到第五课的if,出现了个问题,想了一天了,也不知道怎么回事,问一下,真的很着急,一天没进度了。
if语句应用举例【对任意三个数字进行排序】
我是这样写的:

  1. # include <stdio.h>

  2. int main(void)
  3. {
  4.         int a, b, c;
  5.         int t;

  6.         printf("请用输入以空格分开的三个数:");
  7.         scanf("%d %d %d",&a, &b, &c);

  8.         if (a < b)
  9.         {
  10.                 t = a;
  11.                 a = b;
  12.                 b = t;
  13.         }

  14.         if (a < c)
  15.         {
  16.                 t = a;
  17.                 a = c;
  18.                 c = t;
  19.         }

  20.         if (b < c)
  21.         {
  22.                 t = b;
  23.                 b = c;
  24.                 c = t;
  25.         }

  26.         printf("%d %d, %d\n",a, b, c);

  27.         return 0;
  28. }
复制代码




如果输入的是123,结果应该是321的。
在Vc++6.0中输出的结果为::
------------------------------------------------
请用输入以空格分开的三个数:123\n
123 -858993460, -858993460
Press any key to continue
-----------------------------------------------
而且我在没有在sancf里加\n,可是输入123还必须打/n才能显示,也不知道怎么回事,我和郝斌老师视频中的编码对照了多次,都一样,就是结果不一样,可是他的输出结果确是对的。。。。。。。


可能我问的有点那啥,但是我真的不懂咋回事儿, - -、

求解惑~!


最佳答案

查看完整内容

1.注意格式化输入...如果说你scanf中用空格作为隔开符,那么在输入数字的时候要保持这种格式啊。 2.为什么会出现这种现象呢,应该说和编译器也有关系,它把你输入的123作为a,由于没有bc的输入,所以自己瞎照了两个无意义的数来进行比较~


Yoki 「初入古黑」 2016-11-16 19:17 |显示全部楼层

这个用户很懒,还没有填写自我介绍呢~

1.注意格式化输入...如果说你scanf中用空格作为隔开符,那么在输入数字的时候要保持这种格式啊。
2.为什么会出现这种现象呢,应该说和编译器也有关系,它把你输入的123作为a,由于没有bc的输入,所以自己瞎照了两个无意义的数来进行比较~

翰苑思齐 「初入古黑」 2016-11-16 19:45 |显示全部楼层

这个用户很懒,还没有填写自我介绍呢~

嗷!!! 知道了,都说了以空格分开输入,我直接输入了123 , 尴尬 - -、,我会注意格式的,蟹蟹!

深蓝 炉火纯青 2016-11-16 20:36 |显示全部楼层

一个男人没有丰富的面部表情,不代表他没有丰富的内心世界。

赞助会员

本帖最后由 深蓝 于 2016-11-16 21:15 编辑

原来是你输入的时候没有加空格。。我还傻逼的去检查了代码。。。

] C语言,【对任意三个数字进行排序】,求助! QQ截图20161116211205.png

小西 「龙战于野」 2016-11-16 20:48 来自手机 |显示全部楼层

这个用户很懒,还没有填写自我介绍呢~

赞助会员
深蓝 发表于 2016-11-16 20:36
原来是你输入的时候没有加空格。。我还傻逼的去检查了代码。。。

:(我也去了,而且找出了问题,兴冲冲的想来拿20古黑币,结果。。。。。。。被人捷足先登了:L

我不是黑客 「初入古黑」 2016-11-16 21:04 |显示全部楼层

这个用户很懒,还没有填写自我介绍呢~

不对啊,他说的是要反着输出来啊

我不是黑客 「初入古黑」 2016-11-16 21:22 |显示全部楼层

这个用户很懒,还没有填写自我介绍呢~

#include<stdio.h>
int main( )
{
int a,b,c,t;
printf("请输入三个数:");
scanf("%d %d %d",&a,&b,&c);
t=a;
a=c;
c=t;
printf("%d,%d,%d",a,b,c);
return 0;       
}





鹦鹉加一 「初入古黑」 2017-1-10 16:17 来自手机 |显示全部楼层

这个用户很懒,还没有填写自我介绍呢~

哈哈,跟我想的算法一点都不一样,这个看起来好复杂。

鹦鹉加一 「初入古黑」 2017-1-10 16:28 来自手机 |显示全部楼层

这个用户很懒,还没有填写自我介绍呢~

我的天,算法我都不会!

您需要登录后才可以回帖 登录 | 免费注册  

本版积分规则

关于本站|大事记|小黑屋|古黑论 网站统计

GMT+8, 2020-11-1 02:18 , Processed in 0.035966 second(s), 21 queries , Redis On.

© 2015-2020 GuHei.Net

Powered by Discuz! X3.4

快速回复 返回列表