**
#define _CRT_SECURE_NO_WARNINGS
#include<stdio.h>
int main()
{
int max(int a, int b);
int x, y, z;
scanf("%d,%d", &x, &y);
z = max(x, y);
printf("max=%d\n",z);
return 0;
}
int max(int a,int b)
{
int c;
if ( a > b )c = a;
else c = b;
return(c);
}**
代码如上
运行时无论我输入两个怎样的数字 输出总是为第一个数字
scanf("%d,%d", &x, &y);
里面的逗号去掉,变成
scanf("%d %d", &x, &y);
不然你的y就没得到你输入的值,就是一个大的负数,那么x永远大于y。
以后这种错误你可以在scanf之后把x、y的值打印出来看看。
一般这样写,这样键入:2 3回车
scanf("%d%d", &x, &y);
如果你这样写,就需要这样键入:2,3回车
scanf("%d,%d", &x, &y);