| 网站首页 | 业界新闻 | 小组 | 威客 | 人才 | 下载频道 | 博客 | 代码贴 | 在线编程 | 编程论坛
欢迎加入我们,一同切磋技术
用户名:   
 
密 码:  
共有 1041 人关注过本帖
标题:一个问题
只看楼主 加入收藏
darrenyang
Rank: 1
等 级:新手上路
帖 子:51
专家分:0
注 册:2004-5-5
收藏
 问题点数:0 回复次数:7 
一个问题

#include "stdio.h" main() { int a,b,c,d; scanf("%d,%d,%d",&a,&b,&c); /*输入三个整数*/ d=max(a,b,c); /*用函数max来赋予d的最大值*/ printf("max is %d",d); getch(); } int max(int i,int x,int y) { int z; if (i<x); /*如果i小于x的话*/ else if (x<y) z=y; /*x又小于y的话那么就把最大y的值赋予z*/ else z=x; /*否则x最大*/ if(x<i) z=i; /*如果x小于i的话那么i最大*/ return z; /*反回z的值,最大值*/

}

第一个问题就是为什么我的程序错了?

第二个问题我这样的注解是对的吗?

2004-05-20 10:47
kai
Rank: 16Rank: 16Rank: 16Rank: 16
等 级:版主
威 望:52
帖 子:3450
专家分:59
注 册:2004-4-25
收藏
得分:0 

#include <stdio.h> #include <stdlib.h>

int myMax(int a,int b,int c) { int m = a>b?a:b; m = m>c?m:c; return m; }

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

d=myMax(a,b,c);

printf("max is %d",d); system("pause");

return 0; }


自由,民主,平等,博爱,进步.
中华民国,我的祖国,中华民国万岁!中华民国加油!
本人自愿加入中国国民党,为人的自由性,独立性和平等性而奋斗!
2004-05-20 11:14
kai
Rank: 16Rank: 16Rank: 16Rank: 16
等 级:版主
威 望:52
帖 子:3450
专家分:59
注 册:2004-4-25
收藏
得分:0 

darrenyang

你的程序中两处错误,第一,那个scanf 函数出错,不可以中间加逗号。

第二,子程序逻辑错误,所以我帮你完全改掉了。


自由,民主,平等,博爱,进步.
中华民国,我的祖国,中华民国万岁!中华民国加油!
本人自愿加入中国国民党,为人的自由性,独立性和平等性而奋斗!
2004-05-20 11:17
darrenyang
Rank: 1
等 级:新手上路
帖 子:51
专家分:0
注 册:2004-5-5
收藏
得分:0 
多谢了
2004-05-20 11:53
kuangjingbo
Rank: 1
等 级:新手上路
帖 子:312
专家分:0
注 册:2004-4-24
收藏
得分:0 
以下是引用kai在2004-05-20 11:17:53的发言:

darrenyang

第一,那个scanf 函数出错,不可以中间加逗号。

你试过了吗?你肯定吗?

其实scanf 中间可以加逗号,只要输入的时候也用逗号隔开就行了

我是上机试过,我的实验程序是:

#include <stdio.h> void main() { int i,j,k; scanf("%d,%d,%d",&i,&j,&k); printf("\n %d,%d,%d \n",i,j,k); }

我的输入是 : 1,2,3

输出是 : 1,2,3

对于楼主,你的程序有逻辑上的错误。初学者,最好先画出流程图再写程序。


永不放弃!
2004-05-20 11:59
darrenyang
Rank: 1
等 级:新手上路
帖 子:51
专家分:0
注 册:2004-5-5
收藏
得分:0 

kuangjingbo

多谢你了,我还真的不会画流程图。你把我上面的程序画一个流程图出了。也让我这个菜鸟学习学习

2004-05-20 12:46
kai
Rank: 16Rank: 16Rank: 16Rank: 16
等 级:版主
威 望:52
帖 子:3450
专家分:59
注 册:2004-4-25
收藏
得分:0 

kuangjingbo,

你说的对,我又试了一下。我总觉得,这样连续输入数值,是一种不好的做法。我不会写出这样的代码。因为用户并不清楚你要让他干什么。你想想用户为什么偏偏要输入 3 个数值,又为什么当中要加逗号呢。


自由,民主,平等,博爱,进步.
中华民国,我的祖国,中华民国万岁!中华民国加油!
本人自愿加入中国国民党,为人的自由性,独立性和平等性而奋斗!
2004-05-20 12:52
mmaa
Rank: 1
等 级:新手上路
帖 子:8
专家分:0
注 册:2008-6-26
收藏
得分:0 
努力哈
2008-06-26 22:42
快速回复:一个问题
数据加载中...
 
   



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

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