C语言三个数比较大小知道

如题所述

第1个回答  2020-04-21
程序有问题把
在max函数中
三个if语句的条件都为逗号表达式
逗号表达式的值为逗号表达式中最后一个表达式的值
即下面左边的三条语句相当于右边的三条语句
if
(x>y,x>z)
a=x;
if(x>z)
a=x;
if
(y>x,y>z)
a=y;
if(y>z)
a=y;
if
(z>x,z>y)
a=z;
if(z>y)
a=z;
应把逗号改为&&
&&的意思是且,和;
修改后程序如下
#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
a;
if
(x>y&&x>z)
a=x;
if
(y>x&&y>z)
a=y;
if
(z>x&&z>y)
a=z;
return(a);
}
相似回答
大家正在搜