啊哈磊_编程从这里起步
标题:
这有什么问题吗
[打印本页]
作者:
laoba
时间:
2020-3-24 21:25
标题:
这有什么问题吗
#include <stdio.h>
#include <stdlib.h>
int main()
{
int a,b,c;
scanf("%d%d%d",&a,&b,&c);
if(a>=b)
{if(a>=c) printf("%d",a);
else
printf("%d",c);
}
else
{if(b>=c) printf("%d",b);
else printf("%d",c);
}
sleep(555);
return 0;
}
复制代码
作者:
嘟嘟编程
时间:
2020-3-25 11:48
本帖最后由 嘟嘟编程 于 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;
}
作者:
嘟嘟编程
时间:
2020-3-27 11:21
本帖最后由 嘟嘟编程 于 2020-3-27 11:25 编辑
嘟嘟编程 发表于 2020-3-25 11:48
你的if语句用得十分混乱,而且Sleep的“S”要大写,并要头文件#include
三个数的比大小代码如下(修改后 ...
回复@也有:
不小心打错了,应该是if(t<c)t=c;
(手滑碰到了c上面的键了
)
不过已经改回来了
欢迎光临 啊哈磊_编程从这里起步 (https://bbs.codeaha.com/)
Powered by Discuz! X3.2