首页 诗词 字典 板报 句子 名言 友答 励志 学校 网站地图
当前位置: 首页 > 教程频道 > 开发语言 > C语言 >

C语言实验——输入一个整数的小写金额值,转化作大写金额值并输出

2013-04-02 
C语言实验——输入一个整数的小写金额值,转化为大写金额值并输出同学说C看不懂,我就改成C语言了。。思想很简单

C语言实验——输入一个整数的小写金额值,转化为大写金额值并输出

同学说C++看不懂,我就改成C语言了。。


思想很简单,但是要注意,汉语是每五位为一个基本单位,其中分别是不输出,十,百,千,万,所以权重函数控制好单位就ok了。其次注意,strlen(a)-1,末尾有'\0',还有strrev函数在G++下没有。。。我了个去刚装上ubuntu,结果还得跑到舍友电脑上调试。。。

下面是源码:

#include <stdio.h>#include <string.h>void trans(int a){    if(a == 1)printf("壹");    else if(a == 2)printf("贰");    else if(a == 3)printf("叁");    else if(a == 4)printf("肆");    else if(a == 5)printf("伍");    else if(a == 6)printf("陆");    else if(a == 7)printf("柒");    else if(a == 8)printf("捌");    else if(a == 9)printf("玖");    else if(a == 0)printf("零");}void weight(int i){    if(i==1||i==5||i==9)        printf("拾");    if(i==2||i==6||i==10)        printf("佰");    if(i==3||i==7||i==11)        printf("仟");    if(i==4)        printf("万");    if(i==8)        printf("亿");    if(i==0)        printf("元整\n");}int main(){while(1){char a[10];scanf("%s",a);strrev(a);for(int i=strlen(a) - 1; a[i]; i--){trans(a[i]-'0');weight(i);}}}


2楼u0100621234天前 14:34
您好,能不能请你帮忙呢
Re: zhengnanlee4天前 14:34
回复u010062123n请讲
1楼xu121105011274天前 23:08
妹子厉害啊……呵呵呵呵
Re: zhengnanlee4天前 08:32
回复xu12110501127n额。。。

热点排行