主题:初学c,看了比较2个数大小,写个比较3个数的
staty [专家分:0] 发布于 2011-04-12 12:05:00
[size=5][size=4]初学c,看了比较2个数大小,写个比较3个数的,感觉很多例子的代码都比较长的,我这个能运行,但不知这样是否有什么不妥,请各位指教[/size][/size]
我的代码:
main()
{
int a,b,c,max;
printf("输入3个数字,空格隔开");
scanf("%d%d%d",&a,&b,&c);
max=(a>b?a:b)>c?(a>b?a:b):c;
printf("max is:%d",max);
}
参考例子代码:
int max(int x,int y,int z)
{
int max;
max=x>y?x:y;
max=max>z?max:z;
return max;
}
void main()
{
int a,b,c,d;
scanf("%d%d%d",&a,&b,&c);
d=max(a,b,c);
printf("max=%d\n",d);
}
回复列表 (共9个回复)
沙发
cgl_lgs [专家分:21040] 发布于 2011-04-12 15:20:00
你合成一句话的效率并没有两句的高,何必合并呢?且可读性大大降低了。
板凳
staty [专家分:0] 发布于 2011-04-12 16:49:00
谢谢,想知道的就是这种东西!
3 楼
cgl_lgs [专家分:21040] 发布于 2011-04-12 19:44:00
:)
6 楼
limao090407 [专家分:60] 发布于 2011-04-17 18:14:00
费劲,这种代码可读性太差,不提倡哦!
7 楼
海豚小默 [专家分:100] 发布于 2011-04-23 12:29:00
#include <stdio.h>
#define N -1000000
int main()
{
int i=0;
int max=N;
int a[5];
printf("请输入3个整数!");
for(i=0;i<3;i++)
{
scanf("%d",&a[i]);
}
for(i=0;i<3;i++)
{
if(max<a[i])
max=a[i];
}
printf("Max=%d\n",max);
return 0;
}
8 楼
sclm1221 [专家分:0] 发布于 2011-04-23 18:38:00
#include <stdio.h>
#define max(x,y) x>y?x:y
void main()
{
int a,b,c,m;
printf("请输入三个整数:");
scanf("%d%d%d",&a,&b,&c);
m=max(max(a,b),c);
printf("最大%d\n",m);
}
这个能理解吧
9 楼
vivify [专家分:0] 发布于 2011-04-26 11:50:00
我觉得没有什么不妥!不错![em3]
我来回复