知识基础:


scanf("输入模式",地址列表);//输入语句及其格式。注:地址列表一定要加取地址符号&,如:&a,&b


printf("输出模式",输出列表);//输出语句及其格式。注:输出模式和输出列表一一对应,如:printf("%d%d",a,b);


if(表达式){若干语句}//单条件单分支的条件语句,若表达式成立,执行若干语句


if(表达式){若干语句1}else{若干语句2}//单条件双分支的条件语句,若表达式成立,则执行若干语句1,若表达式不成立,执行若干语句2


题目是输入a、b、c三个值,输出其中最大值,除了需要a,b,c三个变量以外,还需要一个变量t存放最大值,先拿a和b比较,如果a>b则t存放a的值,否则存放b的值,再拿c和t比较(因为t中存放的是a,b中最大的),如果c>t,则把c中的值替换t中的值,输出t


答案

#include<stdio.h>
int main(){
    int a,b,c,t;
    scanf("%d%d%d",&a,&b,&c);
    if(a>b)
        t=a;
    else
        t=b;
    if(c>t)
        t=c;
    printf("%d\n",t);
    return 0;
}

ps:if中若干语句如果只有一条的话,可以省略大括号{}

else中若干语句如果只有一条的话,可以省略大括号{}

程序结束return 0;不可省


点赞(43)
 

0.0分

60 人评分

C语言网提供由在职研发工程师或ACM蓝桥杯竞赛优秀选手录制的视频教程,并配有习题和答疑,点击了解:

一点编程也不会写的:零基础C语言学练课程

解决困扰你多年的C语言疑难杂症特性的C语言进阶课程

从零到写出一个爬虫的Python编程课程

只会语法写不出代码?手把手带你写100个编程真题的编程百练课程

信息学奥赛或C++选手的 必学C++课程

蓝桥杯ACM、信息学奥赛的必学课程:算法竞赛课入门课程

手把手讲解近五年真题的蓝桥杯辅导课程

评论列表 共有 166 条评论

斗战胜佛卢卡斯 9月前 回复TA
#include<stdio.h>
int main()
{
	int a,b,c;
	int t;
	if(a>b)
	  t=a;
	else
	  t=b;
	while(~scanf(t>c));
{
    printf("%d\n",&t);
}
	return 0;
}
代码可以运行,但是最后输出结果是一串乱码是哪里错了吗
流星C 12月前 回复TA
@老衲用飘柔 #include<stdio.h> int main() { 	int a, b, c, d; 	scanf("%d%d%d", &a, &b, &c); 	d = a; 	d = d > b ? d : b; 	d = d > c ? d : c; 	printf("%d", d); 	return 0;
流星C 12月前 回复TA
@老衲用飘柔 #include<stdio.h> int main() { 	int a,b,c,max; 	scanf("%d%d%d",&a,&b,&c); 	max=a>b?a:b; 	max=max>c?max:c; 	printf("max=%d",max);  	return 0;   }
北柒 1年前 回复TA
@浪费钱 #include <stdio.h> int main() { 	int a,b,c,max=0; 	scanf("%d %d %d",&a,&b,&c); 	if(a>b) 		if(a>c) 		max=a; 		else 		max=c; 	else 		if(b>c) 		max=b; 		else 		max=c; 	printf("%d",max); 	return 0; }
不想长大 1年前 回复TA
@缘 a>=b&&a>=c
wuxueqinlll 1年前 回复TA
@老衲用飘柔 过不去的话,就是打印的错了,题目要求就输出一个最大值就行,不用max=
老衲用飘柔 1年前 回复TA
#include<stdio.h>
int main()
{
	int a,b,c,max;
	scanf("%d%d%d",&a,&b,&c);
	max=a>b?a:b;
	max=max>c?max:c;
	printf("max=%d",max); 
	return 0; 
 } 
哪位大佬能告诉我哪错了
1年前 回复TA
@李子全 #include<stdio.h> int main() {     int a[3], b;     for (int i = 0; i < 3; i++)     {         scanf("%d",&a[i]);     }     b = a[0];     for (int i = 0; i < 3; i++)     {         if (a[i] >b )         b = a[i];     }     printf("%d", b);     return 0; }
1年前 回复TA
#include<stdio.h>
int main()
{
    int a,b,c;
    scanf("%d%d%d",&a,&b,&c);
    if(a>=b&&a>=b)printf("%d",a);
    else if(b>=c)printf("%d",b);
    else printf("%d\n",c);
    return 0;
}
没懂我哪里错了
优雅的居士 1年前 回复TA
@莫方尘 很明显错了,你每次只比较了两个数的大小咋能得出三个数中的最大值?