C语言三个数中比较出最大的一个数,这么简单我竟然运行的时候都是输出a的值,向各位求教

# include<stdio.h>
void main()
{int a,b,c,max;
printf("please input a,b,c:\n");
scanf("%d,%d,%d",&a,&b,&c);
max=a;
if(max<b)
max=b;
if(max<c)
max=c;
printf("%d\n",max);
}
我是想说我最开始的时候就输入逗号了,可是还是最终结果是a的值

程度没有问题。是正确的,我调试了几遍,都对。我估计,你错误的地方在于,输入三个数之间没有打逗号,而是打了空格。 你注意看你定义的,&a,&b,&c之间都有逗号,所以你要按规定输入的。你试着输33,44,55这种形式看看
温馨提示:内容为网友见解,仅供参考
第1个回答  2013-03-26
您输入的时候可能错了,各个数要用“,”隔开,是英文的,下面是我的代码:
# include<stdio.h>
void main()
{
int a,b,c,max;
printf("please input a,b,c:\n");
scanf("%d,%d,%d",&a,&b,&c);
max=a;
if(max<b)
max=b;
else
{
if(max>c)
max=a;
else
max=c;
}
printf("%d\n",max);
}追问

很感谢各位的回答,是这样的,我在之前调试发现了逗号的问题,我很确定我在输入的时候加入逗号了,可是结果还是a的值,我把scanf("%d,%d,%d",&a,&b,&c);改成scanf("%d %d %d",&a,&b,&c);在输入的时候一个数加空格就对了,可是这是为什么,难道VC++ 不能够识别,还是怎么回事

追答

至于这个问题是这样的,当您是%d,%d,%d的时候,输入时必须是用逗号,当您是"%d %d %d的时候,只能用空格,不然输出的结果会与输入的不同。而编译器是根据您输入的情况来读入的,空格或逗号也是一个数据,必须按这个来。希望能帮到您

本回答被提问者和网友采纳
第2个回答  2013-03-26
#include<stdio.h>
void main()
{
int a,b,c,max;
printf("please input a,b,c:\n");
scanf("%d %d %d",&a,&b,&c);
max=a;
if(max<b)
max=b;
if(max<c)
max=c;
printf("%d\n",max);
}
/*这样就可以了 因为你的程序要求输入‘,’所以要输入逗号才可以 (而不要输入空格) 我把你的输入改了下 改成不要输入逗号 输入完一个数后只要输入空格就可以了 程序没问题*/
第3个回答  2013-03-26
程序大体没错,思路是对的,你肯定是输入的时候没有用逗号把那三个数隔开,这个是主要原因。最后定义变量的时候初始化一下,不然会造成不堪的后果
第4个回答  2013-03-28
你肯定是输入的时候没有用逗号把那三个数隔开,这个是主要原因

C语言三个数中比较出最大的一个数,这么简单我竟然运行的时候都是输出...
程度没有问题。是正确的,我调试了几遍,都对。我估计,你错误的地方在于,输入三个数之间没有打逗号,而是打了空格。 你注意看你定义的,&a,&b,&c之间都有逗号,所以你要按规定输入的。你试着输33,44,55这种形式看看

C语言:编写一个程序实现3个数之间大小的比较。将最大的数输出
int a,b,c,d;printf("输入3个数:");\/\/输入3个数 scanf("%d%d%d",&a &b &c);if(a>b)\/\/比较大小并输出较大在数 d=a ;else d=b;if(d>c)printf("%d",d);else printf("%d",c);}

c语言怎么求出三个数中哪一个最大
在C语言中,要求出三个数中哪一个最大,可以通过比较运算符来实现。首先,可以假设第一个数是最大的,然后分别将这个数与后两个数进行比较。如果发现有比它大的数,就更新这个“最大数”的值。这样,经过两次比较后,就能确定三个数中哪一个最大。下面是一个简单的示例代码,展示了如何实现这个过...

...输入3个数,编程实现3个数的比较,输出其中的最大值
int a[3];printf("输入第一个数:")sacnf("%d",&a[0]);printf("\\n输入第二个数:")sacnf("%d",&a[1]);printf("\\n输入第三个数:")sacnf("%d",&a[2]);int max=0;for(int i=0;i<3;i++){ max=max>a[i]?max:a[i];} printf("%d",max);...

c语言,,三个整数abc 由键盘输入,输出其中最大的一个数,编写程序
include "stdio.h"void main(){ int a,b,c,max;printf("a,b,c:");scanf("%d %d %d",&a,&b,&c);max=a;if(max<b) max=b;if(max<c) max=c;\/\/printf("a:%d,b:%d,c:%d\\n",a,b,c);printf("%d\\n",max);}

用C语言比较三个数的大小并输出最大值
include <stdio.h>int main() {int a,b,c,d;printf("输入三个正整数:");while(scanf("%d%d%d",&a,&b,&c) == 3) {d = a;if(a < b) d = b;if(d < c) d = c;printf("%d\\n",d);printf("\\n输入三个正整数:");}return 0;} ...

C语言写一个函数,能实现从三个整数中挑选出最大值,并返回。要求在主函数...
int max(int,int);void main(void){ int a,b,c;printf("请输入a、b、c的值:\\n");scanf("%d%d%d",&a,&b,&c);printf("最大值为:%d\\n",max(max(a,b),c));} int max(int a,int b){ return a>b?a:b;} 编译通过,其实这些题自己想一下就能写,并且大部分关于C语言的书...

怎么用C语言编写一个程序,输入三个数值,然后输出其中最大者。
printf("输入第三个数:");scanf("%d",&c);if(a<b) \/\/比较前两个数,如果第二个数大,就把第一个数换走,否则不换 a=b; \/\/此时第一个数是最大的 if(a<c) \/\/比较第一个数与最后一个数,如果最后一个数大,就把第一个数换走,否则不换 a=c; \/\/此时第一个数是最大...

用c语言输入三个数,怎么输出最大的数。
if (c > max) { max = c;} printf("最大的数是:%d\\n", max);return 0;} ```在这个程序中,首先使用`scanf`函数从控制台输入三个整数,保存在`a`、`b`和`c`三个变量中。接着,使用`if`语句逐个比较这三个数的大小,将最大的数保存在`max`变量中。最后,使用`printf`函数输出最...

...大值!哪位高手帮看看这个程序哪里错了,运行的时候老在报“段错误...
是程序看起来能更清晰一点 其实你这题根本用不上指针,硬是强加上,直接用a,b,c就可以算的 另外 \/ 楼上正解。给另一个简单的程序。int max(int a,int b,int c){ if(b>a)a=b;if(c>a)a=c;return a;} \/ 这个根本行不通的 那B 和 C怎么判断 如果B>C>A 就不行了 ...

相似回答
大家正在搜