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