知识基础:
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分
84 人评分
#include<stdio.h> int main() { int a,b,c,d; scanf("%d%d%d",&a,&b,&c); d=a>b?(b>c?b:c):(a>b?a:c); printf ("%d\n",d); return 0; } 哪里不对?
#include<stdio.h> int main() { int a,b,c,d; scanf("%d%d%d",&a,&b,&c); d=a>b?(b>c?b:c):(a>b?a:c); printf ("%d\n",d); return 0; } 为啥不对?
干饭王 2021-11-27 14:08:06 |
d=a>b?(a>c?a:c):(b>c?b:c);
#include<stdio.h> int main() { int a,b,c; scanf("%d%d%d",&a,&b,&c); if(a>b && a>c) { printf("%d\n",a); } else { if(b>a && b>c) printf("%d\n",b); else if(c>a && c>b) printf("%d\n",c); else printf("a=b=c\n"); } return 0; } 大佬帮我找找错误。
#include <stdio.h> int main() { int a,b,c,max; scanf("%d %d %d",&a,&b,&c); if(a>b) max=a; else if(b>c) max=b; if(b<c) max=c; printf("%d\n",max); return 0; } 为啥是错的
xiaoliu 2021-11-09 23:49:11 |
你a跟b完了 你还要a跟c比啊 还差语句吧应该
xiaoliu 2021-11-09 23:53:20 |
#include<stdio.h> int main() { int a,b,c,d; scanf("%d%d%d",&a,&b,&c); if(a>b) //擂台上a,b先比 d=a; //a赢a留在擂台 else //否则b留在擂台 d=b; if(c>d) //c再跟擂台上的比 d=c; //c赢了就留在擂台 printf("%d ",d); //最后输出留在擂台上的最大数 return 0; }
#define _CRT_SECURE_NO_WARNINGS #include<stdio.h> int max = (int a, int b); int max = (int a, int b) { if (a > b) return a; else return b; } int main() { int a[3]; int i = 0; for (i = 0; i < 3; i++) { scanf("%d", &a[i]); } int mass = max(a[0], a[1]); int mass2 = max(mass, a[2]); printf("%d", mass2); return 0; } 想写个函数,可是不知道哪里出错了,求大佬指点
七天 2022-01-18 13:55:50 |
去掉你函数max后面的=
#include<stdio.h> int main() { int a,b,c; scanf("%d %d %d",&a,&b,&c); if(a>b&&a>c) printf("%d",a); if(b>a&&b>c) printf("%d",b); else printf("%d",c); return 0; } 为什么显示答案错误啊?
#include <stdio.h> int main() { int a, b, c; scanf("%d %d %d", &a, &b, &c); if (a > b) { printf("%d", a); return 0; } else if(c>a) { printf("%d", c); return 0; } else { printf("%d", b); return 0; } 运行是正确的,为什么显示错误?
刘小白 2021-06-20 18:25:29 |
#include <stdio.h> int main() { int a, b, c; scanf_s("%d %d %d", &a, &b, &c); if (a > b) { printf("%d", a); return 0; } else if(c>a) { printf("%d", c); return 0; } else { printf("%d", b); return 0; } return 0; }
良十一 2021-08-20 23:07:31 |
最后else缺一个大括号
良十一 2021-08-20 23:22:55 |
如果a大于b小于c,你的就错了。
#include<stdio.h> int main() { int a,b,c,max; scanf("%d",&a); scanf("%d",&b); scanf("%d",&c); max=a>b?(a>c?a:(b>c?b:c)):b>c?b:c; printf("%d",max); }
自强不息方得始终 2021-11-13 11:42:01 |
d=a>b?(b>c?b:c):(a>b?a:c);改成 d=a>b?(b>c?b:c):(a>c?a:c); 还是不对么