| 网站首页 | 业界新闻 | 小组 | 威客 | 人才 | 下载频道 | 博客 | 代码贴 | 在线编程 | 编程论坛
欢迎加入我们,一同切磋技术
用户名:   
 
密 码:  
共有 659 人关注过本帖
标题:初学者 求大家帮个忙
只看楼主 加入收藏
bjk1990
Rank: 1
等 级:新手上路
帖 子:8
专家分:0
注 册:2008-8-19
收藏
 问题点数:0 回复次数:9 
初学者 求大家帮个忙
给你一百块钱
要你买一百只鸡回来
公鸡是3元一只
母鸡是2元一只
小鸡是0.3一只

问有多少种买法?
2008-08-20 16:25
深深
Rank: 1
等 级:新手上路
帖 子:8
专家分:0
注 册:2008-7-18
收藏
得分:0 
你有书吗?这个问题是一个经典问题,只要你有书,书上应该都有这个问题的解答的.
2008-08-20 16:51
bjk1990
Rank: 1
等 级:新手上路
帖 子:8
专家分:0
注 册:2008-8-19
收藏
得分:0 
没有 啊 你给我编一个可以吗
2008-08-20 16:59
深深
Rank: 1
等 级:新手上路
帖 子:8
专家分:0
注 册:2008-7-18
收藏
得分:0 
回复 3# bjk1990 的帖子
main()
{int i,j,k;
 for(i=1;i<=25;i++)
  {j=(70-2.7*i)/1.7;
   k=100-i-j;
   if((3*i+2*j+0.3*k)!=100||k%10!=0)
   continue;
   printf("i=%d j=%d k=%d\n",i,j,k);
  }
}
2008-08-20 17:52
bjk1990
Rank: 1
等 级:新手上路
帖 子:8
专家分:0
注 册:2008-8-19
收藏
得分:0 
[bo][un]深深[/un] 在 2008-8-20 17:52 的发言:[/bo]

main()
{int i,j,k;
 for(i=1;i

不对啊  无发生运行  提示一个错误一个警告
2008-08-20 19:03
深深
Rank: 1
等 级:新手上路
帖 子:8
专家分:0
注 册:2008-7-18
收藏
得分:0 
哦,我运行了一下,倒是没错误,只是没结果……
2008-08-20 20:08
fighter19
Rank: 1
来 自:广东珠海
等 级:新手上路
帖 子:29
专家分:0
注 册:2008-7-26
收藏
得分:0 
这样行不行?
1,用for循环

#include <stdio.h>
int main(){
    int rooster,hen,chick;
    printf("rooster\then\tchick\n");
    for(rooster=1;rooster<=33;rooster++)/*最多只能买33只公鸡*/
        for(hen=1;hen<=100-rooster;hen++){
            chick=100-rooster-hen;
            if(3*rooster+2*hen+0.3*chick==100)
                printf("%d\t%d\t%d\n",rooster,hen,chick);
            }
            puts("\n");
            return 0;
}


2,用while

#include <stdio.h>
int main(){
    int hen, chick,rooster=0;
    printf("rooster\then\tchick\n");
    while(rooster<=33){
        hen=0;
        while(hen<=100-rooster){
            chick=100-rooster-hen;
            if(3*rooster+2*hen+0.3*chick==100)
                printf("%d\t%d\t%d\n",rooster,hen,chick);
            hen++;
        }
        rooster++;
    }
    puts("\n");
    return 0;
}


两种方法都可以的,选择哪一种看自己喜欢的
2008-08-20 20:52
yt414204458
Rank: 2
等 级:论坛游民
帖 子:260
专家分:55
注 册:2008-3-1
收藏
得分:0 
著名的 百钱买鸡问题,不过到现在还没仔细看过源代码

一切从爱C开始
2008-08-20 21:08
广陵绝唱
Rank: 10Rank: 10Rank: 10
等 级:贵宾
威 望:29
帖 子:3607
专家分:1709
注 册:2008-2-15
收藏
得分:0 
程序代码:
/*******************************************************************************

        给你一百块钱
        要你买一百只鸡回来
        公鸡是3元一只
        母鸡是2元一只
        小鸡是0.3一只

        问有多少种买法?
  ~~~~~~~~~~~~~~~~~~~~~~~~~~~

    这道题似乎是出错了,百钱买百鸡的小鸡应该是一文钱买三只。如果按照这题
的题意,不能等于100的。所以按照这题的题意,写了如下的程序,让结果近似于100。

*******************************************************************************/
#include<stdio.h>
int main(void)
{
        int a,b,c;
        for(a=1;a<34;a++)
            for(b=1;b<50;b++)
            {
                c=100-a-b;
                if((3.0*a+2.0*b+0.3*c)<101.0&&(3.0*a+2.0*b+0.3*c)>99.0)
                    printf("公鸡%d只,母鸡%d只,小鸡%d只。\n",a,b,c);
            }
        getch();
}
2008-08-21 00:32
醉罪
Rank: 2
等 级:论坛游民
帖 子:140
专家分:24
注 册:2008-7-26
收藏
得分:0 
很经典的问题   
楼上的源码简单明了  但是为什么我在编译的时候会出现这个错误呢
D:\工具\vc6.0\Microsoft Visual Studio\MyProjects\maijiweiti.cpp(12) : error C2065: 'getch' : undeclared identifier
  删掉getch9();就没有错了
2008-08-21 10:30
快速回复:初学者 求大家帮个忙
数据加载中...
 
   



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

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