关于C语言如何有效正确的学习,我写了一个专栏:你可以这样学习C语言,有兴趣的小伙伴可以来看看哦,希望能对你有收获!本文例子需要源码的可以关注我后私信我。
这几天我用C语言自己写了一个交互小程序。这个交互小程序,我精力主要是在友好性方面,美观方面,我实在没啥天赋。
文末会给大家推荐几本书,希望对需要的朋友有帮助。
这个交互小程序其实很简单,现在很多C语言实例项目,像什么学生管理系统、图书管理系统、通讯录等等”XXX管理系统“,大部分都可以套用这个交互小程序。
先给这个程序上个图吧,程序刚开始运行,首先是一个欢迎界面,如下:
这是一个非常简陋的,欢迎界面。
按照提示,用户按下“ENTER”键,就可以进入到菜单选择界面,界面如下:
按照菜单选择界面的提示,输入数字键0退出整个程序,输入数字键1,进入对应的功能模块function1,输入数字键2,进入对应的功能模块function2。比如,我输入数字键1,进入功能模块function1,如下图:
界面嘛就这样了,美观上来说很简单,很丑陋。不过在友好性方面,背后的逻辑可不像UI看起来这么简单,本文就来分析这背后的逻辑。
一、程序一览
1. 程序代码预览
这个小项目的代码文件不多,截图如下:
每个文件里的代码也不多,很简单,每个文件的用处大概介绍如下:
1)main.c
这个是入口函数文件,用于显示欢迎界面、菜单选择界面,并响应处理用户的输入,调起对应的功能模块;
2)Common.h
这里声明了一些公共函数,比如欢迎界面函数、菜单选择界面函数、提示函数等。这些都需要在main.c中用到。如果功能模块函数要使用一些公共的函数与变量,也可以在这个文件中声明。
3)Common.c
这里是Common.h文件里函数与变量的实现。
4)function.h与function.c
这是功能模块文件。每一个功能模块都有自己的头文件和实现文件。
2. 逻辑结构
整个程序的逻辑结构也很简单,我画了一个示意图,如下:
我在图中也指出了,在这个交互程序上可以很方便地添加功能模块。最后,我会用一个示例来说明如何扩展这个程序。
二、技术点
技术点1. 程序暂停
我在程序中,在几个地方使用
system("pause");
来设置暂停点。
1) 在显示完欢迎界面后使用一次。当欢迎界面显示后,让用户能够看到欢迎信息,再由用户选择是否消失欢迎界面进入菜单选择界面;
2) 在switch语句中的每个case部分使用了一次。当每次运行完一个功能模块时,应该使得程序运行暂停,让用户看看功能模块的运行结果,再由用户按下Enter键返回菜单选择界面;
3) 在用户结束整个程序时使用了一次,让用户看到程序结束界面,再由用户按下Enter键结束程序。
上述设置这些暂停点纯粹是从用户体验出发的,同时也增强了与用户的交互性。
技术点2. 清屏
我在程序中,有几个地方使用
system("cls");
来清屏。
1) 在显示完欢迎界面后使用了一次,目的是用户想进入菜单选择界面了,那么就使得欢迎界面消失,为菜单选择界面腾出显示空间。当然,如果你觉得欢迎界面和菜单选择界面在一起显示更好看,你可以去掉清屏。
2) 在switch语句的每个case部分使用了一次。当一个功能模块运行结束后,应该清屏,腾出显示空间给下一个功能模块。因为下一个功能模块有可能有大量的信息需要显示,你上一个功能模块的输出就不要凑热闹了。
待续!