比较大小
求两个整数中的较大者。#include<stdio.h>
int max(int x,int y)
{
int z;
if(x>y)z=x;
else z=y;
return(z);
}
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;
}
这是谭浩强原书里面的代码,为什么我输入2,5,显示max=2,想问下哪里出了问题
等级不够,不能够发图片,另外,其他帖子里面那种直接一行行代码复制自带格式是怎么弄的呢 本帖最后由 风过无痕1989 于 2021-1-25 18:18 编辑
这是因为使用了函数。函数中若使用指针就一定行。
本帖最后由 sunrise085 于 2021-1-25 18:17 编辑
很大概率是输入的问题,scanf中是%d,%d,那么你输入的时候两个数字之间就必须有一个逗号,而且必须和前面scanf中的逗号一致,若一个是中文逗号,一个是英文逗号,那肯定就出错了
你的程序中好像是英文的逗号,但是你输入的可能是中文逗号。你再试试看
另外,给个建议:scanf中最好不要放除了格式化字符以外的内容,很容易因为输入导致出错。 sunrise085 发表于 2021-1-25 18:15
很大概率是输入的问题,scanf中是%d,%d,那么你输入的时候两个数字之间就必须有一个逗号,而且必须和前面sc ...
多谢,是输入的问题,中间逗号是中文逗号导致的 风过无痕1989 发表于 2021-1-25 18:12
这是因为使用了函数。函数中若使用指针就一定行。
试了一下,的确不行,请问左边不能交换的原理是什么呢? NANAKI 发表于 2021-1-25 18:42
试了一下,的确不行,请问左边不能交换的原理是什么呢?
这个求助问题已经解决了
页:
[1]