i《C++程序设计》课程设计要求一、课程设计目的通过C++课程设计,使学生能将学到的面向对象的程序设计思想用到具体的工作和学习中,加深对类与对象的理解,是将计算机课程与实际问题相联接的关键步骤。通过课程设计,能够提高学生分析问题、解决问题,从而运用所学知识解决实际问题的能力,因而必须给予足够的重视。本次课设所涉及的知识量大,应用面广,需要结合课程设计这个实践环节来贯通学生所学的各方面的知识。并在实际动手的过程中,进一步熟悉这门语言,以求能熟练应用,并扩展课堂所学的知识,达到提高学习效果的目的。对于课堂上未学过的知识点,在课程设计过程中应通过查阅资料来了解和应用,同时在这个过程中培养学生独立分析问题和解决问题的能力,为今后的学习和应用建立良好的基础。二、课程设计要求学生可在老师给定的几个任务选题中,选择难度适合自己的课题,通过自己对设计目标的理解,独立完成所选课题要求实现的功能目标,编写软件代码和设计报告。也可以根据自己的兴趣自选题目,难度适中符合要求即可。课设要求独立完成。可相互讨论或查阅参考资料,但不得与他人雷同,不得直接从网上或其它地方抄袭代码。验收时和最后提交代码后会进行是否抄袭的检验,发现雷同或抄袭者成绩为不及格。三、课程设计参考选题同学们可从如下选题中选择题目来完成,选题一旦选定,不得随意变更。严禁同一个选题的代码相似或雷同,否则成绩为不及格。所有选题最终都必须设计成友好界面的程序、软件或系统。功能越完善、越丰富、越有自己的特色与创新、越不与他人雷同,则成绩越高。本次课设可参考教材的最后一章的电话簿管理系统来进行设计!!每个班最多只能允许2个同学选同一个题目.18,19周下午在5407答疑,没有试验环境的同学也可以去那里进行课设.我的联系方式:刘少兵,13471257408。QQ:657932895。1.学生成绩管理信息系统,基本功能如下:能够实现各种查询(分别根据学生姓名、学号、班级、课程名称等)。能够实现按照单科成绩、总成绩、平均成绩、学号排序。能够实现学生信息的插入、删除和修改。能够查询每个课程的最高分、最低分及相应学生姓名、班级和学号。能够查询每个班级某门课程的优秀率(90分及以上)、不及格率,并进行排序。2.电话簿管理系统,参考教材,添加如下功能:添加QQ号成员及相关的成员函数。添加家庭住址成员及相关的成员函数。ii电话号码要求只能是11位手机号,输入电话号码时要进行合法性验证(即输入的不是11位要告错!!)。3.万年历,基本功能如下:能够显示实现1800-2100年的日期,包括公历、农历、星期、二十四节气。能够按照月份格式显示,或按照星期格式显示。能够显示系统时间。能够设置闹钟。能够查询若干国际大城市(分布在不同时区)的时间。4.数学表达式计算程序,基本功能如下:由用户输入一个简单的四则运算表达式,求出其计算结果后显示。允许在表达式中出现常用的数学函数,如绝对值、取整、三角函数、倒数、平方根、平方、立方等。5.班级通讯录:设计一个实用的小型通讯录程序,具有添加,查询和删除功能。由姓名、班级、手机、家庭电话、电子邮件、通讯录地址、邮编等内容组成,姓名由字符编码。电话号码可由字符和数字组成。实现功能:系统以菜单方式工作信息录入功能信息浏览功能信息查询功能信息修改功能系统退出功能6.运动会比赛计分系统:要求:初始化输入:N-参赛学校总数,M-男子竞赛项目数,W-女子竞赛项目数各项目名次取法有如下几种:取前5名:第一名得分7分,第二名得分5,第三名得分3,第四名得分2,第五名得分1;取前3名:第一名得分5,第二名得分3,第三名得分2;功能要求:系统以菜单方式工作iii由程序提醒用户填写比赛结果,输入各项目获奖运动员信息。所有信息记录完毕后,用户可以查询各个学校的比赛成绩查看参赛学校信息和比赛项目信息等。7.简单文本编辑器的设计:系统功能的基本要求:简单文本编辑器提供给用户基本的纯文本编辑功能,能够将用户录入的文本存储到本地磁盘中。能够读取磁盘中现有的纯文本文件让用户继续编辑。文件操作能够实现:新建文档、保存文档、打开文档、关闭文档、页面设置、打印预览、打印设置、打印等。编辑操作能够实现对文本内容的选择、剪切、复制、粘贴、查找、替换等。8.简单画图程序:模仿windows画图程序,设计一个简单画图程序。能实现圆、矩形、直线、椭圆,扇形、圆弧的绘制及颜色的填充。能够用鼠标手工绘制图形。(要求:1.源文件采用多文件的工程结构2.数据存储采用文件形式3.功能完善,适当的注释)9.Sudoku游戏设计:仿Ubuntu系统中Sudoku游戏,设计自己的Sudoku游戏,要求1)至少具有EASY,Medium两个难度级别。2)具有Undo,Redu,Hint等功能,用不同的颜色提示错误的功能。10.学生学籍管理系统:用数据文件存放学生的学籍,可对学生学籍进行注册,登录,修改,删除,查找,统计,学籍变化等操作。功能要求:系统以菜单方式工作。登记学生的学号,姓名,性别,年龄,籍贯,系别,专业,班级;修改已知学号的学生信息;删除已知学号的学生信息;查找已知学号的学生信息;iv按学号,专业输出学生籍贯表。查询学生学籍变化,比如入学,转专业,退学,降级,休学,毕业。11.职工工资管理系统:功能设计要求输入记录:将每一个职工的姓名、ID号以及基本工资、职务工资、岗位津贴、医疗保险、公积金的数据作为一个记录。该软件能建立一个新的数据文件或给已建立好的数据文件增加记录。显示记录:根据用户提供的记录或者根据职工姓名显示一个或几个职工的各项工资和平均工资。修改记录:可以对数据文件的任意记录的数据进行修改并在修改前后对记录内容进行显示。查找记录:可以对数据文件的任意记录的数据进行查找并在查找前后对记录内容进行显示。删除记录:可删除数据文件中的任一记录。统计:(A)计算各项工资平均工资及总工资,(B)统计符合指定条件(如职工工资前三项之和在3000元以上、3000~2000元、2000~1000元)以内的工资职工人数及占总职工人数的百分比。(C)按字符表格形式打印全部职工工资信息表及平均工资(包括各项总的平均工资)。保存数据文件功能:例如:职工工资信息表ID号姓名基本工资职务工资津贴医疗保险-公积金-总工资01张望1286794198109135203402李明118562813594114174003王小民895438986473129404张效章1350868210116150216205彭山7453988461681098各项平均工资1092.2625.214588.810812.工资纳税系统:个人所得税每月交一次,底线是1600元/月,也就是超过了1600元的月薪才开始计收个人所得税。个人所得税税率表一(工资、薪金所得适用)级数----------全月应纳税所得额----------税率(%)1--------------不超过500元的--------------------------52----------超过500元至2000元的部分------------10v3----------超过2000元至5000元的部分----------154----------超过5000元至20000元的部分---------205----------超过20000元至40000元的部分-------256----------超过40000元至60000元的部分-------307----------超过60000元至80000元的部分-------358----------超过80000元至100000元的部分------409----------超过100000元的部分---------------------45表中的应纳税所得额是指以每月收入额减除1600元后的余额。例如:计算为:2500-1600=900应纳个人所得税额=500×5%+400×10%=65再比如:我们用一个大额工资计算,25000元应纳税所得额=25000-1600=23400应纳个人所得税税额=500×5%+1500×10%+3000×15%+15000×20%+3400×25%=4475要求:输入工资计算出纳税金额。13.图形时钟:要求:在屏幕上显示一个图形时钟(用程序绘制一个与时钟样式相似即可),时间与系统时间一致,且要随着时间的走动准确的走动。能模拟机械钟表行走,还要准确地利用数字显示日期和时间,在屏幕上显示一个活动时钟,按任意键时程序退出。14.复数类:要求:该系统主要处理复数的相关信息。完成以下的操作:初始化复数、求其绝对值、复数的加、减、乘、除、乘方、自加、自减等。vi提示:建立数据类、复数类数据、复数信息的初始化复数信息的输出求复数的绝对值实现复数的加、减、乘、除、乘方、自加、自减等运算15.字符串类:要求:该系统主要处理字符串的相关信息。完成以下的操作:初始化字符串、获得字符串长度、在字符串中查找一个字符、在字符串中查找另一个字符串、字符串连接、字符串比较等。提示:建立数据类、字符串类数据、字符串信息的初始化字符串信息的输出获得字符串长度在字符串中查找一个字符在字符串中查找另外一个字符串比较字符串16.选课管理系统:要求:该系统主要处理学生的选课信息。学生信息主要包括:学号、姓名、电话、选课等内容。课程信息主要包括:课程编号、课程名称、学分、任课教师等内容。完成以下的操作:学生信息、课程信息的录入、修改、删除和查询。提示:建立学校类、学生类、课程类、选课类学校、学生、课程、选课信息的初始化学校、学生、课程、选课信息的添加、修改、删除、查找vii学校、学生、课程、选课信息的输出对选课信息按学号、课程编号排序17.教师评学管理系统:要求:该系统主要处理教师评学信息。班级信息主要包括:班级编号、班级名称、所在院系、评学成绩等内容。教师信息主要包括:编号、姓名、电话等内容。完成以下的操作:班级信息、教师信息、评学信息的录入、修改、删除和查询。提示:建立学校类、教师类、班级类、评学类学校、教师、班级、评学信息的初始化学校、教师、班级、评学信息的添加、修改、删除、查找学校、教师、班级、评学信息的输出对评学信息按评学成绩排序18.学生评教管理系统:要求:该系统主要处理学生评教的相关信息。学生信息主要包括:学号、姓名、性别、联系方式等内容。教师信息主要包括:教工编号、教师名称、任教课程、评教成绩等内容。完成以下的操作:学生信息、教师信息、评教信息的录入、修改、删除和查询。提示:建立学校类、教师类、学生类、评教类学校、教师、学生、评教信息的初始化学校、教师、学生、评教信息的添加、修改、删除、查找学校、教师、学生、评教信息的输出对评教信息按评学成绩排序19.毕业生选题管理系统:viii要求:该系统主要处理毕业生的选题信息。学生信息主要包括:学号、姓名、电话、选题等内容。课题信息主要包括:课题编号、课题名称、指导教师等内容。完成以下的操作:学生信息、课题信息的录入、修改、删除和查询。提示:建立学校类、学生类、课题类、选题类学校、学生、课题、选题信息的初始化学校、学生、课题、选题信息的添加、修改、删除、查找学校、学生、课题、选题信息的输出对选题信息按学号、课题编号排序20.课外兴趣小组管理:要求:该系统主要处理课外兴趣小组的相关信息。学生信息主要包括:学号、姓名、性别、兴趣爱好等内容。兴趣主要包括:兴趣编号、兴趣类型等内容。完成以下的操作:实现学生兴趣信息的添加、修改、删除和查询。提示:建立学生类、兴趣类、兴趣类型类学生、兴趣、兴趣类型信息的初始化学生、兴趣、兴趣类型信息的添加、修改、删除、查找学生兴趣信息的输出将学生兴趣信息保存为文件21.客户关系管理系统:要求:该系统主要处理客户的相关信息。客户信息主要包括:客户编号、客户名称、所在地区、联系方式等内容。地区信息主要包括:编号、名称等内容。ix完成以下的操作:客户信息、地区信息的录入、修改、删除和查询。提示:建立客户类、地区类客户、地区信息的初始化客户、地区信息的添加、修改、删除、查找客户、地区信息的