2022年linux系统下用C语言实现小学算术运算测试程序 .pdf
《2022年linux系统下用C语言实现小学算术运算测试程序 .pdf》由会员分享,可在线阅读,更多相关《2022年linux系统下用C语言实现小学算术运算测试程序 .pdf(8页珍藏版)》请在淘文阁 - 分享文档赚钱的网站上搜索。
1、在 linux系统下用 C语言实现小学算术运算测试程序XX大学软件学院小学算术运算测试程序1、题目与要求我计划编写的题目是:小学算术运算测试程序。制作一个可供小学数学运算的程序: 10 以内加减法,能根据输入题数出题,判断题是否正确,最后计算分数。并用 make 工程管理器编译 , 编写 makefile 文件。2、内容及主要任务小学算术运算测试程序:要求完成 10 以内的加减运算。能根据用户输入的想要练习的题目数自行出题。用户输入答案后可以判断正误,并能给出算对及算错的题目数,最后计算出分数。同时,对于用户算错的题目会发出报警名师资料总结 - - -精品资料欢迎下载 - - - - - -
2、- - - - - - - - - - - - 名师精心整理 - - - - - - - 第 1 页,共 8 页 - - - - - - - - - 声,提示用户注意,同时给出正确结果。做完一次测试后用户可决定是否继续进行下一次测试。3、题目设计意义通过本课题的毕业设计,熟悉了关于 linux 下 C 语言的系统软件程序设计, 可以比较深入的了解和掌握 WINSOCK 控件基本属性、方法和事件,理解网络聊天通信的概念,输控制协议( TCP )进行数据交流,初步掌握网络聊天通信程序的设计方法。并能巩固和扩展大学期间的学习内容,进行项目的设计开发训练,更好的适应社会的需求。随着计算机网络技术的快速
3、发展,人们的交流方式越来越多,传统的通信方式在速度和可靠性方面已经很难满足人们的需要,即时通信系统已成为人们的新宠。同时,即时通信系统对现代企业也有着重大意义,它为诸企业开拓了网络应用的新领域。自从它诞生以来,以实时交互、资费低廉等优点,受到广大个人用户的喜爱,已经成为网络生活中不可或缺的一部分。本着学以致用的原则,本人开发了这套多点聊天系统,以满足网络用户的通讯需求。该系统具有操作简单、界面友好、功能专一等特点。本报告就系统的开发过程做了详细的介绍,并对系统的原理、总体设计等方面做了深入细致的讨论。4、主要内容本程序共分为五个模块:出题模块、答题模块、检查计分模块、评分模块和评价模块;下面分
4、别对这五个模块的算法做一下介绍。(1)出题模块:一个答题系统自然而然首先就是要有题目且能够根据条件出题;在本模块中,首先设了一个含有 15 个指针的指针数组,指针数组里的每个指针都指向了相应题号的 1 选择题 , 这样就实现了对题目的储存;然后用 scanf 函数来实现从键盘上输入题号,用 if 语句控制输题的范围;题号不在 1-15 的范围内就提示选题出错;在输入题号的过程中输入相同题号是在所难免的;但是在答题系统中输入相同题号显然没有意义,所以另外设了一个静态一维数组来储存已输过的题号;且数组的第一个元素初始化为 0 , 然后每输入一个题号就赋给这个数组,同时用 for 语句来使当前的题号
5、一一与储存在一维数组中已输过的 题号进行比较,如题号有相同,就提示重答,重答的功能是通过对出题模块函数的递归调用来实现的,如题号没有相同,就通过输入的题号借助指针数组里的指针找到与题号对应的选择题, puts 函数来实现对选择题的输出;名师资料总结 - - -精品资料欢迎下载 - - - - - - - - - - - - - - - - - - 名师精心整理 - - - - - - - 第 2 页,共 8 页 - - - - - - - - - 用 最后用 return 语句将其他模块返回来每道题的小分数返回到主函数中(在主函 数中调用出题模块函数 )。(2)答题模块:出完题后自然是从键盘上
6、输入答案了,在本模块中,提示输入答案后,用scanf 函数来实现使从键盘上输入的一个答案选项(A、B、C 、D) 赋给一个用来记录答案的字符变量;用 return 语句将这个变量返回到出题模块中。(3)检查计分模块 : 输入答案选项后 , 就要判断答案的正确性和计分了,在本模块中,要设一个字符数组来储存每道题的正确答案; if 语句来控制在答题模块中输入的答案是否为用 A、B、C、D 中的某一个;若不是 , 就提示选的答案不在答案范围内,若是,根据在出题模块中输的题号使在答题模块中输入的答案选项与储存正确答案数组中的相应答案选项相比较,若相同 , 就提示答案正确,与此同时用变量记录下这道题所得
7、的小分,否则, 就提示答案错误并给出当前题目的正确答案,不计分; return 语句将得分返回到出题系统中( 在出题 模 用 块函数中调用检查计分模块函数) 。(4)评分模块 : 做完题后 , 就要根据做题的对错个数来评分; 在本模块中 , 首先就要提示题目全做完, switch 语句根据总小分来选择性地选出 11 个不同的分数中的一个分数,用 并且 打印出该分数 ( 在主函数中调用评分模块函数) 。(5)评价模块 : 最后一步就是要根据不同的总得分段来给出不同的评语,在本模块中用if 语句根据不同的总分数段来打印出不同的评语(在主函数中调用评价模块函数) 。 主函数将这五个模块直接地或间接地
8、联系在一起,使它们构成本程序, 现在就来介绍主函数的算法。主函数对出题模块函数、评价模块函数进行了调用;首先提示开始答题,为了要答 10 次题, 就要设一个 for 语句来控制对出题模块函数调用的次数, 即需要答一定次数的题, 与此同时用一个变量来累加由出题模块函数返回来每道题的小分数;接下来分别对评分模块函数和评价模块函数进行调用。以上就是对本程序算法的介绍。5、程序结构及主要过程(1)本程序共包含了顺序结构、选择结构、循环结构三种在 C 程序中的主要结构,其中穿插了数组 (一维数组、字符数组 ) 、指针 ( 指针数组 ) 、函数名师资料总结 - - -精品资料欢迎下载 - - - - -
9、- - - - - - - - - - - - - 名师精心整理 - - - - - - - 第 3 页,共 8 页 - - - - - - - - - 调用( 递归调用 ) 等知识,该程序覆盖了本学期所学的除结构体外的大部分知识。(2)本程序结构和过程思路如下:为了要答题,首先要有题目,设一个指针数组来实现;把相应的题目调出,应用指针的功能实现;调出题目后,就要给用户答题了,用一个输入函数实现;再经过系统的判断,用一个字符数组储存正确答案结合判断语句实现;最后累加计分,用循环结构实现。(3)总之,该程序的总体结构和过程很好的体现了现在所提倡的对一个程序结构模块化的思想。6、程序模块功能说明本
10、程序一共有五个模块,它们分别是:出题模块(question_out(),答 题模 块 (answer(),检查计分模块 (check(),评分模块 (count(),评价模块(assessment(),现在就来分别介绍这五个模块的功能。(1)出题模块 (question_out():这一模块主要负责对题目的储存和调出这两个功能。(2)答题模块 (answer():这一模块主要负责将用户端的答案通过键盘输入到系统。(3)检查计分模块 (check():这一模块主要负责检查判断用户所提供的答案是否正确并根据它来记录每题所的总分。(4)评分模块 (count():这一模块主要负责统计总得分并打印。(
- 配套讲稿:
如PPT文件的首页显示word图标,表示该PPT已包含配套word讲稿。双击word图标可打开word文档。
- 特殊限制:
部分文档作品中含有的国旗、国徽等图片,仅作为作品整体效果示例展示,禁止商用。设计者仅对作品中独创性部分享有著作权。
- 关 键 词:
- 2022年linux系统下用C语言实现小学算术运算测试程序 2022 linux 系统 语言 实现 小学 算术 运算 测试 程序
限制150内