把5.05元 转换成伍元零伍分
用C编写一程序 把5.05元 转换成伍元零伍分 那位老大会
----------------解决方案--------------------------------------------------------
这个贴子很久以前就出过了,你自己去找嘛
----------------解决方案--------------------------------------------------------
乘以100,化为整数,求出各位数。
#include<stdio.h>
int main()
{
float rmb;
long money;
int jiao,fen;
scanf("%f",&rmb);
money=(long)(rmb*100);
fen=money%10;
money=money/10;
jiao=money%10;
money=money/10;
printf("%ld元%d角%d分\n",money,jiao,fen);
return(0);
}
----------------解决方案--------------------------------------------------------
这个很简单,其实就是分解出个十百位就可以了!
就是用%和/。
----------------解决方案--------------------------------------------------------
请教 为什么输入 3.3的时候输出就是3元2角9分啊
为什么printf里面有个%ld.%ld和%d有什么不一样吗~~~
本人出学 多谢!!!!
----------------解决方案--------------------------------------------------------
以下是引用HGC2006在2006-8-2 15:10:12的发言:
请教 为什么输入 3.3的时候输出就是3元2角9分啊
为什么printf里面有个%ld.%ld和%d有什么不一样吗~~~
本人出学 多谢!!!!
这个应该是float的精度问题。
因为我的程序money的类型是long所以输出%ld,而后面两个是int,所以是%d.
请你参照数据类型看看long 和int的区别。
----------------解决方案--------------------------------------------------------
谢谢楼上大侠
----------------解决方案--------------------------------------------------------
题目要求的是要用 大写来表示,例如 “3” 须写为 “叁”, “5 ”写为“伍”
----------------解决方案--------------------------------------------------------
其实可以用switch-case语句解决的
----------------解决方案--------------------------------------------------------
把壹 到 玖 都输出吗?/
----------------解决方案--------------------------------------------------------