将100以内的数字用人民币的形式转化出来,怎么用c语言编写程序
2个回答
展开全部
main()
{
float num;
int i,mon,n[]={10000,5000,2000,1000,500,200,100,50,20,10,5,2,1},a[13]; /*n数组是以分为单位的面值50元就是5000分*/
printf("请输入人民币数量");
scanf("%f",&num);
mon=(int)((0.0001+num)*100);/*将输入的浮点数转换为以分为单位的整数*/
printf("您输入的人民币为%f元\n");
printf("票面为");
for(i=0;i<13;i++) /*此循环是将张数算出来赋给a[]*/
{
if(mon/n[i])
{
a[i]=mon/n[i];
mon-=n[i]*a[i];
}
else a[i]=0;
}
for(i=0;i<7;i++) /*输出*/
if(a[i]) printf("%d元%d张\n",n[i]/100,a[i]);
for(;i<10;i++)
if(a[i]) printf("%d角%d张\n",n[i]/10,a[i]);
for(;i<13;i++)
if(a[i]) printf("%d分%d张\n",n[i],a[i]);
}
推荐律师服务:
若未解决您的问题,请您详细描述您的问题,通过百度律临进行免费专业咨询