为什么会是这样呢 求大家解答一下啊
#include <stdio.h>int main()
{
int max(int x,int y);
int a,b,c;
scanf("%d %d",&a,&b);
c=max(a,b);
printf("max=%d\n",c);
return 0;
}
int max(int x,int y)
{
int z;
if(x>y)z=x;
else z=y;
return(z);
}
上面这段代码 是给出的输入两个数中的大数
下面这段代码是给出的输入3个数中的最大数
#include <stdio.h>
int main()
{
int a,b,c,max;
scanf("%d %d %d",&a,&b,&c);
max=a;
if(max<b)max=b;
if(max<c)max=c;
printf("%d\n",max);
return 0;
}
开始的时候我没看到第二段代码 只是有这样一道题 我就按照第一段代码怎么写都错误 后来我看到了第二段代码 我综合两段代码写出了下面的一段代码 我认为达到的目的也应该是给出 输入的3个数中的最大数 但是结果却是不管输入什么样的三个数给出的都是4198410 我不明白是什么情况了 大神们快来指点下兄弟吧
#include <stdio.h>
int 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("%d\n",max);
return 0;
}
int max(int x,int y,int z)
{
int f;
f=x;
if(f<y)f=y;
if(f<z)f=z;
return(f);
}