#include

#define ROWS 4

#define COLS 4

int nums[ROWS][COLS]={{1000,1000,1000,1000},

{900,500,400,100},

{90,50,40,10},

{9,5,4,1}};

char *roms[ROWS][COLS]={{“m”,”m”,”m”,”m”},

{“cm”,”d”,”cd”,”c”},

{“xc”,”l”,”xl”,”x”},

{“ix”,”v”,”iv”,”i”}};

main(int argc,char *argv[ ])

{

int low,high;

char roman[25];

if(argc<2)

{printf(“Usage:roman decimal_numbern”);/*运行程序需带整数参数*/

exit(0);

}

high=low=atoi(argv[1]);/*将第一个参数转换成整数*/

checknum(low);

if(argc>2)

{/*带两个参数*/

high=atoi(argv[2]);

checknum(high);

if(low>high)

{

low=high;

high=atoi(argv[1]);

}

}

else

low=1;

for(;low<=high;low++)

{

to_roman(low,roman);

printf(“%dt%sn”,low,roman);

}

}

checknum(int val)/*检查参数合理性*/

{

if(val<1||val>9999)

{

printf(“The number must be in range 1..9999.n”);

exit(0);

}

}

to_roman(int decimal,char roman[ ])/*将整数转换成罗马数字表示*/

{

int power,index;

roman[0]=”;

for(power=0;power

for(index=0;index

while(decimal>=nums[power][index])

{

strcat(roman,roms[power][index]);

decimal-=nums[power][index];

}

}

转自公众号:

南昌青少年编程

c语言中罗马字母数字,C语言程序经典示例—-(22)阿拉伯数字转换为罗马数字...相关推荐

  1. c语言字母转换数字代码,实现c语言中字符串和数字的相互转换的代码

    实现c语言中字符串和数字的相互转换的代码 引导语:代码就是程序员用开发工具所支持的语言写出来的源文件,是一组由字符.符号或信号码元以离散形式表示信息的明确的'规则体系.以下是百分网小编分享给大家的实现 ...

  2. c语言0x前缀的作用,C语言中的十六进制数字为什么以前缀0x开头

    C语言中最直观的数字表示方式自然是二进制.不过这样常常会让数字看起来"过长",在C语言程序开发中,为了程序员阅读代码的方便,需要逐位操作变量时,常常使用十六进制,相对而言更加直观. ...

  3. c语言中的指数位,c语言的指数符号

    匿名用户 1级 2009-03-29 回答 C语言符号集包括:英文字母.数字和一些有特定含义的标点符号.任何C程序都是由C的符号集里的符号构成具有一定含义的语句,再由这些语句组成程序. 一.字母.数字 ...

  4. python电话号码对应的字符组合_Python3 在字符串中提取字母+数字组合微信账号、电话等 - pytorch中文网...

    今天处理数据要提取字符串中的微信,字符串中包含中文英文Emoji,标点符号等. python 提取字符串中的电话 提取电话相对简单,多个电话也可以提取 import re desstr = " ...

  5. verilog语言中的@什么意思 verilog语言中的@什么意思

    verilog语言中的@什么意思 verilog语言中的@什么意思 2012-05-27 22:47 在英语中@ 读at,也就是在--的时候,这个小学应该学过,对吧.verilog中@ 的含义就是触发 ...

  6. 在c 语言中怎么建立文件,c语言——文件的创建与建立

    今天给大家分享的是有关文件的创建与读取的语法,事实上,c语言中对于这方面的已经有相当经典且应用相当广泛的语法了,但是我今天想讲一讲关于c++中的相关语法,以下是代码: 首先是文件的创建: # incl ...

  7. c加加属于面向对象的程序设计语言吗,下列语言中属于面向对象的程序设计语言是______。A、Visual BasicB、PASCALC、CD、FORTRAN...

    下列语言中属于面向对象的程序设计语言是______.A.Visual BasicB.PASCALC.CD.FORTRAN 更多相关问题 经纬仪如存在指标差,将使观测结果出现( ). 德治的约束作用主要 ...

  8. 罗马数字转换成数字java_C趣味编程百例(31)将阿拉伯数字转换为罗马数字

    95.将阿拉伯数字转换为罗马数字 将大于0小于1000的阿拉伯数字转换为罗马数字.阿拉伯数字与罗马数字的对应关系如下: *问题分析与算法设计 题目中给出了阿拉伯数字与罗马数字的对应关系,题中的数字转换 ...

  9. c语言中的字母占位符,C语言专题-基本数据类和占位符

    C语言中常用的几种基本数据类型有 基本数据类型的长度 short =2 unsigned short=2 char =1 unsigned char=1 int =4 unsigned int=4 l ...

  10. c语言中%加字母是啥意思,%C是什么意思? C语言中%c,%s分别代表什么意思?

    导航:网站首页 > %C是什么意思? C语言中%c,%s分别代表什么意思? %C是什么意思? C语言中%c,%s分别代表什么意思? 相关问题: 匿名网友: %c单个字符输出的意思. %s是输出字 ...

最新文章

  1. 2.1 《数据库系统概论》关系数据结构及形式化定义(关系、关系模式、关系数据库)
  2. c++观察者模式observer
  3. PageHelper分页插件的原理是什么
  4. Safari浏览器不支持……
  5. Android 应用开发(12)---可绘制对象资源
  6. mybatis中使用in查询时的注意事项
  7. 安卓为什么卡及其解决方案
  8. [Hbase]Hbase知识大全
  9. 评价系统海量数据存储设计
  10. python直方图解释_python直方图1 lin
  11. 对服务器上出现大量的SYN_RCVD状态的TCP连接的问题分析
  12. 2018年南京公积金贷款新政答疑来了!首套房最高可贷50万元/人(附首套房认定标准)...
  13. 新瑞鹏“狂飙”,宠物医疗是门好生意吗?
  14. 小白重装系统教程_小白一键重装系统win10教程
  15. 软件测试之软件测试的分类上
  16. 【NUIST】南信大怎么发软著?
  17. 关于开始时间和结束时间
  18. PHP易支付网站源码+免签约接口
  19. 利用ENVI和ARCGIS做相关性分析的两种方法
  20. Flutter开发(二十二):Flutter本地数据存储

热门文章

  1. pigoss BSM 售前使用问题总结2(FAQ)
  2. matlab绘制图形中,常用函数调用(num2str,disp,gcf,hold on,plot,axis,subplot,line,stairs,grid,set,gca)
  3. word无法创建工作文件请检查临时环境变量
  4. PSI(隐私集合求交集)的几类基础思想
  5. 京东后台:订单履约系统设计(下)
  6. 替代CH7511B DP转LVDS屏换接设计|替代CH7511B EDP转LVDS转接板电路|CS5211电路原理图
  7. Win10中允许UWP应用走代理的操作方法
  8. 网站短链生成服务器,睱想短链多接口短网址生成软件+短连接批量生成工具
  9. 基于Javaweb校园代步工具租赁系统毕业设计源码061335
  10. 1:n的冗余备份_备份与冗余:有什么区别?