帮忙看下,下面程式存在什么问题。
#include <stdio.h>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);
}
当我输出数字a,b 不管 a是多少, max总显示a值,没有大小判断。 scanf("%d,%d",&a,&b);
改成scanf("%d %d", &a, &b); 即可
或者你的输入方式要按照上面的规定,例如44,55
我试了下没问题 你输入的方式要与代码中scanf函数中的格式保持一致,否则不会正确的对a和b赋值
例如:按照你写的方式,就应该输入 3,6 两个数中间输入一个逗号,就会使a = 3,b = 6了 我认为你没有在main()前面声明max()函数
页:
[1]