高级语言程序设计-十六进制整数向其他进制整数转换的算法实现.pdfVIP

  • 5
  • 0
  • 约5.82千字
  • 约 12页
  • 2020-11-14 发布于陕西
  • 举报

高级语言程序设计-十六进制整数向其他进制整数转换的算法实现.pdf

《高级语言程序设计》 课 程 设 计 报 告 书 题 目:十六进制整数向其他进制整数转换的算法实现 专 业: 计算机科学与技术 学 号: 学生姓名: 指导教师: 完成日期: 0 目录 一、 题目要求 1 二、 系统概要设计 2 2.1 程序流程图 2 2.2 数据的组织描述 2 2.3 主要函数设计 4 三、 系统关键代码 5 3.1 将十六进制转换为二进制 5 3.2 将十六进制数转换为八进制与十进制 5 3.3 完整代码 6 四、 程序调试 7 五、 课程设计总结 10 0 一、 题目要求 我的《高级语言程序设计课程设计》题目是:十六进制整数向其他进制整数转换的算法 实现。 指导教师对该题目有以下要求: 实现十六进制整数向二进制、八进制、十进制整数的转换。 经过努力,我实现了下面的功能: 1.输入十六进制整数后,可输出转换的二进制、八进制、十进制整数。 2.加入程序名称和感谢使用等,是程序界面更美观友好。 下面的功能由于自己知识储备不足,未能实现: 1. 用户可以选择输出想要转换的进制。 2. 界面排版更加规整友好。 3. 输入数字包含错误字符时提示报错,否则正常运行。 1 二、 系统概要设计 2.1 程序流程图 图 1.程序流程图 2.2 数据的组织描述 数制转换器程序是要求任意两种数间的相互转化,本次课程设计目标为实现十六进制向 二进制、八进制、十进制的转化。 对输入的十六进制的数字进行转换,实现常见进制间的转换以及多种进制同时输出,大 大提高了本程序的实用性。 本程序直接运用转换说明符来将直接数制转换为八进制与十进制,精简代码行数,减小 程序体积: 2 printf(* 转换为十进制数为: %d \n,a); printf(* 转换为八进制数为: %o\n,a); 因十六进制不能通过转换说明符直接转换为二进制,所以选择先将十六进制数转换为十 进制,再由十进制数转换成二进制数,完成一个间接转换过程。 十进制转二进制是一个连续除 2 的过程,把要转换的数,除以 2,得到商和余数,将商 继续除以 2,直到商为 0。 最后将所有余数倒序排列,得到数就是转换结果。 此程序中十六进制转二进制即用此思想: int a; char s[20]; int i=0,rem; printf( 请输入一个十六进制整数 : ); scanf(%x,a); do { rem=a%2; a=a/2; s[i]=rem; i++; } while(a!=0); printf(* 转换为二进制数为: ); while(i0) printf(%d,s[--i]); printf(\n); }

您可能关注的文档

文档评论(0)

1亿VIP精品文档

相关文档