搜索
查看: 267|回复: 3
打印 上一主题 下一主题

这有什么问题吗

[复制链接]
跳转到指定楼层
楼主
 楼主| 发表于 2020-3-24 21:25:35 | 只看该作者 回帖奖励 |倒序浏览 |阅读模式
5啊哈币
  1. #include <stdio.h>
  2. #include <stdlib.h>
  3. int main()
  4. {
  5.     int a,b,c;
  6.     scanf("%d%d%d",&a,&b,&c);
  7.     if(a>=b)
  8.     {if(a>=c)  printf("%d",a);
  9.     else
  10.     printf("%d",c);
  11.     }
  12.     else
  13.     {if(b>=c) printf("%d",b);
  14.     else printf("%d",c);
  15.     }
  16.     sleep(555);
  17.     return 0;
  18. }

复制代码

沙发
发表于 2020-3-25 11:48:02 | 只看该作者
本帖最后由 嘟嘟编程 于 2020-3-27 11:24 编辑

你的if语句用得十分混乱,而且Sleep的“S”要大写,并要头文件#include<Windows.h>
三个数的比大小代码如下(修改后):
#include <stdio.h>
#include <stdlib.h>
#include<Windows.h>
int main()
{
    int a,b,c,t;
    scanf("%d%d%d",&a,&b,&c);
    /**********************************/
    /*   你那样写,代码不符合逻辑  */
    /* 这样写更直观些,适合初学者*/
    /*********************************/
    if(a>b)
        t=a;
    else
        t=b;
    if(t<c)
        t=c;
    printf("%d",t);
    Sleep(555);
    return 0;
}
当然还有跟简单直观的

#include <stdio.h>
#include <stdlib.h>
#include<Windows.h>
int main()
{
    int a,b,c,t;
    scanf("%d%d%d",&a,&b,&c);
    if(a>=b && a>=c) printf("%d",a);
    if(b>a && b>=c) printf("%d",b);
    if(c>a && c>b) printf("%d",c);        
    Sleep(555);
    return 0;
}
虽然这种方法简洁,但不推荐。应为如果有十个数,会十分复杂


还有更简单的:
#include <stdio.h>
#include <stdlib.h>
#include<Windows.h>
int main()
{
    int a,b,c;
    scanf("%d%d%d",&a,&b,&c);
    printf("%d",(a>=b && a>=c) ?a : (b>a && b>=c)? b : (c>a && c>b) ? c);
    //C语言的简短if
    //表达式1?变量1:表达式2?变量2:……  或  表达式?变量1:变量2    //表示表达式1成立就执行变量1,表达式2成立就执行变量2
    //和表达式成立就执行变量1,否则就执行变量2
    Sleep(555);
    return 0;
}







点评

if(d<c) t=c;????  发表于 2020-3-25 21:31
板凳
发表于 2020-3-27 11:21:06 | 只看该作者
本帖最后由 嘟嘟编程 于 2020-3-27 11:25 编辑
嘟嘟编程 发表于 2020-3-25 11:48
你的if语句用得十分混乱,而且Sleep的“S”要大写,并要头文件#include
三个数的比大小代码如下(修改后 ...

回复@也有:
不小心打错了,应该是if(t<c)t=c;
(手滑碰到了c上面的键了
不过已经改回来了
您需要登录后才可以回帖 登录 | 立即注册

本版积分规则

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