山东建筑大学C++设计解读.doc

山东建筑大学题 目:课 程:院 (部):专 业:班 级:学生姓名:学 号:指导教师:完成日期:1、课程设计目的 1 2、课程设计任务 1 3、小学生测验系统 2 4、参考文献 12 5、课程设计总结 13 6、附件(源代码) 13 1、课程设计目的 本课程设计是计算机科学与技术专业重要的实践性环节之一,是在学生学习完《C/C++语言》课程后进行的一次全面的综合练习。本课程设计的目的和任务:(1)巩固和加深学生对C/C++课程的基本知识的理解和掌握;(2)掌握C/C++编程和程序调试的基本技能;(3)利用C/C++进行简单软件设计的基本思路和方法,初步理解面向过程和面向对象的编程思想;(4)提高运用C/C++解决实际问题的能力;(5)掌握书写程序设计说明文档的能力 1、程第~天总体需求分析相关文档,设计说明,查找资料第~天代码实现程序调试修改第~天撰写课程设计第~天课程设计 3、小学生测验系统 3.1 问题描述与功能设计 面向小学1~2年级学生,随机选择两个整数和加减法形成算式要求学生解答。功能要求:电脑随机出10道题,每题10分,程序结束时显示学生得分。 1、确保算式没有超出1~2年级的水平,只允许进行50以内的加减法,不允许两数之和或之差超出0~50的范围,负数更是不允许的。 2、每道题学生有三次机会输入答案,当学生输入错误答案时,提醒学生重新输入,如果三次机会结束,则输出正确答案。 3、对于每道题,学生第一次输入正确答案得10分,第二次输入正确答案得7分,第三次输入正确答案得5分,否则不得分。 4、总成绩90以上显示“SMART”,80-90显示“GOOD”,70-80显示“OK”,60-70显示“PASS”,60以下“TRY AGAIN”。 3.2 概要设计 3.3 详细设计 类和对象模型 对象之间的关系模型 对象主要操作算法流程图 3.4测试数据与测试情 1、下图中,第一题为当问题第一次回答正确时的状态 第二题为当问题第二次回答正确时的状态 第三题为当问题第三次回答正确时的状态 第四题为当问题三次回答都错误时的状态 第五题为输入乱码的状态 2、9个题第一次答对,1个题第二次答对,得分97,SMART 3、8个题第一次答对,1个题第三次答对,1个题三次都答错,得分85,GOOD 4、7个题第一次答对,1个题第三次答对,2个题三次都答错,得分75,OK 5、5个题第一次答对,2个题第二次答对,3个题三次都答错,得分64,PASS 6、5个题第一次答对,1个题第二次答对,4个题三次都答错,得分57,TRY AGAIN 4、参考文献 [1] 何钦铭、颜晖著,C语言程序设计,高等教育出版社,2011年12月。 [2] 杜茂康、李昌兵著,C++面向对象程序设计(第二版),电子工业出版社,2009年11月。 [3] 钱能,C/C++程序设计教程(修订版)—设计思想与实现,清华大学出版社,2013年1月。 [4] Y.Daniel Liang 著,王刚,刘晓光,刘璟译:C/C++程序设计,机械工业出版社,2009年11月。 [5] 郑秋生:C/C/C++程序设计教程,电子工业出版社,2007年10月。 5、课程设计总结 在这次C++课程设计中,我自己学到了很多关于C++的知识。很多函数可以在头文件中调用,使得程序的编写变得便捷。在每次的上机课时,与同学们的交流使得我不断完善程序,让程序的更具有交互性。每当编程出现问题的时候,我就翻阅C++课本,实在难以解决的问题就通过互联网查询资料以及与向老师同学询问来解决。这次课程设计,我获得了巨大收获,对C++有了更加深刻的理解。 6、附件(源代码) #includeiostream #includecstdlib//包含srand()和rand()函数 #include time.h//包含time()函数 using namespace std; class A { private: int flag,f1,a,b; char answer3[100]; public: int random()//随机选题 { srand(time(NULL));//随机数发生器的初始化函数,设置供rand()使用的随机数种子,使用系统时间来初始化,防止随机数每次重复 flag=rand()%2;//将两种题目设置随机的编号 a=rand()%50;//运算的范围在0~49之间 b=rand()%50; if(flag==0) { f1=a+b; return f1; } else {

文档评论(0)

1亿VIP精品文档

相关文档