关于输入一个数,由一角钱,两角钱,五角钱凑出这个钱数的问题
#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个五角钱组成",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这一种情况啊?