| 网站首页 | 业界新闻 | 小组 | 威客 | 人才 | 下载频道 | 博客 | 代码贴 | 在线编程 | 编程论坛
欢迎加入我们,一同切磋技术
用户名:   
 
密 码:  
共有 2223 人关注过本帖
标题:百钱买百鸡引出的问题(求助)
只看楼主 加入收藏
空前
Rank: 1
等 级:新手上路
帖 子:1146
专家分:0
注 册:2004-5-11
收藏
 问题点数:0 回复次数:19 
百钱买百鸡引出的问题(求助)

我记得我们老师说过一个题,题是这样的:用一百块钱买一百只鸡,大鸡5块钱一只,子鸡3块钱一只,小鸡1块钱3只.

老师说用C语言只能得出一个结果,而用别的计算机语言可以得出三种结果,请问这是算法的问题,还是语言的问题?

请顺便把这段程序写出来,谢谢!

搜索更多相关主题的帖子: 计算机语言 C语言 
2004-05-15 23:43
tempnetbar
Rank: 2
等 级:新手上路
威 望:4
帖 子:582
专家分:4
注 册:2004-5-5
收藏
得分:0 

For gongji = 1 To 20 For muji = 1 To 30 For xiaoji = 1 To 99 If gongji + muji + xiaoji = 100 And gongji * 5 + muji * 3 + xiaoji / 3 = 100 Then Print "公鸡:" & gongji Print "母鸡:" & muji Print "小鸡:" & xiaoji End If Next Next Next

这是VB代码,C语言的一样


相信勤能补拙! 喜欢用好用的就永远学不到有用的。
2004-05-16 11:14
youc
Rank: 1
等 级:新手上路
帖 子:24
专家分:0
注 册:2004-5-5
收藏
得分:0 

我是初学者,看了以上的VB我写了下面的C,见笑了:

#include<conio.h> #include<stdio.h> main() { int a,b,c,k=1; clrscr(); for(a=1;a<20;a++) for(b=1;b<33;b++) for(c=1;c<100;c++) { if(5.0*a+3.0*b+c/3==100&&a+b+c==100) printf("The %d: a=%-2d,b=%-2d,c=%-2d\n",k++,a,b,c); } getch(); }

运行结果为:

The 1: a=3 ,b=20,c=77 The 2: a=4 ,b=18,c=78 The 3: a=7 ,b=13,c=80 The 4: a=8 ,b=11,c=81 The 5: a=11,b=6 ,c=83 The 6: a=12,b=4 ,c=84

[此贴子已经被作者于2004-05-16 14:28:12编辑过]


QQ:53469192 交个朋友!!!!
2004-05-16 14:26
jzh2004
Rank: 1
等 级:新手上路
帖 子:341
专家分:0
注 册:2004-4-30
收藏
得分:0 

上面答案虽然有好多,但是仔细看一下题意就知道了,小鸡应是3的倍数


我的主页 http://www.
2004-05-16 15:14
zff_ff
Rank: 1
等 级:新手上路
帖 子:147
专家分:0
注 册:2004-5-12
收藏
得分:0 

将c改成double型


偶是一只想要飞却忘了咋飞的菜鸟
2004-05-16 20:03
flytosky
Rank: 1
等 级:新手上路
帖 子:54
专家分:0
注 册:2004-5-10
收藏
得分:0 

我没老师教过,我不知道为什么,感觉3楼应用整数同时加上c%3==0得到三个答案,

可楼主说的c语言只有一个结果? (写错拉,对不起)

[此贴子已经被作者于2004-05-17 09:36:58编辑过]


嘿嘿
2004-05-16 21:32
youc
Rank: 1
等 级:新手上路
帖 子:24
专家分:0
注 册:2004-5-5
收藏
得分:0 
"我没老师教过,我不知道为什么,感觉3楼应用整数同时加上b%3==0得到三个答案"?????

QQ:53469192 交个朋友!!!!
2004-05-16 22:55
zff_ff
Rank: 1
等 级:新手上路
帖 子:147
专家分:0
注 册:2004-5-12
收藏
得分:0 

这和b是没有关系的

还是那句话

将c改成double型


偶是一只想要飞却忘了咋飞的菜鸟
2004-05-16 23:01
flytosky
Rank: 1
等 级:新手上路
帖 子:54
专家分:0
注 册:2004-5-10
收藏
得分:0 
写错拉,应c%3==0!

嘿嘿
2004-05-17 09:31
天使预备役
Rank: 2
等 级:论坛游民
威 望:3
帖 子:670
专家分:10
注 册:2004-4-6
收藏
得分:0 

#include<conio.h> #include<stdio.h> void main() { int a,b,c,k=1; clrscr(); for(a=0;a<20;a++) for(b=0;b<33;b++) for(c=0;c<100;c=c+3) { if(5.0*a+3.0*b+c/3==100&&a+b+c==100) printf("The %d: a=%-2d,b=%-2d,c=%-2d\n",k++,a,b,c); } getch(); }

是不是每一种都要有一个,那么把前面的=0,改为=1,是不是就可以了????

直接加三不就少了20*33*(100/3*2)次循环了么??


差点把你忘了...
2004-05-17 09:55
快速回复:百钱买百鸡引出的问题(求助)
数据加载中...
 
   



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

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