C语言求助 请问大虾们我编的有问题吗 谢谢了本人纯新手 (求三数中最大)

2025-02-23 23:54:27
推荐回答(5个)
回答1:

子函数有点问题 肯定求不出最大值,改成下面这样:
int max(int x,int y,int z)
{
int r;
if(x>y) r=x;
else r=y;
if(y>r) r=y;
return(r);
}
还有输入数据的时候,你的数据之间必须用逗号隔开,因为你写的输入语句
scanf("%d,%d,%d",&a,&b,&c); %d 之间是逗号,一般输入语句都是这个形式
scanf("%d%d%d",&a,&b,&c);
不要那个逗号

回答2:

改成这样就行了
#include
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 r;
if(x>y) r=x;
else r=y;
if(r>z) r=r; //这里不应该用y跟z比较,应该用上面比较得出的最大值r来比较
else r=z;
return(r);
}

回答3:

int max(int x,int y,int z)
{
int r;
if(x>y) r=x;
else r=y;
if(r return r;
}
改成这样

回答4:

问题大着去

回答5:

if(x>y&&x>z) r=x;
else if(y>x&&y>z) r=y;
else r=z;