C语言编写3个数比较大小

main()
{int a,b,c,d;
scanf("%d,%d,%d",&a,&b,&c);
d=max(a,b,c);
printf("max=%d",d);
}

int max(int x,int y,int z)
{int m,n;
if(x>y) m=x;
else m=y;
if(m>z) n=m;
else n=z;
return (n);
}
该程序错在哪里,不管输入3个什么数,比较的结果都是输出第一个数。

代码没有问题,

不过你的输入没按照你自己scanf所设定的格式来

scanf("%d,%d,%d",&a,&b,&c);
这么写的话,你应该这么输入:
1,7,8(回车)
或者
2,5,3(回车)
别忘了逗号,也别忘了将3个数都输完再回车

如果这么写,
scanf("%d%d%d",&a,&b,&c);
就可以这么输入:
2(回车)
3(回车)
1(回车)

扩展资料

C语言编写3个数比较大小其他代码样例:

# include <stdio.h> //头文件
int max(int x,int y,int z); //声明子函数
void main()//主函数

{
int a,b,c,d;//定义变量名
printf("shuru a,b,c"); //打印出shuru a,b,c
scanf("%d,%d,%d",&a,&b,&c); //录入数据
d=max(a,b,c);//调用子函数
printf("max = %d\n",d);
}
int max(int x,int y,int z)//子函数体,比较大小返回最大值
{
int m,int n;
if(x>y) m = x;
else m = y;
if(m>z) n = m;
else n = z;
return(n);
}

温馨提示:内容为网友见解,仅供参考
第1个回答  推荐于2017-10-11
代码没有问题,
不过你的输入估计没按照你自己scanf所设定的格式来

scanf("%d,%d,%d",&a,&b,&c);
这么写的话,你应该这么输入:
1,7,8(回车)
或者
2,5,3(回车)
别忘了逗号,也别忘了将3个数都输完再回车

如果这么写,
scanf("%d%d%d",&a,&b,&c);
就可以这么输入:
2(回车)
3(回车)
1(回车)

另外:
LS的两位,连别人的程序都没仔细看一下,就做出一副高手样子,
自打耳光了不是!本回答被提问者采纳
第2个回答  推荐于2017-10-03
# include <stdio.h> //头文件
int max(int x,int y,int z); //声明子函数
void main()//主函数

{
int a,b,c,d;//定义变量名
printf("shuru a,b,c"); //打印出shuru a,b,c
scanf("%d,%d,%d",&a,&b,&c); //录入数据
d=max(a,b,c);//调用子函数
printf("max = %d\n",d);
}
int max(int x,int y,int z)//子函数体,比较大小返回最大值
{
int m,int n;
if(x>y) m = x;
else m = y;
if(m>z) n = m;
else n = z;
return(n);
}
第3个回答  2009-08-24
真是比较无语了.

首先你必须把 int max() 放到 main()上面, 这才是程序最大的问题.

再试试看得到什么结果

三楼提到的也是个常见病. 大家输入数字时很少人会 1, 2, 3, 而是
1
2
3
看你自己的习惯决定怎么改动 scanf("%d,%d,%d") 是否去掉里面的","
第4个回答  2019-09-08
输入三个数字时,中间的三个逗号都要用英文模式下输入,不然就会出现你的这种情况。

三个数比大小的c语言程序
if (Max <= c)printf("%d",c);else 含义 输入三个数(空格隔开),先比较前两个数大小,将较大的数赋值给Max,再比较Max与第三个数大小,输出较大的数。输入三个数,判断前两个数,将的数赋值给max_ab,小的数赋值给min_ab,再将max_ab与c作比较。若c大于等于max_ab,则输出c,max_a...

c语言怎么求出三个数中哪一个最大?
对abc三个数进行大小的比较,总共需要比较三次;1、首先输入a,b,c三个数。2、比较a,b两个数,得出a与b中的最大值。3、然后比较b与c两个数,得出b与c的最大值。4、最后将第2步与第3步得出的最大值进行比较,得出我们需要的最大数。

C语言如何比较三个数字的大小
1、首先新建一个文本文件,改名为1.c(后缀必须为.c),双击即可直接用开发工具打开 2、然后编写main函数,main函数中主要是对比较函数的调用和输出结果 3、最后编写比较函数,在设计时,传入三个参数,返回一个最大值,分析如下:有三个数a,b,c,如果a大于等于b,则比较a是否大于等于c,如果a大于等...

c语言中的三个数比较大小怎么写代码?
max=a;if(c>max)max = c;printf("三个数中最大的数为:%d",max);return 0;}

C语言程序设计中如何比较三个数的大小
4、再次点击文件-新建选项并使用鼠标点击。5、选择c++ source file 并在右侧输入文件名字,确定。6、输入如图所示的代码,这里以abc分别代表三个不同的数,其他需要比较的数只要把abc换成相应的数就可以了。注意代码的输入要在英文输入法的环境下进行。7、点击右上角的编译运行按钮即可。

c语言怎么实现三个数字比大小
1、首先是鼠标选择单击C语言编程软件创建一个空的C语言文件。2、定义四个整数变量a,b,c,max。三个变量a,b和c用于存储输入的三个数字,max用于存储三个数字的最大值。3、使用scanf语句从键盘输入三个数字。在注意之前不要忘记使用变量。4、使用max可以逐个比较三个数字,并将最大数量存储在最大...

c语言如何实现3个数值进行比较运算
用伪代码写出解此题的算法:1、if a>b 将a和b对换 (a是a,b中的小者)。2、if a>c 将a和c对换 (a是a,c中的小者,因此a是三者中最小者)。3、if b>c 将b和c对换 (b是b,c中的小者,也是三者中次小者)。二、实现代码如下:三、执行结果如下:三、传统流程图如下:...

C语言3个数比较大小!
max_ab,min_ab,c);}输入三个数,判断前两个数,将大的数赋值给max_ab,小的数赋值给min_ab,再将max_ab与c作比较。若c大于等于max_ab,则输出c,max_ab,min_ab.若c小于max_ab且大于min_ab,则输出max_ab,c,min_ab.若c小于min_ab,则输出max_ab,min_ab,c 知识延展:C语言是一种计算机...

用c语言数组比较三个数的大小?
1.简单方法:if ( a > b ){ max = a ;} else f max = b ;if ( c > max ){ max = c;2.三元运算符 max=a>b?a:b;max=c>max?c:max;printf("Max is %d",max);

c语言 比较三个数大小
1)比较从第一个数开始,先比较第一个和第二个数的大小,如果第一个数大于第二个数,则将第一个数和第二个数互换。这样,就分别得到了最小数、中间数和最大数。如何实现 下面,根据上面的思路来编写C语言代码。为了让大家理解起来更容易,我这里采用的是思路最简单的编码方法,而不是代码最精简的...

相似回答