C语言四则运算测试程序设计报告

四则运算测试程序设计报告

1. 问题描述

四则运算测试程序是为用户提供一个对四则运算测试的电子化平台。四则运算包括简单的加减乘除运算,运算结果可以从键盘输入,输出时可以从屏幕上显示。数据存储结构使用数组来实现,程序主要完成出题,显示答案,错题正解,系统评估等功能。

演示程序以人机交互方式进行,即在屏幕上显示所有功能菜单列表,当用户从键盘输入菜单选项后,程序执行相应的功能并输出结果。

2. 问题分析与需求定义

根据问题描述,下面给出四则运算测试程序的功能需求和数据需求定义。 1) 功能需求

(1) 在屏幕上显示四则运算测试题; (2) 从键盘输入运算结果; (3) 系统计算出正确结果; (4) 对测试评分并作出评价; (5) 将错题的正确答案显示。 2) 数据需求

准备10道四则运算题目及其正确答案,例如:

12+31=43 …… 2*42=84

3. 系统设计

1) 主要功能设计

四则运算测试程序包括如下几个功能:

(1) 出题答题:将四则运算题目保存到数组中。在本系统中,10道运算题将显

示于屏幕,用户可以直接进行答题;

(2) 显示答卷:从主函数中调用数据输出。在本系统中,用户可以浏览自己的

整个答卷;

(3) 错题正解:将正确结果的数组元素输出。本系统中,用户可以得到自己错

题的正确答案;

(4) 系统评估:从主函数中调用成绩数据输出。在本系统中,用户可以得到自

己此次测试的成绩并获得评价。

2) 数据结构设计

四则运算题包括第一运算数、第二运算数、运算符号、输入结果、正确结果,保存在数组中:

int jd[10],jg[10]; //输入结果、正确结果

int sy[10],sr[10]; //第一运算数、第二运算数 char fh[10]; //运算符号

而成绩定义成一个简单的整型数据即可: int fs; //成绩

3) 算法描述

本系统针对各功能编写相应的函数来实现,而我此次主要负责显示答卷、错题正解、系统评估的功能实现。 (1) 显示答卷:

定义一个整型变量j,通过一个for循环语句依次输出答案,各数据可由主函数中调用得到;

(2) 错题正解:

定义一个整型变量t,总体利用选择结构嵌套。首先,通过一个if的条件语句判断,如果成绩为100分,则直接输出语句“恭喜您全部回答正确!”,否则输出正确答案。正确答案的输出再通过for的循环语句将每一题的输入结果与正确结果比对,下面再次嵌套一个if的条件判断语句,如果输出结果与正确结果相同,则遇continue,开始新一轮循环,如果不相同,则输出正确结果,各数据仍从主函数中调用得到,以此保证只输出错题的正确答案而不是整个试卷的正确答案;

(3) 系统评估:

首先,输出测试成绩。其次,通过一个switch的多分支选择结构对成绩进

行评估,让实际成绩依次同100,90,80??,0进行比较,一旦遇到相同值,输出评价。若遇break时,则跳出整个switch语句块,若没有break,则一直执行到遇到,以此实现对成绩的评估。

4. 调试分析

1) 本程序的模块划分比较合理,各模块实现的功能独立性较强,有些模块具有较好的

可重用性,因此对单元模块的测试比较顺利;

2) 在错题正解功能设计时,一开始没有嵌入另一个条件判断语句,导致输出整个测试

的正确答案,显累赘且不具针对性,后经调整,实现只显示错题的正确答案; 3) 不足:本系统只能单一一套试卷测试,属于一次性程序,不具有普遍适用性,希望

通过未来的学习实现随机出题,更加完善程序;

4) 收获:通过此次四则运算测试程序的设计,更系统了解了c语言的设计应用。设计

过程中,团队间分工明确,互相合作,共同成长。同时,为使程序更加完善而多方面考虑各种情况,也增强了自己全面思考问题的能力。

联系客服:779662525#qq.com(#替换为@) 苏ICP备20003344号-4