求大佬解答。为啥输入负数的时候就不对了。比如-25,6,58,。输出最大的数字
#include
int main()//编辑一个函数,输入三个数字,输出其中的最大值
{
int max(int x,int y,int z);
int a,b,c,d;
scanf("%d,%d,%d",&a,&b,&c);
c=max(a,b,c);
printf("较大的数字是%d\n",c);
return 0;
}
int max(int x,int y,int z)
{
int e;
if(x>y && x>=z)e=x;
else if(y>x && y>=z)e=y;
else e=z;
return(e);
} |
免责声明:本内容仅代表回答会员见解不代表天盟观点,请谨慎对待。
版权声明:作者保留权利,不代表天盟立场。
|
|
|
|
我测试了一下,你的代码逻辑是正确的
为什么错呢,应该就是因为你输入的逗号是在中文状态下输入的逗号,你在scanf中输入的是英文下的逗号,实际在控制台输入的时候也要输入英文状态下的逗号
这是一个小错误,下次一定要注意不要再犯
另外在推荐一种输入的方式
就是直接%d%d%d,中间不留空格,这样你输入的时候,就只要在每个数之间加上空格就OK了
scanf("%d%d%d",&a,&b,&c);例子如下(还是你的代码)
|
|
|
|
|