c语言 比较三个数大小
#include<stdio.h>voidmain(){intmax(intx,inty,intz);inta,b,c,d;scanf("%d,%d,%d",&a,&b,...
# include <stdio.h>
void main()
{
int max(int x,int y,int z);
int a,b,c,d;
scanf("%d,%d,%d",&a,&b,&c);
d=max(a,b,c);
printf("max = %d\n",d);
}
int max(int x,int y,int z)
{
int m,int n;
if(x>y) m = x;
else m = y;
if(m>z) n = m;
else n = z;
return(n);
}
为什么最后输出的是a的值,而不是比较大小后的值呢??? 展开
void main()
{
int max(int x,int y,int z);
int a,b,c,d;
scanf("%d,%d,%d",&a,&b,&c);
d=max(a,b,c);
printf("max = %d\n",d);
}
int max(int x,int y,int z)
{
int m,int n;
if(x>y) m = x;
else m = y;
if(m>z) n = m;
else n = z;
return(n);
}
为什么最后输出的是a的值,而不是比较大小后的值呢??? 展开
22个回答
展开全部
# include<stdio.h>
int main()
{
int max(int x ,int y ,int z);
int a, b, c, e ;
scanf("%d , %d, %d",&a,&b,&c);
e = max (a, b , c);
printf("max=%d\n",e);
return 0 ;
}
int max(int x ,int y ,int z)
{
int f,m ;
if(x>y) f=x; //如果x大于y,把X的值赋给f
else f = y; //否则,把Y的值给f
if(f>z) m=f; //再把f的值与z比较,如果大于z,把f的值赋给m,并返回m
else m = z; //否则,f比z小,把z值赋给m
return(m); //整体思路就是先对2个数比较大小,再和第3个数比较
}
int main()
{
int max(int x ,int y ,int z);
int a, b, c, e ;
scanf("%d , %d, %d",&a,&b,&c);
e = max (a, b , c);
printf("max=%d\n",e);
return 0 ;
}
int max(int x ,int y ,int z)
{
int f,m ;
if(x>y) f=x; //如果x大于y,把X的值赋给f
else f = y; //否则,把Y的值给f
if(f>z) m=f; //再把f的值与z比较,如果大于z,把f的值赋给m,并返回m
else m = z; //否则,f比z小,把z值赋给m
return(m); //整体思路就是先对2个数比较大小,再和第3个数比较
}
已赞过
已踩过<
评论
收起
你对这个回答的评价是?
2013-12-01
展开全部
你这由于只有三个数字,所以还是很简单的,完全可以用傻瓜的方法
if(a>=b&&a>=c)
printf("%d",a);
if(b>=a&&b>=c)
printf("%d",b);
if(c>=a&&c>=b)
printf("%d",c);
反而比排序算法执行效率高
if(a>=b&&a>=c)
printf("%d",a);
if(b>=a&&b>=c)
printf("%d",b);
if(c>=a&&c>=b)
printf("%d",c);
反而比排序算法执行效率高
已赞过
已踩过<
评论
收起
你对这个回答的评价是?
展开全部
/* //三个数比较大小
int x,y,z,q,w;
printf("请输入三个要比较的整数:");
scanf("%d %d %d",&x,&y,&z);
if (x>y) {
q=x;
}
else
{
q=y;
}
if (q>z) {
w=q;
}
else
{
w=z;
}
printf("三数中最大的为:%d",w);*/
int x,y,z,q,w;
printf("请输入三个要比较的整数:");
scanf("%d %d %d",&x,&y,&z);
if (x>y) {
q=x;
}
else
{
q=y;
}
if (q>z) {
w=q;
}
else
{
w=z;
}
printf("三数中最大的为:%d",w);*/
已赞过
已踩过<
评论
收起
你对这个回答的评价是?
展开全部
#include <stdio.h>
int main()
{
int t,a,b,c;
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\n",c,b,a);
return 0;
}
原理就是运用冒泡算法,把最大的数浮在最上面,而小的数就下沉,最后就输出。
int main()
{
int t,a,b,c;
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\n",c,b,a);
return 0;
}
原理就是运用冒泡算法,把最大的数浮在最上面,而小的数就下沉,最后就输出。
已赞过
已踩过<
评论
收起
你对这个回答的评价是?
2013-12-01
展开全部
#include <stdio.h>
int main(){int a,b,c;<br/>scanf("%d%d%d",&a,&b,&c);<br/>printf("%d", a>b?a:(b>c?b:c));<br/>return 0;<br/>}
int main(){int a,b,c;<br/>scanf("%d%d%d",&a,&b,&c);<br/>printf("%d", a>b?a:(b>c?b:c));<br/>return 0;<br/>}
已赞过
已踩过<
评论
收起
你对这个回答的评价是?
推荐律师服务:
若未解决您的问题,请您详细描述您的问题,通过百度律临进行免费专业咨询