知识基础:


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;不可省

 

0.0分

241 人评分

  评论区

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

    else {if(a<c)
         printf("%d",c);
         else printf("%d",a);

         }
return 0;
    }
2021-06-29 09:34:42
#include<stdio.h>
int main()
{
	int a=0, b=0, c=0;
	int i=0;
	scanf_s("%d%d%d", &a, &b, &c);
	if (a > b)
		i = a;
	else
		i = b;
	if (i > c)
		i = i;
	else
		i = c;
	printf("i=%d\n", i);
	return 0;
}



这样写为什么是错的?
2021-04-08 14:24:00
#include<stdio.h>
void main()
{
	float ,b,c,max;
	scanf("%.1f %.f %.1f",&a,&b,&c);
	if(a>b)
	max=a;
	else
		max=b;
	if(c>max)
		max=c;
	printf("max=%.1f\n",max);
}

大神们,为啥我的错了。
2021-03-17 21:36:09
是否可以将a作为最大值输出,不需要t呢
2021-03-09 19:38:13
#include<stdio.h>
int main()
{
    int max,middle,min,agency;
	scanf("%d %d %d",&max,&middle,&min);
	if(min>middle){
		agency=min;
		min=middle;
		middle=agency;
	}
	if(max<middle){
		agency=max;
		max=middle;
		middle=agency;
	}
	printf("%d\n",max);
    return 0;
}
我也来了!
2021-03-09 10:51:11
# include <stdio.h>
int main(){
	int a,b,c;
	int tmp;
	if(scanf("%d%d%d",&a,&b,&c)==3){
		printf("%d",(a>(tmp=b>c?b:c)?a:tmp));
	}
	return 0;
}
2021-01-22 21:41:34
这个为啥不过呢?
#include<stdio.h>
int main()
{
	int a,b,c,max,min;
	scanf("%d%d%d",&a,&b,&c);
	if(a>b)
	{
		max=a;min=b;
	}
    else
    {
    	max=b;min=a;
    } 
    if(max<c)max=c;
	else
	   if(max>c)min=c;
    printf("max=%d",max) ;
    return 0;	   
 }
2020-12-14 21:17:25
这个给t赋值的时候不需要使用指针嘛?
2020-11-02 20:43:54