???????? 问题提出:

建立一个函数,对一个数字转换成相应的人民币方式。

人民币按元为读写转换单位。

条件:参照中国人的读写习惯、采用中文大写。

???????? 系统分析:

人民币转换函数的制作,首先应确定一个函数基本要素,即函数名、参数、返回值及其数据类型。

我们定义函数名:MoneyTrans,参数为人民币的阿拉伯表示,为了方便数据处理,我们定义其数据类型为字符串,返回值为人民币的大写表示,亦为字符串数据类型。

Char * MoneyTrans(char mstr[]);

通常情况下,按人民币读写习惯,对于整数部分是四位数字为一读写单位,分别有万、亿、万亿等。

对于连续的四位数字,其读写单位分别为千、百、拾等,最后一位数字无读写单位。

对于小数位,则有角、分等。

对于每一个阿拉伯数字,在中文上分别对应于:零、壹、贰、叁、肆、伍、陆、柒、捌、玖等。

通过上述分析,在编制函数时,我们可以按照读写习惯,依次对数据有高位到低位进行处理。

特殊情况:

对于四位数字中间连续有几个0的数字,通常只读一个零。

没有小数位的,要在后面添加一个整。

???????? 代码设计:

#include

#include

#include

?

/*定义人民币转换所需字符串*/

char str1[]="零,壹,贰,叁,肆,伍,陆,柒,捌,玖";

char str2[]="千,百,拾";

char str2[]="万,亿,万亿";

char str2[]="角,分";

?

?

?

#define MaxCharsStr 250 /* 字符数组所装入的最多字符数 */

#define MaxLineCharsScreen 80 /* 屏幕一行显示的最大字符数 */

/* 该函数将字符串str显示在row行的中间*/

void PrintStrCenter(int row,char *str)

{

int col;

col=( MaxLineCharsScreen - strlen(str)) /2 ;

if (col<=0)

col=1;

gotoxy(col,row);

cprintf("%s",str);

}

/* 该函数将字符串str显示在row行的中间*/

void InitLineStr (int lineid,char *linestr)

