解题思路和注意事项:
用了三目运算符把三个数的排序搞出来了,见下文:
最小数:(a<b?a:b)<c?(a<b?a:b):c
最大数:(a>b?a:b)>c?(a>b?a:b):c
中间数:a<b?(a>c?a:(c<b?c:b)):(a<c?a:(b>c?b:c))
参考代码:
#include<stdio.h> int main() { int a,b,c; scanf("%d%d%d",&a,&b,&c); printf("%d %d %d\n",(a<b?a:b)<c?(a<b?a:b):c, a<b?(a>c?a:(c<b?c:b)):(a<c?a:(b>c?b:c)), (a>b?a:b)>c?(a>b?a:b):c); return 0; }
0.0分
53 人评分
#include<stdio.h> #define MAX(a,b) a>b?a:b #define MIN(a,b) a<b?a:b #define MIL(a,b,c) (a>b?a:b)<c?(a>b?a:b):c int main() { int n[3]; int i,j,x,z,y,l; for(i=0;i<3;i++) { scanf("%d",&n[i]); } y = MAX(n[0],n[1]); y = MAX(y,n[2]); x = MIN(n[0],n[1]); x = MIN(x,n[1]); l = MIL(n[0],n[1],n[2]); printf("%d %d %d\n",x,l,y); return 0; } 小白不知道哪错了呀......
我这样写有什么问题吗? include <stdio.h> void main() { int a[3]; int i, j, t; printf("please 3 number\n"); for(i=0; i<3; i++) { scanf("%d", &a[i]); } for(i=0; i<2; i++) { for(j=0; j<2-i; j++) { if(a[j] > a[j+1]) { t = a[j]; a[j] = a[j+1]; a[j+1] = t; } } } printf("排序后:\n"); for(i=0; i<3; i++) { printf("%d", a[i]); } printf("\n"); }
云淡风轻 2020-11-24 19:59:53 |
超时了。
#include<stdio.h> int s(int x,int y) { if(x>y)return x; else return y; } int s1(int x,int y) { if(x>y)return y; else return x; } int s2(int x,int y,int z) { if(x>y&&y>z)return y; else if(x>z&&z>y)return z; else return x; } int main() { int a,b,c,d,e; scanf("%d %d %d", &a, &b,&c); d=s(s(a,b),s(b,c)); e=s1(s1(a,b),s1(b,c)); printf("%d %d %d",e,s2(a,b,c),f); return 0; }
徐某鸣 2020-11-11 22:26:58 |
错误了,难受
#include <stdio.h> void paixu(int a, int b, int c); int main() { int a, b, c; scanf("%d %d %d",&a, &b, &c); paixu(a, b, c); return 0; } void paixu(int a, int b, int c) { int t, k, m; if(a > b) t = a; else t= b; if(c > t) k = c; else k = t; if(k = c) { if(a > b) { t = a; m = b; } else { t= b; m = a; } } if(k == b) { if(a > c) { t = a; m = c; } else { t = c; m = a; } } if(k == a) { if(b > c) { t = b; m = c; } else { t = c; m = b; } } printf("%d %d %d\n", k ,
#include <stdio.h> int main() { int a,b,c; int t; scanf("%d %d %d",&a,&b,&c); if(a>b) { t=a; a=b; b=t; } if(a>c) { t=a; a=c; c=t; } if(b>c) { t=b; b=c; c=t; } printf("%d %d %d",a,b,c); return 0; }
#include<stdio.h> int main() { int a, b,c,s; scanf("%d%d%d", &a, &b,&c); if (a < b) s = a, a = b, b = s; if (a < c) s = a, a = c, c = s; if (b < c) s = b, b = c, c = s; printf("%d %d %d ", c,b,a); return 0; }
#include<stdio.h> int main() { int a,b,c; if(scanf("%d%d%d",&a,&b,&c)){ if(a<b&&b<c) { printf("%d%d%d\n",a,b,c); } else if(a<c&&c<b) { printf("%d%d%d\n",a,c,b); } else if(b<a&&a<c) { printf("%d%d%d\n",b,a,c); } else if(b<c&&c<a) { printf("%d%d%d\n",b,c,a); } else if(c<a&&a<b) { printf("%d%d%d\n",c,a,b); } else printf("%d%d%d\n",c,b,a); } return 0; } 想知道错哪了