| 网站首页 | 业界新闻 | 小组 | 威客 | 人才 | 下载频道 | 博客 | 代码贴 | 在线编程 | 编程论坛
欢迎加入我们,一同切磋技术
用户名:   
 
密 码:  
共有 624 人关注过本帖
标题:百钱买百鸡,关于else语句的问题
取消只看楼主 加入收藏
安宁1991
Rank: 3Rank: 3
等 级:论坛游侠
威 望:1
帖 子:76
专家分:123
注 册:2014-4-3
结帖率:100%
收藏
已结贴  问题点数:10 回复次数:5 
百钱买百鸡,关于else语句的问题
这是参考百度后写出来的代码,虽然刚开始有点不理解,尤其是看不懂算法。一个人琢磨了好久终于弄懂了,把代码写了注释,请各位前辈看看理解的对不对。本人数学不大好,能有这进步还算是满意了。请大家不要取笑,呵呵。
#include<stdio.h>
int main()
{
    int x,y,z;//设:公鸡个数为x只,母鸡个数为y只,买小鸡花的钱为z
    for(x=0;x<20;x++)
    for(y=0;y<33;y++)
    for(z=0;z<33;z++)//因为x+y+z个数为100,买三者花的钱总数也为100,所以z<33,也就是小鸡数量不能超于100
    if((5*x+3*y+z==100)&&(x+y+3*z==100))//买小鸡花钱总数为Z,个数=总价/每只小鸡的单价,小鸡单价为1/3,所以个数为z*3
    {
        printf("公鸡为%d只, 母鸡为%d只,小鸡为%d只\n",x,y,3*z);
    }
    return 0;
}
另外为什么在if语句后面添加else分支时,程序跳过if语句,直接就执行else分支的语句呢?而且是输出的内容不断循环,直到循环结束。请大家知道的解答下?感激不尽!还打算明天重新写一个算法,困了,先睡觉。
搜索更多相关主题的帖子: include 百度 数学 
2014-04-04 00:01
安宁1991
Rank: 3Rank: 3
等 级:论坛游侠
威 望:1
帖 子:76
专家分:123
注 册:2014-4-3
收藏
得分:0 
另外,我发现把x,y,z在for循环里的条件改成小于100,if语句里面的条件不变,程序也能得出正确的结果。。现在懵了,不知道怎么回事。。求教啊。

因为有你,所以做什么都有动力。z,爱你。
2014-04-04 00:26
安宁1991
Rank: 3Rank: 3
等 级:论坛游侠
威 望:1
帖 子:76
专家分:123
注 册:2014-4-3
收藏
得分:0 
回复 3楼 夏时雨
多谢前辈指教。对啦,这个for循环具体是怎么执行的?我虽然会写出来了,但是原理还是不懂。知道怎么写,但是不知道具体是怎么执行的?是先执行完第一条循环语句后,直接执行第二条语句继续判断呢还是跳转到if语句里面进行判断后再执行第二条for循环语句的?

因为有你,所以做什么都有动力。z,爱你。
2014-04-04 09:22
安宁1991
Rank: 3Rank: 3
等 级:论坛游侠
威 望:1
帖 子:76
专家分:123
注 册:2014-4-3
收藏
得分:0 
回复 5楼 ying8501
前辈,前面我能看懂,if里的条件为什么要z%3==0呢?我知道这是求余,可是不懂为什么要这样啊?能不能注释下?谢谢!

因为有你,所以做什么都有动力。z,爱你。
2014-04-04 09:27
安宁1991
Rank: 3Rank: 3
等 级:论坛游侠
威 望:1
帖 子:76
专家分:123
注 册:2014-4-3
收藏
得分:0 
回复 8楼 wp231957
谢谢!明白了

因为有你,所以做什么都有动力。z,爱你。
2014-04-04 09:53
安宁1991
Rank: 3Rank: 3
等 级:论坛游侠
威 望:1
帖 子:76
专家分:123
注 册:2014-4-3
收藏
得分:0 
回复 11楼 夏时雨
是啊,一个人自学。话说,我才学了5天。我是30号晚上才开始学的..

因为有你,所以做什么都有动力。z,爱你。
2014-04-04 10:34
快速回复:百钱买百鸡,关于else语句的问题
数据加载中...
 
   



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

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