为了账号安全,请及时绑定邮箱和手机立即绑定

C语言程序设计-汉字点阵

标签:
C++ C#

课程设计题目及要求:汉字点阵

编写程序,根据用户的中文输入,在屏幕上输出相应的汉字点阵(用户一次输入一个汉字),如图 17.1 所示。要求程序能以正常、斜体、加宽、加高四种不同的方式显示汉字点阵,并能设置汉字点阵的字符图案。

第一部分:引言

进行课程设计:

1.重点掌握选择结构程序设计,循环结构设计。

2.进一步掌握自定义函数及其调用。

3.掌握简单的文件操作。

4.养成良好的编程习惯。

5.进一步学习C语言的标准库和函数的使用方法。

6.学习较长程序的编程。

实践依据:

1.点阵汉字原理使得计算机可以显示超过6000个的汉字,且程序简单,速度快运行良好,为计算机的使用者提供了许多便利。

2.可以在LED点阵显示屏上应用。

创新点:可以打印出字摸信息,更换打印出的汉字的背景。

实践意义:

通过计算机打印出点阵汉字,可以在LED显示屏上显示,为传播信息提供了极大地便利。

本次课程设计是在理论学习和基础实验的基础上,学习开发规模较大的程序,运用已掌握应用选择结构来解决实际问题。本次任务是设计一个能够实现以正常、斜体、加宽、加高四种不同的方式显示汉字点阵,并能设置汉字点阵的字符图案的程序。通过本次课程设计不仅可以加深对所学知识的理解,学到课内知识的扩展,也提高了把知识应用到实践中的能力。

第二部分:系统功能和原始数据

(1)原始数据:

输入一个汉字:语

输出:

(2)系统功能:编写程序,根据用户的中文输入,在屏幕上输出相应的汉字点阵(用户一次输入一个汉字)。程序能以正常、斜体、加宽、加高四种不同的方式显示汉字点阵,并能显示汉字点阵的字模信息,字符图案和背景图案。

第三部分:程序总体设计

(1)数据结构:无

(2)模块划分和层次结构:

模块划分:

模块分为主函数和子函数两块,在主函数中输入,调用所需的子函数行使不同的功能。

层次结构:

用户未下达退出命令前一直for循环,其中嵌套switch case语句。

(3)函数原型清单:

(4)程序总体框架

图4程序整体框图

(5)程序组织:

stdio.h: 标准输入输出。

stdlib.h:包含数值和文本之间的转换,内存分配,随机数和其它实用函数的函数原型。

conio.h:其中定义了通过控制台进行数据输入和数据输出的函数,主要是一些用户通过按键盘产生的对应操作,比如getch()函数等等

string.h:c语言里面关于字符数组的函数定义的头文件,常用函数有strlen、strcmp,strcpy等等

windows.h:它包含了其他Windows头文件,这些头文件的某些也包含了其他头文件。

第四部分:功能模块函数设计和调试

(一)功能分析:

将选项嵌套在一个无限循环中,除非用户选择停止,否者一直循环让用户选择所需的功能。

(二)算法描述:

定义主函数,打印出选项,每个选项调用相应的函数,用公式n=((区码-1)*94L+(位码-1))*32L算出汉字的区位码,改变打出字符的多少来实现汉字点阵的斜体,放大和缩小。

(三)程序流程图:

第五部分:程序清单

源代码:

第六部分:课程设计总结

对所选题目对应程序的运行情况做详细分析,总结本次设计所取得的经验和收获。如果程序未能全部调试通过,则应分析其原因。

运行情况:能正确运行各个选项的功能。

经验收获:得到了许多课内知识的灵活应用和拓展,学到了计算汉字区位码的公式,并将其表达出来,随意填充字符和背景字符,还有光标的移动方法,选择程序结构设计,能正确调用函数,能正确使用数组等,能将各个选项的应用成功表达出来。

点击查看更多内容
TA 点赞

若觉得本文不错,就分享一下吧!

评论

作者其他优质文章

正在加载中
  • 推荐
  • 评论
  • 收藏
  • 共同学习,写下你的评论
感谢您的支持,我会继续努力的~
扫码打赏,你说多少就多少
赞赏金额会直接到老师账户
支付方式
打开微信扫一扫,即可进行扫码打赏哦
今天注册有机会得

100积分直接送

付费专栏免费学

大额优惠券免费领

立即参与 放弃机会
意见反馈 帮助中心 APP下载
官方微信

举报

0/150
提交
取消