分页: 1 / 1

不知道为什么输出是错误的,c的高手麻烦帮解决下,正在学习C,谢谢了

发表于 : 2008-10-29 1:32
mymathersname
题目是谭浩强书中的作业,我自学C,我本是学医的,呵呵……

题目是求出输入三个数最大值:

我写的代码是:
#include <stdio.h>
int 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 ("The largest number is:% d.\n",max);
}

结果显示是:(比如我输入的是:12,13,14
134514025
我没有看出错误来,谢谢朋友们……

Re: 不知道为什么输出是错误的,c的高手麻烦帮解决下,正在学习C,谢谢了

发表于 : 2008-10-29 8:40
cnkilior
12,13,14

scanf要按照格式输入。
你的输入12 13 14这样看看

Re: 不知道为什么输出是错误的,c的高手麻烦帮解决下,正在学习C,谢谢了

发表于 : 2008-10-29 8:44
mymathersname
哦,谢谢先…… :em02

Re: 不知道为什么输出是错误的,c的高手麻烦帮解决下,正在学习C,谢谢了

发表于 : 2008-10-29 8:49
mymathersname
好像还是不行,输出和原来是一样的……谢谢你的建议……

Re: 不知道为什么输出是错误的,c的高手麻烦帮解决下,正在学习C,谢谢了

发表于 : 2008-10-29 9:07
ccqqwheat
max=a;
if (max<b)
max=b;
if (max<c)
max=c;

语法??

Re: 不知道为什么输出是错误的,c的高手麻烦帮解决下,正在学习C,谢谢了

发表于 : 2008-10-29 10:19
自由建客
scanf ("% d,% d,% d",&a,&b,&c);
引号中的空格和逗号等都是不能乱用的。

代码: 全选

scanf ("%d%d%d",&a,&b,&c);

Re: 不知道为什么输出是错误的,c的高手麻烦帮解决下,正在学习C,谢谢了

发表于 : 2008-10-29 11:54
zyywe
在输出,和输入的语句中

代码: 全选

%和d之间没有空格
写代码要仔细,每一个符合都有它特殊的意义

Re: 不知道为什么输出是错误的,c的高手麻烦帮解决下,正在学习C,谢谢了

发表于 : 2008-10-29 12:23
HuntXu
难怪1楼的代码看着怪怪的...多了几个空格...还以为是排版失误...

Re: 不知道为什么输出是错误的,c的高手麻烦帮解决下,正在学习C,谢谢了

发表于 : 2008-10-29 13:01
mymathersname
问题解决了,以上不是空格的问题

#include <stdio.h>
int main ()
{
int a,b,c,max;
printf ("Please input a,b,c:%d,%d,%d\n");
scanf ("%d,%d,%d",a,b,c);
max=a;
if (max<b)
max=b;
if (max<c)
max=c;
printf ("The largest number is:%d.\n",max);
}

Re: 不知道为什么输出是错误的,c的高手麻烦帮解决下,正在学习C,谢谢了

发表于 : 2008-10-29 13:06
HuntXu
怎么你的scanf是直接a、b、c? :em20

Re: 不知道为什么输出是错误的,c的高手麻烦帮解决下,正在学习C,谢谢了

发表于 : 2008-10-29 13:15
HolyLight
:em05 :em05 :em05 :em05 :em05 :em20 :em04 :em02 :em02 :em02

Re: 不知道为什么输出是错误的,c的高手麻烦帮解决下,正在学习C,谢谢了

发表于 : 2008-10-29 13:26
mymathersname
哦,不好意思,闹笑话了,初学者嘛,正常……
是&a,&b,&c :em06 :em06 :em06