鱼C论坛

 找回密码
 立即注册
查看: 1679|回复: 8

[已解决]排序

[复制链接]
发表于 2021-1-2 13:45:54 | 显示全部楼层 |阅读模式

马上注册,结交更多好友,享用更多功能^_^

您需要 登录 才可以下载或查看,没有账号?立即注册

x
本帖最后由 一世轻尘 于 2021-1-2 13:47 编辑

我就问一下,大佬们都是这样子写代码的吗
  1. #include<stdio.h>
  2. int main()
  3. {
  4.     int a,b,c;
  5.     scanf("%d%d%d",&a,&b,&c);
  6.     printf("%d %d %d\n",(a<b?a:b)<c?(a<b?a:b):c,
  7.         a<b?(a>c?a:(c<b?c:b)):(a<c?a:(b>c?b:c)),
  8.         (a>b?a:b)>c?(a>b?a:b):c);
  9.     return 0;
  10. }
复制代码

输入abc排序,大家都怎样写鸭
最佳答案
2021-1-2 14:08:36
printf("%d %d %d\n",(a<b?a:b)<c?(a<b?a:b):c,
        a<b?(a>c?a:(c<b?c:b)):(a<c?a:(b>c?b:c)),
        (a>b?a:b)>c?(a>b?a:b):c);
这么写,有没有写错,自己检查不方便,若让别人帮检查,更是不方便,因为非常地不直观,若是改错题,我肯定会帮他改成正常输出
小甲鱼最新课程 -> https://ilovefishc.com
回复

使用道具 举报

发表于 2021-1-2 13:52:58 From FishC Mobile | 显示全部楼层
scanf这样写不会有问题吗,三目运算符写多了容易视觉混乱
小甲鱼最新课程 -> https://ilovefishc.com
回复 支持 反对

使用道具 举报

 楼主| 发表于 2021-1-2 13:54:07 | 显示全部楼层
Minecraft程序猿 发表于 2021-1-2 13:52
scanf这样写不会有问题吗,三目运算符写多了容易视觉混乱

标准答案就这样写的,他喵的,我看着一脸懵
小甲鱼最新课程 -> https://ilovefishc.com
回复 支持 反对

使用道具 举报

发表于 2021-1-2 13:54:45 From FishC Mobile | 显示全部楼层
一世轻尘 发表于 2021-1-2 13:54
标准答案就这样写的,他喵的,我看着一脸懵

scanf应该有间隔的,要不然容易搞到一个变量
小甲鱼最新课程 -> https://ilovefishc.com
回复 支持 反对

使用道具 举报

发表于 2021-1-2 14:04:11 | 显示全部楼层
Minecraft程序猿 发表于 2021-1-2 13:54
scanf应该有间隔的,要不然容易搞到一个变量

错!scanf() 函数的控制部份,除控制符外,最好别添加任何其他的符号
scanf("%d%d%d",&a,&b,&c); 只要在实际的输入中,数字之间用空格隔开即可
小甲鱼最新课程 -> https://ilovefishc.com
回复 支持 反对

使用道具 举报

发表于 2021-1-2 14:08:36 | 显示全部楼层    本楼为最佳答案   
printf("%d %d %d\n",(a<b?a:b)<c?(a<b?a:b):c,
        a<b?(a>c?a:(c<b?c:b)):(a<c?a:(b>c?b:c)),
        (a>b?a:b)>c?(a>b?a:b):c);
这么写,有没有写错,自己检查不方便,若让别人帮检查,更是不方便,因为非常地不直观,若是改错题,我肯定会帮他改成正常输出
小甲鱼最新课程 -> https://ilovefishc.com
回复 支持 反对

使用道具 举报

发表于 2021-1-2 16:57:23 | 显示全部楼层
风过无痕1989 发表于 2021-1-2 14:04
错!scanf() 函数的控制部份,除控制符外,最好别添加任何其他的符号
scanf("%d%d%d",&a,&b,&c); 只要在 ...

好吧~_~,我之前都是那么写的,在printf中提示给用户怎么输入
小甲鱼最新课程 -> https://ilovefishc.com
回复 支持 反对

使用道具 举报

发表于 2021-1-2 19:59:09 | 显示全部楼层
Minecraft程序猿 发表于 2021-1-2 16:57
好吧~_~,我之前都是那么写的,在printf中提示给用户怎么输入

与 scanf() 函数不一样,在 printf() 函数中,控制符部份加个逗号,加个空格没有什么问题,因为引号里面除控制符外,都是原文输出的
小甲鱼最新课程 -> https://ilovefishc.com
回复 支持 反对

使用道具 举报

发表于 2021-1-2 20:10:29 From FishC Mobile | 显示全部楼层
本帖最后由 Minecraft程序猿 于 2021-1-2 20:15 编辑
风过无痕1989 发表于 2021-1-2 19:59
与 scanf() 函数不一样,在 printf() 函数中,控制符部份加个逗号,加个空格没有什么问题,因为引号里面 ...


我的意思是:
  1. unsigned int i, j;
  2. printf("请输入2个正整数(逗号隔开):");
  3. scanf("%u,%u", &i, &j);
复制代码
小甲鱼最新课程 -> https://ilovefishc.com
回复 支持 反对

使用道具 举报

您需要登录后才可以回帖 登录 | 立即注册

本版积分规则

小黑屋|手机版|Archiver|鱼C工作室 ( 粤ICP备18085999号-1 | 粤公网安备 44051102000585号)

GMT+8, 2025-5-3 17:21

Powered by Discuz! X3.4

© 2001-2023 Discuz! Team.

快速回复 返回顶部 返回列表