大家看一下这个程序,很简单的

来源:百度知道 编辑:UC知道 时间:2024/06/23 08:05:46
就是不知道为什么
#include<stdio.h>

void main()
{
int max(int x,int y);
int a,b,c;
scanf("%d,%d",&a,&b);
c=max(a,b);
printf("Max is %d",c);
}
int max(int x,int y)
{
int z;
z=x>y?x:y;
return 0;
}
执行的时候无论输入什么,
都是输出
Max is 0
为什么啊
现在改了程序又执行不了了,唉~~真不知是我编译器有问题还是~~

我在你的那个问题上已经解决了吧,兄弟你就这么想给分我呀,谢谢你的支持,o(∩_∩)o...哈哈
-------------------------------------------------
#include <stdio.h>

int max(int x,int y);// 从main()中移出,放进去也行,不过这是一种好的习惯

void main()
{
int a,b,c;
scanf("%d,%d",&a,&b);
c=max(a,b);
printf("Max is %d",c); //将全角字符串"”,"改为"","
}
int max(int x,int y)
{
int z;
z=x>y?x:y;
return z; //将0改为z
}

你写的max函数中返回值应该是return z;
还有就是要注意输入形式,以输入4和5打个比方,正确输入形式是4,5中间只有逗号。

在定义max函数时返回值为0。这是导致输出“Max is 0”的原因,试试改为return z,应该就没有问题了。你试试。

晕了 你都 return 0 了 max里放什么 带回值都是0 你又把0赋给c c当然一直是0
max函数里要带出的值是z值啊!

改成 return z