2017《面向对象程序设计》课程作业三
题目描述基础
编写一个能对0--10之间的整数进行四则运算的“软件”,提供给小学生使用的自主四则运算练习程序。
程序能接收用户输入的整数答案,并判断对错。
程序结束时,统计出答对、答错的题目数量。
其中:
- 0——10的整数是随机生成的。
- 生成题目数量由用户输入。
- 要求生成混合运算,如(5 - 4 ) * (3 + 8) =?
- 题目生成后由用户输入答案。
- 用户用键盘输入一个字符来结束程序的运行并显示统计结果,比如输入e程序结束并显示统计结果
补充说明:
-
要求将第一次作业中使用静态变量的方法进行改进,推荐使用传参、定义函数有返回值。
-
本次作业要求在第一次课程作业的基础上进行迭代,考察文件读写、多参数主函数的知识点。
-
多参数主函数要求:在命令行中输入的参数为:用户要求题目数量的文件路径、最终结果的文件路径。
D:\>a.exe d://in.txt d://out.txt
a.exe为可执行文件,d://in.txt为用户要求的题目数量的文件路径,d://out.txt最终结果的文件路径
-
要求将程序写成.cpp和.h分离的形式。
-
主函数的设计如下:
int main(int argc,char *argv[]){
readFile()//读取用户要求的题目数量(请注意参数设置)
scan()//该函数用于与用户交互,获取输入数据
randomNumber()//用于随机生成数字
randomOperation()//用于随机生成运算符
generateExpression()//用于生成运算式
calculateResult()//用于计算生成的运算式的结果
writeFile()//将最终结果写入文件,写入内容包括:用户输入的题目数,每个生成的表达式、正确答案、用户输入的答案,保存到命令行中第二个参数指定的路径。(请注意参数设置)
print()//将统计结果输出给用户
return 0;
}
要求将课程作业一的代码进行迭代,实现以上各个模块。各个模块的形参列表、函数返回值类型可自由定制。
- 发表一篇博客,博客内容为:本次作业的感想、对于文件读写和多参数主函数学习过程中遇到的问题、提供本次作业的github链接、程序运行截图。