{

char linestr1[MaxCharsStr];

char linestr2[MaxCharsStr];

char linestr3[MaxCharsStr];

int strval;

int linelen;

int tmpidx1;

int tmpidx2;

?strcpy(linestr1, "1\t");

if (lineid>1)

{

linelen=strlen(linestr);

strval=0;

tmpidx2=0 ;

for (tmpidx1=0;tmpidx1

{

if (linestr[tmpidx1]!= "\t")

linestr2[tmpidx2++]= linestr[tmpidx1];

else

{

linestr2[tmpidx2++]="\0";

tmpidx2=0;

if (strval!=0)

{

sprintf(linestr3, "%d",strval+atoi(linestr2));

strcat(linestr1,linestr3);

strcat(linestr1, "\t");

}

strval=atoi(linestr2);

}

}

strcat(linestr1, "1\t");

}

strcpy(str,str1);

}

?

/* 主函数 */

void main(void)

{

char linestr[MaxCharsStr];

int num;/*保存打印三角形的阶数*/

int idx;

clrscr();

printf("Please input n[1,10]: ");

scanf("%d",&num);

if (num>0 && num <=10)

{

sprintf(linestr, "The Table of %d. ",num);

PrintStrCenter(5,linestr);

for (idx=1;idx<=num;idx++)

{

InitLineStr

c语言汇率转换代码_C语言人民币转换代码..doc相关推荐

  1. c语言美元转换人民币的程序,【其它】编程题: 1.编写一个人民币和美元的双向汇率转换程序,实现美元和人民币转换,汇率:1美元=6.92人民币...

    [其它]编程题: 1.编写一个人民币和美元的双向汇率转换程序,实现美元和人民币转换,汇率:1美元=6.92人民币 更多相关问题 患者身热,微恶风寒,少汗,头昏,心烦,口干,干咳少痰,舌红少苔,脉细数. ...

  2. c语言 hello world代码_C语言基础

    首先,还是从hello world开始. #include <stdio.h> int main(void) { printf("Hello Worldn"); ret ...

  3. 万年历c语言编程代码_C语言高效编程与代码优化~

    译文链接:http://www.codeceo.com/article/c-high-performance-coding.html 英文原文:https://www.codeproject.com/ ...

  4. c++扫雷游戏代码_C语言学习教程,用C语言编写扫雷游戏

    本文实例为大家分享了C语言实现扫雷游戏及其优化的具体代码,供大家参考,具体内容如下 关于扫雷优化 1.核心思想:使用两个二维数组进行设计,一个用于显示,一个用于后台雷的布置. 2.使用宏常量,后期可以 ...

  5. c语言饭卡管理系统_C语言饭卡管理系统(附代码).doc

    C语言饭卡管理系统(附代码) C语言饭卡管理系统,代码超简单,纯c语言基础知识,本人大一时期自己打的代码与实验报告(作图是直接word,可直接修改,不需安装visio),上传只为赚取百度财富值,支持原 ...

  6. c语言tab什么意思_C语言入门学好这一篇就足够了!C语言所有的知识点

    全球最大的C/C++人员聚集地就在我这里,企鹅裙搜索直播编程学习,[14]就是我的.不管你是什么基础,来了就是兄弟,是兄弟就跟我一起学习C/C++!关注我,为编程点赞,每天学点小知识!工作需要学习C/ ...

  7. c语言取余规则_C语言入门学好这一篇就足够了!C语言所有的知识点,满满的干货...

    C语言一经出现就以其功能丰富.表达能力强.灵活方便.应用面广等特点迅速在全世界普及和推广.C语言不但执行效率高而且可移植性好,可以用来开发应用软件.驱动.操作系统等.C语言也是其它众多高级语言的鼻祖语 ...

  8. c语言tab什么意思_C语言入门 — 一篇最全的C语言基础知识。

    c语言入门 C语言一经出现就以其功能丰富.表达能力强.灵活方便.应用面广等特点迅速在全世界普及和推广.C语言不但执行效率高而且可移植性好,可以用来开发应用软件.驱动.操作系统等.C语言也是其它众多高级 ...

  9. c语言char*怎么赋值_C语言入门笔记「收藏细细品系列」

    c语言入门 C语言一经出现就以其功能丰富.表达能力强.灵活方便.应用面广等特点迅速在全世界普及和推广.C语言不但执行效率高而且可移植性好,可以用来开发应用软件.驱动.操作系统等.C语言也是其它众多高级 ...

  10. c语言malloc函数用法_C语言内存模型!小本本记起来啊!

    一.C语言的内存分配模型 1.程序代码区:存放函数体的二进制代码. 2.全局区数据区:全局数据区划分为三个区域.全局变量和静态变量的存储是放在一块的,初始化的全局变量和静态变量在一块区域,未初始化的全 ...

最新文章

  1. 特征工程之统计变换:对数+百分位秩+取Rank+Tukey打分+BoxCox+Percentile Rank
  2. SpringCloud Greenwich(六)集成dubbo与openfeign的feignTargeter报错,cannot access its superinterface Targeter
  3. 钉钉推出“钉工牌”,门禁、差旅、员工福利一码通用
  4. 嵌入式电路设计(工具准备)
  5. RHEL6基础三十七之系统时间修正、GRUB背景图片修改
  6. 学生阅读作业三——对习而学教学方式的思考
  7. linux如何显示前一天日期,在linux显示昨天(前一天)的日期
  8. overleaf换模板
  9. 计算机驱动程序安装不了,Win7系统安装不了主板驱动的解决方法
  10. 用python实现基于PANN(retrained Audio Neural Networks)的声音检测方法
  11. GNU Radio Pythpn
  12. php页面强制横屏,Css实现手机端页面强制横屏(仅适用与一屏页面)
  13. 【错误记录】编译 Linux 内核报错 ( Unable to find the ncurses package. )
  14. 操作系统基础:内存管理逻辑思维导图,简单看懂内存管理的逻辑
  15. 基于决策树的交通拥堵成因分析
  16. 互联网时光穿梭机WayBack Machine
  17. outlook移动ost邮箱数据到D盘
  18. java实现给手机发短信验证码
  19. vue 列表展开收起
  20. 运用JAVA开发安卓程序

热门文章

  1. 运维Python大全
  2. Python语言程序设计课程论文——Python小游戏
  3. python输出去掉空格
  4. 中缀表达式——表达式树
  5. sqldeveloper 工具的使用——连接数据库的介绍
  6. Fortran入门教程(八)——子例程及函数
  7. 吴恩达机器学习详细总结(三)
  8. 基于javaweb+jsp的运动会体育比赛管理系统(带报告文档)
  9. PyCharm Project Structure
  10. 速看!不止零关税,RCEP的签订对普通百姓的影响都在这里