c语言程序设计:任意位数人民币的拆分?

来源:百度知道 编辑:UC知道 时间:2024/06/28 19:53:31
c语言程序设计:任意位数人民币的拆分? 后面得带注解的?

人民币共有100元,50元,10元,5元,2元,1元,5角,2角,1角
我们分别把它们的个数记为a,b,c,d,e,f,g,h,i。接着获得一个待计算的币值。思路是通过除以100,50...获得a,b...的值。程序如下:
#include<stdio.h>
int main ()
{
int a,b,c,d,e,f,g,h,i,z;
printf("please input the yuan");
scanf("%d",&z);
a=(int)(z/100); --int为强制类型转换,这样得到一个整型数,即100元的个数。
b=(int)((z-100*a)/50);
c=(int)((z-100*a-50*b)/10);
d=(int)((z-100*a-50*b-10*c)/5);
e=(int)((z-100*a-50*b-10*c-5*d)/2);
f=(int)((z-100*a-50*b-10*c-5*d-2*e)/1);
g=(int)((z-100*a-50*b-10*c-5*d-2*e-1*f)/0.5);
h=(int)((z-100*a-50*b-10*c-5*d-2*e-1*f-0.5*g)/0.2);
i=(int)((z-100*a-50*b-10*c-5*d-2*e-1*f-0.5*g-0.2*h)/0.1);
printf("100yuan has %d,50yuan has %d,10yuan has %d,5yuan has %d,2yuan has %d,1yuan has %d,5jiao has%d,2jiao has %d,1jiao has%d",a,b,c,d,e,f,g,h,i);
getch();
return 0;
}
好好看一下吧,有什么不懂的提出来好了。