| 网站首页 | 业界新闻 | 小组 | 威客 | 人才 | 下载频道 | 博客 | 代码贴 | 在线编程 | 编程论坛
欢迎加入我们,一同切磋技术
用户名:   
 
密 码:  
共有 1599 人关注过本帖
标题:关于谭浩强C程序程序设计例1.3 输入a,b时候不加","得出max=3189问题 ...
取消只看楼主 加入收藏
giname
Rank: 1
等 级:新手上路
帖 子:10
专家分:0
注 册:2009-7-24
收藏
 问题点数:0 回复次数:8 
关于谭浩强C程序程序设计例1.3 输入a,b时候不加","得出max=3189问题
#include"stdio.h"
void 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);
}
int max(int x,int y)
{
int z;
if(x>y)z=x;
else z=y;
return(z);
}

在Tc 2.0下 scanf("%d,%d",&a,&b); 然后运行的时候输入a b为任何数字 结果都是max=3189
如果输入a,b就能得出正确答案 请问问什么一个","会得出不变的3189的答案呢

[ 本帖最后由 giname 于 2009-10-28 21:31 编辑 ]
搜索更多相关主题的帖子: 输入 max 程序设计 谭浩强 
2009-10-28 19:56
giname
Rank: 1
等 级:新手上路
帖 子:10
专家分:0
注 册:2009-7-24
收藏
得分:0 
额 原来是 输入a b 之间必须加个"," 或者直接在程序中直接把"%d,%d“之间逗号去了就好了 想请教下为什么有个","会得出3189的答案么
2009-10-28 20:10
giname
Rank: 1
等 级:新手上路
帖 子:10
专家分:0
注 册:2009-7-24
收藏
得分:0 
回复 2楼 giname
引用错了 编辑

[ 本帖最后由 giname 于 2009-10-28 21:28 编辑 ]
2009-10-28 21:26
giname
Rank: 1
等 级:新手上路
帖 子:10
专家分:0
注 册:2009-7-24
收藏
得分:0 
回复 2楼 giname
同上 编辑掉

[ 本帖最后由 giname 于 2009-10-28 21:28 编辑 ]
2009-10-28 21:27
giname
Rank: 1
等 级:新手上路
帖 子:10
专家分:0
注 册:2009-7-24
收藏
得分:0 
以下是引用yilangcb在2009-10-28 21:16:05的发言:

我试了你的程序
没问题啊
你是不是输入有问题啊
额 不清楚哦 用的Tc 2.0
scanf("%d,%d",&a,&b);
这句如果有逗号 那执行的时候输入a b (8 5)就会显示max=3189
只有输8,5 才能得出正确答案
如果是
scanf("%d%d",&a,&b); 那输8 5就能得出正确答案 奇怪啊
2009-10-28 21:27
giname
Rank: 1
等 级:新手上路
帖 子:10
专家分:0
注 册:2009-7-24
收藏
得分:0 
以下是引用jiangwu10057在2009-10-28 21:04:30的发言:

你是不是输错了
有没逗号都没问题啊·
额 不清楚哦 用的Tc 2.0
scanf("%d,%d",&a,&b);
这句如果有逗号 那执行的时候输入a b (8 5)就会显示max=3189
只有输8,5 才能得出正确答案
如果是
scanf("%d%d",&a,&b); 那输8 5就能得出正确答案 奇怪啊

难道是TC2 版本太老么。。
2009-10-28 21:28
giname
Rank: 1
等 级:新手上路
帖 子:10
专家分:0
注 册:2009-7-24
收藏
得分:0 
以下是引用出道在2009-10-28 22:48:05的发言:

我用 vc++ 6.0 做了 如果“ %d,%d”之间打了 逗号, 并且 输入 123 432 得出结果是 123 这是为什么呢?
如果输123,432基本能出正确答案
试试呢 不知道多了一个","是不是不同的机器会出不同答案呢 反正我不管输啥(如果程序师 %d,%d  输入a b之间没"," 那Max=3189 奇怪的。。)
2009-10-29 21:30
giname
Rank: 1
等 级:新手上路
帖 子:10
专家分:0
注 册:2009-7-24
收藏
得分:0 
以下是引用lijm1989在2009-10-28 23:00:02的发言:

scanf("%d,%d",&a,&b);  不是已经规定了格式了么??中间要有个逗号》》?
我知道scanf("%d%d",&a,&b);和  scanf("%d %d",&a,&b);  是一样的··
楼上用VC6.0做的会发现  scanf("%d,%d",&a,&b) == 1 去了··没有读入 ...
"%d,%d" 我是说%d 之间的那个逗号
反正如果程序里是%d,%d 我输入8,5就正常运行 输8 5 max就=3189
如果程序师"%d%d"输入8 5就运行正常了 反而输入8,5 max=3189

补充下 用的TC2.0
vs2010 Beta2 下了不会使用 呵呵 求教怎么用vs2010编辑c语言额 选C++后还要选啥的。。。

[ 本帖最后由 giname 于 2009-10-29 21:40 编辑 ]
2009-10-29 21:38
giname
Rank: 1
等 级:新手上路
帖 子:10
专家分:0
注 册:2009-7-24
收藏
得分:0 
以下是引用lijm1989在2009-10-30 18:17:44的发言:

TC2.0没有用过···不好意思··有时间去试试看什么情况了···2010的话,我也没用过······不过用过2008··在编写C语言代码的时候有没有在项目下??  我一开始也没用习惯··去网上找找看一遍就差不 ...
昂...试试去 话说作为一个英语专业大三学生好多术语都不懂 下的英文版的 郁闷
2009-10-30 22:22
快速回复:关于谭浩强C程序程序设计例1.3 输入a,b时候不加","得出max=3189问题 ...
数据加载中...
 
   



关于我们 | 广告合作 | 编程中国 | 清除Cookies | TOP | 手机版

编程中国 版权所有,并保留所有权利。
Powered by Discuz, Processed in 0.013551 second(s), 8 queries.
Copyright©2004-2024, BCCN.NET, All Rights Reserved