读书人

请教这个求2个数中较大者的代码错哪了

发布时间: 2013-03-29 14:24:52 作者: rapoo

请问这个求2个数中较大者的代码哪里错了?
本帖最后由 haoranhaoran 于 2013-03-26 03:23:43 编辑 我用tcc编译 返回的z总是第一个数字
if那里“>”改成“<”后不知道为什么总是返回1
奇怪的是这代码是在“C程序设计”这本书上抄的

#include <stdio.h>
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);
}
int max(int x,int y)
{
int z;
if (x>y)
z=x;
else
z=y;
return(z);
}

[解决办法]
你肯定输入格式不正确。你scanf以后马上printf("%d %d\n",a,b);你就知道了。
[解决办法]
引用:
书上写着说 因为max函数在main函数的后面 所以使用max函数前要先对它进行声明
但是我发现第四行删除后运行结果还是一样啊


对于C语言,的确可以不需要,因为编译器会根据你的实参自己造一个max的声明;C++就不行了
[解决办法]
显然是你输入数据的格式不对,
比如你要比较1和3谁大,那你就得输入1,3
中间的逗号不能少的

读书人网 >C语言

热点推荐