谭浩强第四版C程序设计例1.3
问题描述:
代码如下,省略注释
#include
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);
}
然后编译运行,输入8,5 显示max=8,
输入5,8 居然显示max=5,
用的Dev-C++ 5.9.2版本,求大神指教什么情况
答
你输入的是中文的全角逗号?那样第二个数字不能赋值。
没有初始化的b可能是一个很小的负数,所以出现等于5的结果。
程序本身没错,但是输入要用半角
5,8
答
非常感谢您的纠正,纠结了好久