| 网站首页 | 业界新闻 | 小组 | 威客 | 人才 | 下载频道 | 博客 | 代码贴 | 在线编程 | 编程论坛
欢迎加入我们,一同切磋技术
用户名:   
 
密 码:  
共有 1078 人关注过本帖
标题:请问各位大神下面这几种情况是怎么回事啊?(嵌套循环)
取消只看楼主 加入收藏
慕牧羊
Rank: 1
等 级:新手上路
帖 子:7
专家分:0
注 册:2018-4-18
结帖率:50%
收藏
已结贴  问题点数:20 回复次数:4 
请问各位大神下面这几种情况是怎么回事啊?(嵌套循环)
#include<stdio.h>
int main()
{
    int b,c,d;//关于给出一个数值(单位:元),程序将给出由一角、两角、五角凑出来的答案;
    int e=0;
    float a;
    float f;
    printf("请输入一个数\na:");
    scanf("%f",&a);
    for(b=0;b<=a/0.1;b++)
    {
        for(c=0;c<=a/0.2;c++)
        {
            for(d=0;d<=a/0.5;d++)
            {
               f=0.1*b+0.2*c+0.5*d;
                if(f==a)
                {
                    
                    printf("%.1f元可以由%d个一角钱和%d个两角钱和%d个五角钱组成\n",a,b,c,d);
                }
            }
        }
    }
    return 0;}
1.当输入2的时候发现少了b=0,c=10,d=0;b=20,c=0,d=0这两种情况(b为一角钱的数量,c为两角钱的数量,d为五角钱的数量),这是什么原因啊?
2.当把自定义变量f去掉后,改为if(0.1*b+0.2*c+0.5*d==a)时,在输入a=2;为什么只输出b=0,c=0,d=4这一种情况啊?
搜索更多相关主题的帖子: 嵌套 int 输入 for 数量 
2018-04-18 22:19
慕牧羊
Rank: 1
等 级:新手上路
帖 子:7
专家分:0
注 册:2018-4-18
收藏
得分:0 
回复 2楼 nosnoy
你好,我用cb和dev c++都试过,结果都是出现了前面说的问题,也试过将==前面的表达式整体用括号括起来,可还是不管用。想问下你用的是什么编译器啊?
2018-04-19 08:52
慕牧羊
Rank: 1
等 级:新手上路
帖 子:7
专家分:0
注 册:2018-4-18
收藏
得分:0 
回复 5楼 nosnoy
你好,我的电脑是32位的操作系统,改成64位的编译器的话得不出结果。想问下,就是你那在64位的编译器下运行得到的是正确的结果,改成32位的编译器运行的到的结果就是和我问题中提到的情况一样出现错误吗?
2018-04-19 21:54
慕牧羊
Rank: 1
等 级:新手上路
帖 子:7
专家分:0
注 册:2018-4-18
收藏
得分:0 
回复 6楼 rjsp
你好,表示接受你的建议
2018-04-19 21:56
慕牧羊
Rank: 1
等 级:新手上路
帖 子:7
专家分:0
注 册:2018-4-18
收藏
得分:0 
回复 4楼 nosnoy
非常感谢你的热心以及耐心解答,谢谢!
2018-04-19 22:05
快速回复:请问各位大神下面这几种情况是怎么回事啊?(嵌套循环)
数据加载中...
 
   



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

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