鱼C论坛

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

[已解决]排序

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

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

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

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

我就问一下,大佬们都是这样子写代码的吗
#include<stdio.h>
int main()
{
    int a,b,c;
    scanf("%d%d%d",&a,&b,&c);
    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);
    return 0;
}
输入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);
这么写,有没有写错,自己检查不方便,若让别人帮检查,更是不方便,因为非常地不直观,若是改错题,我肯定会帮他改成正常输出
想知道小甲鱼最近在做啥?请访问 -> ilovefishc.com
回复

使用道具 举报

发表于 2021-1-2 13:52:58 From FishC Mobile | 显示全部楼层
scanf这样写不会有问题吗,三目运算符写多了容易视觉混乱
想知道小甲鱼最近在做啥?请访问 -> ilovefishc.com
回复 支持 反对

使用道具 举报

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

标准答案就这样写的,他喵的,我看着一脸懵
想知道小甲鱼最近在做啥?请访问 -> ilovefishc.com
回复 支持 反对

使用道具 举报

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

scanf应该有间隔的,要不然容易搞到一个变量
想知道小甲鱼最近在做啥?请访问 -> ilovefishc.com
回复 支持 反对

使用道具 举报

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

错!scanf() 函数的控制部份,除控制符外,最好别添加任何其他的符号
scanf("%d%d%d",&a,&b,&c); 只要在实际的输入中,数字之间用空格隔开即可
想知道小甲鱼最近在做啥?请访问 -> 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);
这么写,有没有写错,自己检查不方便,若让别人帮检查,更是不方便,因为非常地不直观,若是改错题,我肯定会帮他改成正常输出
想知道小甲鱼最近在做啥?请访问 -> ilovefishc.com
回复 支持 反对

使用道具 举报

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

好吧~_~,我之前都是那么写的,在printf中提示给用户怎么输入
想知道小甲鱼最近在做啥?请访问 -> ilovefishc.com
回复 支持 反对

使用道具 举报

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

与 scanf() 函数不一样,在 printf() 函数中,控制符部份加个逗号,加个空格没有什么问题,因为引号里面除控制符外,都是原文输出的
想知道小甲鱼最近在做啥?请访问 -> 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() 函数中,控制符部份加个逗号,加个空格没有什么问题,因为引号里面 ...


我的意思是:
unsigned int i, j;
printf("请输入2个正整数(逗号隔开):");
scanf("%u,%u", &i, &j);
想知道小甲鱼最近在做啥?请访问 -> ilovefishc.com
回复 支持 反对

使用道具 举报

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

本版积分规则

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

GMT+8, 2025-1-27 09:16

Powered by Discuz! X3.4

© 2001-2023 Discuz! Team.

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