C++课程设计题目2013

合集下载

C语言程序设计课程设计报告---汉诺塔问题

C语言程序设计课程设计报告---汉诺塔问题

XXXX大学计算机科学与技术学院课程设计报告2012 — 2013学年第一学期课程名称C/C++高级语言程序设计课程设计设计题目小游戏和图形处理汉诺塔问题学生姓名XXX学号XXXXXXX专业班级XXXXXXXXXXX指导教师XX2012 年X 月XX 日目录一、课程设计问题描述 (1)1、课程设计题目 (1)2、设计任务要求 (1)二、总体设计 (1)1、设计思路 (1)2、汉诺塔求解流程图 (2)三、详细设计 (2)1、汉诺塔问题描述 (2)2、算法分析 (3)3、实现递归的条件 (4)4、用C语言实现 (4)四、程序运行结果测试与分析 (4)1、打开Microsoft Visual C++ 6.0操作平台输入以下的源代码 (4)2、编译源代码 (5)3、组建 (5)4、执行 (5)5、运行结果 (6)6、按任意键结束程序 (7)五、结论与心得 (7)六、参考文献 (8)七、附录:程序源代码 (8)一、课程设计问题描述1、课程设计题目汉诺塔问题2、设计任务要求输入盘子数(2个以上有效),移动速度,开始演示汉诺塔移动的步骤,要求:盘子A,B,C柱需要自己绘制,初始时盘子在A柱上通过B柱最终移动到C 柱上,显示出盘子在几个柱之间的移动过程。

二、总体设计1、设计思路对于一个类似的这样的问题,任何一个人都不可能直接写出移动盘子的每一个具体步骤。

可以利用这样的统筹管理的办法求解:我们假设把该任务交给一个僧人,为了方便叙述,将他编号为64。

僧人自然会这样想:假如有另外一个僧人能有办法将63个盘子从一个座移到另一个座,那么问题就解决了,此时僧人A B C64只需这样做:(1).命令僧人63将63个盘子从A座移到C座(2).自己将最底下的最大的一个盘子从A座移到C座(3).再命令僧人63将63个盘子从B座移到C座为了解决将63个盘子从A座移到B座的问题,僧人63又想:如果能再有一个僧人62能将62个盘子移动到另一座,我就能将63个盘子从A座移动到B座。

计科13-1,2 C语言课程设计题目

计科13-1,2 C语言课程设计题目

学年设计Ⅰ(C语言课程设计题目)(计科13_1、2)一、学生选题说明学生按照学号确定课程设计课题,自行名题的需指导教师确认,有能力的学生在完成确定的课题外可再选一题完成。

二、C语言课程设计设计要求与设计报告(包括报告的格式)设计要求:模块化程序设计锯齿型书写格式必须上机调试通过课程设计报告1、题目内容的描述2、应用程序功能的详细说明3、输入数据类型、格式和内容限制;4、主要模块的算法描述–以程序流程图的方式给出–简要的语言描述5、结束语6、程序的源代码清单7、报告的字数,不算源代码清单不少于4页提交报告的格式1、一级和二级标题用宋体四号字,正文宋体小四号字2、每个自然段开始空两格3、文中英文用新罗马(time new roman)四号4、源程序清单用新罗马(time new roman)五号提交报告封面1、按规定的模板封面输出,不准自定义封面格式(参考毕业设计报告格式)2、需提供源程序,标题为:课程设计源程序清单,并能正常运行。

注:对于程序中未能实现的部分需要加以说明。

对于程序中所参考的部分代码需要加以声明,并说明出处。

检查要求:1、每个人必须有可运行的程序2、每个学生必须交《C语言课程设计报告》(打印稿)打分标准:1、根据平时上机考勤;注重平时上机成绩,教师不定期检查学生进度,学生不得以自己有私人电脑为借口而不来上机2、根据程序运行结果3、根据《C语言课程设计报告》,学生能对自己的程序面对教师提问并能熟练地解释清楚以上三项缺一不可,否则不能到得相应学分三、C语言课程设计课题1、职工信息管理系统设计职工信息包括职工号、姓名、性别、年龄、学历、工资、住址、电话等(职工号不重复)。

试设计一职工信息管理系统,使之能提供以下功能:系统以菜单方式工作职工信息录入功能(职工信息用文件保存)--输入职工信息浏览功能--输出查询和排序功能:(至少一种查询方式) --算法按工资查询按学历查询等职工信息删除、修改功能2、图书信息管理系统设计图书信息包括:登录号、书名、作者名、分类号、出版单位、出版时间、价格等。

VisualBasic程序设计教程2013年版课程设计

VisualBasic程序设计教程2013年版课程设计

VisualBasic程序设计教程2013年版课程设计项目背景本项目旨在设计一个VisualBasic程序设计教程,能够帮助初学者入门VisualBasic编程,并在此基础上完成一个小型应用程序的开发。

项目目标1.学习VisualBasic编程基础知识,包括界面设计、控件使用、变量、数组等内容。

2.熟悉VisualBasic编程环境,包括开发工具的使用、调试技巧、代码管理等。

3.掌握VisualBasic编程实践经验,完成一个小型应用程序的开发。

项目实施步骤第一阶段——学习基础知识在学习阶段,我们将深入了解VisualBasic编程语言的基础知识,同时还会介绍相关的编程规范和实践技巧。

1. 界面设计在界面设计方面,我们将学习如何使用VisualBasic提供的控件库,创建各种类型的控件,并设计合适的布局。

在这个阶段,我们将介绍以下控件和布局技巧:•Label•TextBox•Button•CheckBox•RadioButton•PictureBox•ListBox•ComboBox•FlowLayoutPanel•TableLayoutPanel2. 控件使用在控件使用方面,我们将学习如何控制控件的属性和行为,以及如何处理用户的输入和操作。

在这个阶段,我们将介绍以下内容:•控件属性•事件处理•控件布局•控件样式•控件显示效果3. 变量和数据类型在变量和数据类型方面,我们将学习如何定义和使用变量,以及基本的数据类型和操作。

在这个阶段,我们将介绍以下内容:•变量和常量•数据类型•字符串操作•数组操作•运算符和逻辑操作符第二阶段——实践应用程序开发在完成基础学习后,我们将开始实践应用程序的开发,这个阶段我们将设计和开发一个小型的信息管理系统,帮助大家巩固和应用所学的知识。

1. 需求分析在需求分析阶段,我们将详细了解开发应用程序的需求,包括所需的功能和业务逻辑,以及用户的需求和使用场景。

在这个阶段,我们将完成以下任务:•确定应用程序的功能需求•定义业务逻辑和数据结构•分析用户需求和使用场景2. 设计原型在设计原型阶段,我们将根据需求分析的结果,设计应用程序的界面和交互流程,为后续的开发提供基础。

c语言课程设计2013

c语言课程设计2013

c语言课程设计计算机科学技术学院、软件学院2014年版系统设计综述题目学生信息管理系统模拟功能该系统能够模拟学生基本信息管理。

成绩评定整个系统开发分为三个部分,总分20分,如果有缺勤情况,每缺勤一次扣1分,上不封顶。

整体要求●该系统应具有合理的界面设计,并易于操作;●编码风格良好;●该系统用控制台程序即可实现;●编程语言为C语言,编程环境为VC++ 6.0第一部分存储结构设计任务设计学生结构体。

编程要求1.结构体设计“学生”结构体包含“学号”、“姓名”、“性别”、“英语成绩”、“C语言成绩”。

2.存储结构要求在实现各个模块的功能时,根据该模块的具体要求确定存储结构。

第二部分菜单(界面)设计任务编程实现系统的菜单编程要求“登陆”菜单(选做,有加分)1----------用户登陆0----------退出系统主菜单样式如下:1----------学生录入2----------学生浏览3----------学生查询4----------学生删除5----------成绩统计0----------退出系统第三部分功能和函数设计任务通过函数完成各个菜单模块的功能,要求合理设计主函数和各个子函数,合理设计各个函数之间的调用关系。

编程要求1.主函数:显示主菜单。

2.如果设计并编写登陆菜单,要求合理设计登陆界面,要求用户输入用户名和密码,如果全都正确则进入主菜单,如果有一项不对,系统再提供两次机会输入,三次都错退出系统。

(此部分有加分)3.编写函数完成“学生录入”功能,要求能将用户由键盘输入的若干学生信息追加到student.txt或student.dat中,存储结构可以使用数组,也可以使用链表。

4.编写函数完成“学生浏览”功能,要求能将student.txt或student.dat文件中的全部学生信息显示出来,存储结构可以使用数组,也可以使用链表。

5.编写函数完成“学生查询”功能,要求能按照学号或姓名对学生进行查询。

C语言课程设计参考题目

C语言课程设计参考题目

C语言课程设计参考题目C语言课程设计参考题目一、基本要求题目1、一司机出车祸后驾车逃离现场,第一位目击者记得车牌号前两位数字相同,且后两位数字也相同;第二位目击者是一位数学家,他看出车牌号是四位完全平方数。

试编程推算肇事车的车牌号。

2、有17个人围成一圈,从0号的人开始报数,凡报到3的倍数的人离开圈子,然后再数下去。

直到最后只剩下一个人为止。

问此人原来的位置是多少号。

3、编写一个程序,求3X4数组的转置矩阵。

要求在main函数里读数,在change 函数里把矩阵转置。

4、编写函数,求取两个整数m,n的最大公约数和最小公倍数。

5、用指向指针的方法对n个整数排序并输出。

要求将排序单独写成一个函数。

N 个整数在主函数中输入。

最后在主函数中输出。

6、有n个学生,每个学生的数据包括学号、姓名、年龄和两科成绩。

请编程用结构类型的数据处理方式实现如下目标:(1)在main 函数中输入原始数据;(2)在count 函数中输出各学生的总分和平均分;(3)输出总分最高的学生;(4)编写sort函数将各学生的数据按总分降序输出。

7、编写求子串函数substr(s,n1,n2),在串s中从n1位置开始取n2个字符的子串8、文件加密程序:将待加密文件以二进制打开,读入32个字节,分别与口令异或,在将4、5、6三个字分别与0xaaaa异或,即完成加密,执行第二次就解密9、编写字串str1 中找出所有小写字母转成大写字母,大写字母转成小写字母后,结果依次存入字符数组 str2 中,str1 不变仍为原字串的程序。

例如,字符串str1 为 "91A2BC. a1bc",调用函数 fun 后,字符数组str2将存入"91a2bc. A1BC",str1仍然是"91A2BC. a1bc"。

10、编写一个将某个范围在-32768~32767之间的整数转换为R进制(R=2,5,8,16)的通用程序。

C语言程序设计 课程设计2013

C语言程序设计 课程设计2013

《C语言程序设计》课程设计任务书下达时间:2012年12月16日完成班级:2012级电气工程专业【设计目的】本课程设计是在学生学完《C语言程序设计》课程后进行的一次全面的综合练习,是计算机学科重要的实践性环节之一。

目的旨在:(1)巩固和加深学生对C语言课程的基本知识的理解和掌握,掌握C语言编程和程序调试基本技能;(2)利用C语言进行简单软件设计的基本思路和方法;(3)培养学生的设计能力和分析解决问题的能力;(4)提高运用C语言解决实际问题的能力;(5)掌握科学地撰写程序设计说明文档和总结报告的能力。

【设计内容与任务】每个小组在教师提出的课程设计的题目中任意选择一题,也可以自选题目,但题目的分量要相当。

若两组选题相同,程序基本相同或撰写报告基本相同的情况下,经查证属于相互抄袭的,均以0分计入成绩。

设计题目如下:1、学生成绩管理系统实现功能:1)用输入/输出函数初步设计项目菜单;2)学生成绩的输入/输出;3)查找学生最高分和最低分;4)查找成绩不合格的学生名单;5)对学生成绩进行排序;6)学生记录的增加/删除/修改/显示/保存7)学生信息文件的打开备注:成绩记录的信息的数据项:班级,学号,姓名,课程名称,成绩2、学生信息管理系统实现功能:1)系统以菜单方式工作;2)学生信息的录入功能(以文件保存——输入);3)学生信息的浏览功能(输出);4)学生信息的查询/排序功能(算法(按学号还是姓名));5)学生信息的修改功能;备注:学生信息包括数据项有:学号,姓名,性别,出生年月,籍贯,通讯地址等3、商品信息管理系统实现功能:1)录入商品信息;2)查询商品信息;3)插入商品信息;4)删除商品信息;5)修改商品信息;6)统计商品数目;4、图书管理系统实现功能:1)显示主菜单信息2)新进图书基本信息的输入;3)图书基本信息的查询;4)对撤销图书信息的删除;5)添加图书信息;6)修改图书信息;5、通讯录管理系统实现功能:1)能建立、修改、增加和删除学生通讯录;2)能够按多种方式进行查询;要求界面友好,易于操作备注:通讯录应有的数据项:姓名,地址,电话,邮编,E-mail等6、设计一个简单的计算器实现功能:输入的操作数可以包括整数和浮点数。

C语言课程设计题目

C语言课程设计题目
设计哈希表实现电话号码查询系统。
基本要求:
1、设每个记录有下列数据项:电话号码、用户名、地址;
2、从键盘输入各记录,分别以电话号码和用户名为关键字建立哈希表;
3、采用再哈希法解决冲突;
4、查找并显示给定电话号码的记录;
5、查找并显示给定用户名的记录。
6、在哈希函数确定的前提下,尝试各种不同类型处理冲突的方法(至少两种),考察平均查找长度的变化。
2
五子棋小游戏
设计实现基于命令行的五子棋小游戏
1、实现五子棋的人人对局功能
2、实现五子棋的人机对局功能
3、实现两机对局
要求:具体的图形化展示整个游戏。1、2必须实现,第3不做要求,根据个人能力自己决定是否实现(不实现不影响成绩,如果能实现将得到加分)。
3
俄罗斯方块游戏
设计实现一个具有基本形状的俄罗斯方块游戏
(3)如何把某一个k进制的数化为10进制数
采用文件、Windows图形化输入界面等操作来实现。
6
用指针优化学生成绩排名
1.定义一个数组stu[10]存放10个学生的成绩,从键盘输入数据,要求用指针实现
2.将数组stu[10]的内容输出到屏幕上,要求用指针实现
3.将成绩数组按照从高到低进行排序,要求用指针实现
C语言课程设计
一、游戏类题目
序号
题目名称
题目要求
1
马踏棋盘
设计一个国际象棋的马踏棋盘的演示程序
要求:具体的图形化展示整个游戏。将马随机放在国际象棋的8×8棋盘的某个方格中,马按照走棋的规则进行移动。要求每个方格只进入一次,走遍棋盘的全部64个方格。编制非递归程序,求出马的行走路线,并按求出的行走路线,将1,2,…,64依次填入一个8×8的方阵,并输出。

程序设计语言(C)课程设计2013-2014

程序设计语言(C)课程设计2013-2014


性能需求:无
程序设计语言C课程设计
通讯录管理系统
二、总体设计
• 1、功能模块设计(写报告时,画出功能模块图,在此略)
– 为实现系统功能,本程序主要分为以下几个模块。 – 它们分别为:输入一个联系人信息、删除一个联系人信息、查询一 个联系人信息、插入一个联系人信息、列出所有的联系人信息、装 入文件、保存文件、退出等。这几个模块函数再通过主函数调用分 别得以实现。 – 主函数,首先提供了程序运行时的友好界面(菜单),列出了清单 ,提供用户做出选择,以便决定使用通讯录的哪种功能。然后,通 过执行多分支选择语句——switch语句,分别实现其它各个函数的调 用功能。
程序设计语言C课程设计
《程序设计语言C 》课程设计介绍
(二)设计的主要过程及内容 选题 课题分析 书面设计 编程测试 书写报告 考核
程序设计语言C课程设计
(二)设计的主要过程及内容
1 教师选题 题目要符合教学实际,不仅要使 学生把握C语言程序设计教学中的重 要知识点、了解程序模块化开发等 内容,而且还要与现实生活联系密 切,具有一定的实用性,这样的题 目对学生的吸引力较大。 此外,由于C语言程序设计是工 科很多专业必修的课程,选题时尽 可能体现本专业的特色,具有一定 的先进性和实用性,增强学生对专 业知识的领悟与应用能力。
程序设计语言C课程设计
通讯录管理系统
• 3 函数功能设计
– – – – – – – – – – – – – – 各个函数的功能分别如下: int enter(ADDRESS t[]); /*输入记录*/ void list(ADDRESS t[],int n); /*显示记录*/ void search(ADDRESS t[],int n); /*按姓名查找显示记录*/ int delete(ADDRESS t[],int n); /*删除记录*/ int add(ADDRESS t[],int n); /*插入记录*/ void save(ADDRESS t[],int n); /*记录保存为文件*/ int load(ADDRESS t[]); /*从文件中读记录*/ void display(ADDRESS t[]); /*按序号查找显示记录*/ void sort(ADDRESS t[],int n); /*按姓名排序*/ void qseek(ADDRESS t[],int n); /*快速查找记录*/ void copy(); /*文件复制*/ void print(ADDRESS temp); /*显示单条记录*/ int find(ADDRESS t[],int n,char *s) ; /*查找函数*/

C语言课程设计报告2013

C语言课程设计报告2013
2、编程,计算满足式子21+21+23+……+2n<1000的最大的n的值,并输出结果。用主函数调用子函数的方法实现,子函数的功能是用递归方法求2n。
3、简单家庭财务管理程序设计
设计结构体数组,结构中包含财务数据为:编号、财务类别(如:定期、理财等)、存入金额、存期(单位:年)、年利率、到期金额等。
设计各个函数,分别实现以下功能:
(1)、输入:输入数据
(2)、删除:输入某编号,若找到该编号,则删除对应的记录
(3)、显示:显示所有记录
设计菜单,通过选择菜单调用以上各函数。
工作计划与进度安排:
第18周:C语言基础知识练习与题目分析
第18周:算法设计
第19周:编写程序代码与程序调试
第19周:验收程序、答辩
指导教师:
201年月日
专业负责人:
201年月日
学院教学副院长:
201年月日
目录
一、题目要求1
二、算法设计1
三、编程实现2
四、结果分析4
五、参考文献5
一、题目要求
题目名称:
二维数组的按行求和及递归函数的编写
简单家庭财务管理程序的设计
内容:
1、编写一个函数,它的功能是:求一个4*5的二维数组每行元素的和,并依次放入一个一维数组中传回主函数。主函数中输入二维数组,并输出该数组,调用函数后输出每行的和。
printf("存入金额:");
scanf("%f",&(m[*n].starmoney));
printf("%存期(年):");
scanf("%d",&m[*n].time));

2013课程设计题目

2013课程设计题目

课程设计题目题目一:24点程序。

编写一个解24点游戏的程序。

规则是:随机给出4个1~10之间的正整数,通过简单的四则运算和括号组合,使得表达式的最终结果等于24,要求计算机列出满足要求的所有表达式。

题目二:五子棋游戏。

请用所学的C语言知识实现一个命令行下的五子棋游戏。

要求有棋盘界面,并实现人与人、人与计算机、计算机与人三种对弈模式。

题目三:图书管理信息系统。

设计一个具有数据插入、修改、删除、显示和查询功能的图书管理程序。

设计要求:(1)用户登录功能;(2)设计程序运行界面;(3)能用菜单选择各功能。

说明:(1)数据包括:书名、作者、书号、出版社、出版日期和单价;(2)可对图书信息修改;(3)可增加或删除图书信息;(4)可显示所有保存的图书信息;(5)可按书名、作者、书号或出版社进行图书信息的查询。

题目四:通用的管理信息系统要求编写一个通用的管理系统。

现在有很多管理系统,如“图书管理系统”、“医疗管理系统”、“学生成绩管理系统”等。

这些管理系统其基本功能大多相同,包含“添加”、“删除”、“修改”、“排序”等操作。

针对这一现状,要求通过配置文件来指定特定的管理系统,从而实现一个通用的管理系统,在不改变程序代码的前提下,实现一个配置文件所指定的管理系统功能。

题目五:飞机订票系统。

假定民航机场共有n个航班,每个航班有一航班号、确定的航线(起始站、终点站)、确定的飞行时间(星期几)和一定的成员订额。

设计一飞机订票系统,使之能提供下列服务:(1)航班信息录入功能(航班信息用文件保存) ,其中包括航班号、起始站、重点站、机票数等。

(2)航班信息浏览功能。

(3)按航班号排序。

(4)查询航线:按航班号查询。

(5)承办订票和退票业务。

题目六:机房管理系统。

设计机房管理系统,要求由菜单进行管理。

(1)上机前先检查是否有空机位,有则将其显示出,无则提示无空位。

(2)还有空位置时,运行进入,并记录下位置号以及序号,与上机时间。

c语言课设题目

c语言课设题目

c语言课设题目
基础题目:
1. 计算两个整数的和、差、积和商。

2. 判断一个数是奇数还是偶数。

3. 打印九九乘法表。

4. 编写一个简单的计算器程序,支持基本的加减乘除运算。

5. 实现一个简单的猜数字游戏。

6. 将一个字符串反转。

7. 编写一个程序,找出数组中的最大值和最小值。

8. 实现一个简单的冒泡排序算法。

中级题目:
9. 编写一个简单的文件读写程序,将数据写入文件并从文件中读取。

10. 实现一个简单的链表,并进行基本的插入、删除和遍历操作。

11. 设计一个学生信息管理系统,可以添加、删除、修改和查找学生信息。

12. 编写一个简单的命令行文件管理器,实现基本的文件操作(复制、移动、删除等)。

13. 使用结构体和指针实现一个简单的图书管理系统。

14. 实现一个简单的计算器,支持括号和基本的数学函数。

15. 编写一个简单的多线程程序,实现并发执行。

高级题目:
16. 使用Socket 编写一个简单的客户端-服务器通信程序。

17. 实现一个简单的操作系统进程调度模拟器。

18. 设计一个简单的编译器,将自定义的简单语言编译成汇编代码。

19. 使用OpenGL 编写一个简单的图形界面程序。

20. 实现一个简单的数据库管理系统,支持基本的增删改查操作。

21. 编写一个简单的Web 服务器,能够处理HTTP 请求。

22. 设计一个简单的人工智能算法,如搜索算法或神经网络。

2013级VC课程设计题目

2013级VC课程设计题目

2013级VC课程设计题目2013级计算机科学与技术专业《面向对象程序设计》课程设计题目1、吹泡泡游戏【问题描述】:当用户在窗口客户区中单击鼠标左键时,即可产生一个泡泡(图形)。

既要求产生不同的颜色的大小随机的泡泡,又要能使这些泡泡升起或降落,最后消失。

【基本要求】:1)在屏幕上画一个矩形框,开始为空白。

2)当鼠标的左键单击矩形框内的任何位置时,在该位置产生1个随机大小的红色泡泡(实心园),并开始下降。

3)当鼠标的右键单击矩形框内的任何位置时,在该位置产生1个随机大小的蓝红泡泡(实心园),并开始上升。

4)上升或下降到矩形框边界时,泡泡自行消失5)矩形框右边显示当前矩形框中红色/蓝色泡泡的正确数目6)矩形框内应可以同时容纳多个泡泡(100个以上)7)各泡泡在漂移过程中还会改变形状【实现提示】每个泡泡的大小用一个CRECT对象来存储,可以使用一个CRECT 数组来存储一组红色泡泡的大小信息。

再使用一个布尔数组来存储泡泡的状态信息。

这两个数组是相对应的。

当布尔值为FLASE时,表示该位置没有存储泡泡。

反之亦然。

产生一个新的泡泡时,依次搜索布尔数组,找出第一个FLASE的位置,存储新的泡泡。

每隔一定的时间,更新泡泡的大小和位置,使泡泡运动增大。

2、壁球游戏【问题描述】:屏幕上有一个球场,球场中央有一个球,以随机方向运动,遇到左、右、上方的墙壁可以反弹,如球落到地面则游戏结束。

在屏幕下方有一球拍(侧面形状为一很扁的矩形),球遇到球拍后也可以反弹。

球拍由左、右方向键控制,以防落到地面。

【基本要求】:1)球场、球拍和球显示比例合理、色彩美观大方;2)球的运动方向随机,可以任意角度斜向运动,反弹方向合理(入射角等于反射角);3)可以用左右方向键控制球拍左右移动;用“难度”菜单设置难度,速度越高,球拍越短,则难度越大;4)按下菜单选项“开始”,球开始运动,球接触地面游戏结束5)球每遇到墙壁或球拍反弹一次计10分,并显示当前得分【实现提示】1)直接用角度m_nballDirection来表示小球随机运动在360度的范围的任意的角度2)垂直向下的方向角度为0,逆时针旋转,可以计算出小球在水平和垂直两个方向运动的偏移量,并由三角函数的性质,直接和原来的位置坐标相加就可以得到新的位置坐标(无需考虑计算结果的符号)3)小球运动到边界时,分两种情况来考虑A 当从上、下(球拍)两边界反弹时,新的角度为180-m_nballDirection,从左、右两边界反弹时,新的角度为360-m_nballDirection。

(完整版)C语言程序设计2013期末试题(含答案)

(完整版)C语言程序设计2013期末试题(含答案)

厦门大学《C语言程序设计》课程试卷信息科学与技术学院系2013 年级专业主考教师:_______ 试卷类型:(A卷)已经反复修改调试过了,应该没问题了。

如果对答案有什么疑问可以直接私戳我 _______qq553915228 李添锐一、写出下列程序段的运行结果(1. ( 4 分)int i=1, j=2, k=4;prin tf("%f,", i-(float)(j/k));prin tf("%d, ", j<3<k);k+=(i+k)/10+0.5 ;prin tf("%d,",k);prin tf("%d", (j=1)?2:0);输出:1.000000,1,(此处有空格)2. (4 分)char a=0x12303F; prin tf("%d,",a); a二'a'-'B'+'E';prin tf("%c",--a);输出:63,c3. (4 分)int i = 3, j = 2;if (!i&&i--)i+=2;i++;prin tf("%d,", i);do{j+=i;i/=2;if(j>8) break;} while(i=3);prin tf("%d\n", j);输出:4,9(此处需要换行即\n)40分)4. ( 4 分)intp[7]={11,13,15,17,18,20,23},i=0,k=0;for (;p[i]%2;){switch(p[i]%5)4,2 {case 1: k+=p[i++]; break;case 3: k+=p[i];default: i++;}}prin tf("%d,%d",i,k);输出:4,245. ( 4 分)char s[]="1234", *p;for (p=s+3; p>s; p--){prin tf("%s,", p);}输出:4,34,234,6. ( 4 分)int f(){static int j=1; int k=1;return ((++j)+(++k));}int mai n()*(u.a+1)=3; u.a[2]=4; printf("%d,%d", u.s.a, u.s.b);return 0;}输出 0,3 9.( 4 分)int s[3][3]= {1,2,3,4,5,6,7,8,9}; int sum;sum = *(s[0]) + *(s[1]+1) + *(s[2]+2); printf("%d", sum); return 0; 输出:1510.(4 分)FILE *fp; int e; long len; char c;fp=fopen("pi.tmp","w"); fputs("3.1415926", fp);fclose(fp); fp=fopen("pi.tmp","r");fscanf(fp,"%d%c",&e,&c); len=ftell(fp); fseek(fp, -1L, SEEK_END); len = ftell(fp)-len;printf("%ld",len); 输出:6已知数据文件“ c:\data.dat ”以二进制方式存有 300个整数,函数 readDat( )把这 些数存入数组 a 中,函数 fun( )的功能是:依次从数组 a 中取出一个数,若该数 连续大于它之前的五个数且该数是偶数 (若之前不满五个数, 则不统计),统计满 足此条件的个数 cnt ,并把这些数按从大到小的顺序存入数组 b 中。

c课程设计简单的题目

c课程设计简单的题目

c 课程设计简单的题目一、教学目标本课程的教学目标是使学生掌握C语言的基本语法和编程思想,培养学生独立解决问题的能力,提高学生的逻辑思维和编程实践能力。

具体分为以下三个部分:1.知识目标:使学生了解C语言的基本语法、数据类型、运算符、控制结构、函数等基本概念,理解面向对象编程的基本思想。

2.技能目标:培养学生具备使用C语言进行程序设计的能力,能够独立完成简单的C语言程序。

3.情感态度价值观目标:培养学生对计算机科学的兴趣,增强学生的自信心和自主学习能力,培养团队合作精神。

二、教学内容本课程的教学内容主要包括C语言的基本语法、数据类型、运算符、控制结构、函数等基本概念,以及面向对象编程的基本思想。

具体安排如下:1.第一章:C语言概述,使学生了解C语言的基本特点和应用领域。

2.第二章:数据类型和运算符,介绍C语言的基本数据类型和运算符。

3.第三章:控制结构,讲解C语言的条件语句和循环语句。

4.第四章:函数,使学生掌握函数的定义、声明和调用。

5.第五章:数组和字符串,讲解数组和字符串的基本操作。

6.第六章:指针,使学生了解指针的概念和用法。

7.第七章:结构体和联合体,介绍结构体和联合体的定义和应用。

8.第八章:文件操作,讲解文件的基本操作。

9.第九章:面向对象编程,使学生了解面向对象编程的基本思想。

三、教学方法本课程采用多种教学方法,以激发学生的学习兴趣和主动性。

具体方法如下:1.讲授法:教师讲解基本概念和理论知识,使学生掌握基本知识。

2.案例分析法:通过分析实际案例,使学生理解编程思想。

3.实验法:安排上机实验,让学生动手实践,巩固所学知识。

4.讨论法:课堂讨论,培养学生的团队合作精神和沟通能力。

四、教学资源本课程的教学资源包括教材、参考书、多媒体资料和实验设备。

具体如下:1.教材:选用权威、实用的教材,为学生提供系统的学习资料。

2.参考书:推荐学生阅读相关参考书,丰富学生的知识体系。

3.多媒体资料:制作课件、教学视频等多媒体资料,提高教学质量。

2013C++课程设计

2013C++课程设计

C++程序设计---课程设计安排一、课程设计任务(任选一题)1.学生成绩管理系统2.图书管理系统3.通讯录管理系统4.银行装账户管理系统5.自选对于管理系统要求自己设定。

基本要求:(1)所有记录保存在一个数据文件中;(2)具备记录添加功能;(3)具备记录删除功能;(4)具备记录修改功能;(5)具备记录查询功能;(6)计算统计功能;(7)良好操作界面菜单。

二、要求1.分组设计,1-3人一组(自由组合),明确分工。

小组负责人一般进行总体设计(包括设计流程、模块函数原型接口设计以及重要模块的程序设计,以及模块组装调试),其他成员负责模块程序设计,并独立调试自己的程序;2.在网上、图书馆等查找相关资料,搜集、整理相关模块的程序源代码;3.一个小组完成完成一份课程设计报告。

内容包括:(1)封面扉页(见模板文件)(2)设计任务书题目:程序功能组成:成员组成与分工:进度安排:(3)目录(4)总体设计方案(包括流程图)(5)使用说明及运行实例(包括界面)(6)成员设计内容简介(7)项目源程序代码(注意注释的使用)(8)课程设计心得(9)指导教师评语(见模板文件)4.专用教室:教师指定5.报告格式:一级标题:3号黑体,二、三级标题小四黑体,正文小四宋体,行距23,程序代码5号宋体6.进程安排1.课程设计时间:第18周~19周2.辅导答疑:教师指定3.上机安排(见下表),每人安排12小时。

4.提交报告与答辩:第19周星期四~星期五三、考核(1.)据课程设计报告的内容、工作量、难度、合理性;(2)程序演示情况(3)汇报、回答问题情况综合上述三方面进行考核,评定成绩。

2013年6月1日。

2013操作系统课程设计题目

2013操作系统课程设计题目

课程设计题目:文件系统的实现一、实验目的用C或C++编写和调试一个简单的类linux的文件系统(非可视化界面)。

模拟文件管理的工作过程。

加深理解文件系统的内部功能和内部实现。

二、基本要求使用1M字节内存空间模拟一个磁盘分区,磁盘的存取单元是磁盘块,一个盘块的大小是256字节,1M字节共有4K个块。

2.1 磁盘布局磁盘的布局如图1所示。

其中:根目录root: 1块,根目录下允许创建16项(子目录或者文件)I-node 位图: 1块,共256*8=2Kbit,允许使用2k个i-node数据块位图: 2块,共512*8=4KbitI-node区: 32块,每个i-node占4字节数据块区:剩余所有块(4K-36)图1 磁盘布局2.2文件结构文件包括目录文件与一般文件。

目录文件由文件名与i-node编号构成。

目录项如图2所示图2 目录项每个目录项共占16个字节,其中:文件名: 10字节后缀:3字节标志位:1字节,如果是目录则为T,是文件为F。

i-node编号:2字节一般文件为ASCLL码文件。

2.3 i-node结构i-node的结构很简单如图3所示。

I-node图3 i-node结构盘块数count:2字节索引块编号:2字节,所以文件的大小限定在256/2*256=32k。

需实现的文件系统接口命令Format初始化磁盘,划定结构Mkfile 创建文件Mkdir 创建目录Cd 改变当前目录Delfile 删除文件Deldir 删除目录(注意是否可删除非空目录,自由设计)Dir 列文件目录Copy 复制文件到某一路经Open 打开并编辑文件Viewinodemap 显示当前inode位示图状况Viewblockmap 显示当前block位示图状况三、完成时间课设实验为期一周(第19周),大家自己安排编程地点。

验收时间为7月2日(周2)和7月4日(周4)。

地点在主楼E705。

四、验收项目同学须自主完成课设内容,并演示程序,回答老师的提问,同时交课程设计报告(格式请到学校网站查询)。

  1. 1、下载文档前请自行甄别文档内容的完整性,平台不提供额外的编辑、内容补充、找答案等附加服务。
  2. 2、"仅部分预览"的文档,不可在线预览部分如存在完整性等问题,可反馈申请退款(可完整预览的文档不适用该条件!)。
  3. 3、如文档侵犯您的权益,请联系客服反馈,我们会尽快为您处理(人工客服工作时间:9:00-18:30)。

一、C++课程设计目的和要求1.目的:1)复习、巩固C++语言的基础知识,进一步加深对C++语言的理解和掌握;2)课程设计为将课本上的理论知识和实际有机的结合起来,锻炼分析解决实际问题的能力。

提高适应实际,实践编程的能力;2.要求:1)对系统进行功能模块分析、控制模块分析正确,符合课题要求,实现相应功能;可以加以其他功能或修饰,使程序更加完善、合理;2)系统设计要实用,编程简练,可用,功能全面3)说明书、流程图要清楚4)记录设计情况(备查,也为编写设计说明书作好准备);5)要求采用模块化程序设计方法,要求上机调试通过和按设计报告格式。

6)设计上交内容:设计报告一人一份(按格式书写);源程序文件。

7)每题限选1~2人,但每个人做的功能不能完全一样2.编程环境:VC6.0、Microsoft Visual Studio 2005、Microsoft Visual Studio 2008、C++Builder等均可。

具体参考题目:1.记事本程序:中国人要自力更生,我们不用微软的记事本,我们要搞一个国产记事本,界面模仿微软的记事本,功能可要强于它。

字数统计、行列提示、背景/前景颜色设置等功能微软记事本可是没有的(赶超微软的时候到了~o~)。

设计难度:一般。

规模:小。

2.图形浏览器:方便地浏览文件夹中的图形,要求:图形不变形,支持多种图形格式,较高的容错性。

设计难度:一般。

规模:小。

3.基于C++的图形处理软件的设计:可对图像进行放大、缩小、裁剪;可设置阈值,对图像进行二值化处理;其他功能;难度:中。

规模:小。

4.动画播放演示程序:不利用现成的动画播放软件,自己设计一个动画演示程序,能将一系列图像(或图形)连续播放,使人产生动画的感觉。

5.个人资源管理软件:当你看到互联网上的有用信息后,你想保存它的内容或超链接吗?当你看到论坛里一则好文章想保存它吗?当你存的东西太多了的时候,你如何管理它们,以便方便地阅读它们?编个个人资源管理软件吧。

设计难度:一般。

规模:小。

6.画图软件:画图软件真够复杂的,能模仿一个出来吗?对图形感兴趣的同学不妨一试。

设计难度:设计难度:中。

规模:中。

7.小闹钟:正在你认真编程的时候,突然,电脑发出了悠扬的乐声,或在屏幕上提示你:太迟了,可以睡觉了。

请你编一个小闹钟。

设计难度:一般。

规模:小。

8.五子棋:在一台机上实现二人对走。

设计难度:一般。

规模:小。

备注:可不是人机对战哦。

备注:围棋好像也能编耶。

9.四则运算演示软件:小学生算术不会做了,他想让电脑帮忙。

现在全靠你了。

设计难度:一般到中。

规模:小到中。

备注:你能帮助到什么程度呢?10.大屏幕显示数字时钟11.设计一个模拟时钟转动的程序12.动画技术――卫星环绕地球13.串口调试助手14.GSM调试助手:AT指令集采用SIM900A的指令15.Windows计算器:模仿Windws自带的计算器16.可自拟其它题目!大家也可选一下的题目第一类题目应用类题目1:年历显示。

功能要求:(1)输入一个年份,输出是在屏幕上显示该年的日历。

假定输入的年份在1940-2040年之间。

(2)输入年月,输出该月的日历。

(3)输入年月日,输出距今天还有多少天,星期几,是否是公历节日。

题目2:小学生测验面向小学1~2年级学生,随机选择两个整数和加减法形成算式要求学生解答。

功能要求:(1)电脑随机出10道题,每题10分,程序结束时显示学生得分;(2)确保算式没有超出1~2年级的水平,只允许进行50以内的加减法,不允许两数之和或之差超出0~50的范围,负数更是不允许的;(3)每道题学生有三次机会输入答案,当学生输入错误答案时,提醒学生重新输入,如果三次机会结束则输出正确答案;(4)对于每道题,学生第一次输入正确答案得10分,第二次输入正确答案得7分,第三次输入正确答案得5分,否则不得分;(5)总成绩90以上显示“SMART”,80-90显示“GOOD”,70-80显示“OK”,60-70显示“PASS”,60以下“TRY AGAIN”。

题目3 运动会比赛计分系统要求:初始化输入:N-参赛学校总数,M-男子竞赛项目数,W-女子竞赛项目数各项目名次取法有如下几种:取前5名:第一名得分7分,第二名得分5,第三名得分3,第四名得分2,第五名得分1;取前3名:第一名得分5,第二名得分3,第三名得分2;功能要求:(1)系统以菜单方式工作(2)由程序提醒用户填写比赛结果,输入各项目获奖运动员信息。

(3)所有信息记录完毕后,用户可以查询各个学校的比赛成绩(4)查看参赛学校信息和比赛项目信息等。

题目4:学生学籍管理系统用数据文件存放学生的学籍,可对学生学籍进行注册,登录,修改,删除,查找,统计,学籍变化等操作。

功能要求:(1)系统以菜单方式工作。

(2)登记学生的学号,姓名,性别,年龄,籍贯,系别,专业,班级;修改已知学号的学生信息;(3)删除已知学号的学生信息;(4)查找已知学号的学生信息;(5)按学号,专业输出学生籍贯表。

(6)查询学生学籍变化,比如入学,转专业,退学,降级,休学,毕业。

题目5:排班系统学校实验楼有7名保安人员:钱、赵、孙、李、周、吴、陈。

由于工作需要进行轮休制度,一星期中每人休息一天。

预先让每一个人选择自己认为合适的休息日。

请编制程序,打印轮休的所有可能方案。

当然使每个人都满意,例如每人选择的休息日如下:钱:星期一、星期六赵:星期二、星期四孙:星期三、星期日李:星期五周:星期一、星期四、星期六吴:星期二、星期五陈:星期三、星期六、星期日运行结果:Solution: 1赵钱孙李周吴陈=============================================================星期四星期一星期三星期五星期六星期二星期日Solution: 2赵钱孙李周吴陈=============================================================星期四星期一星期日星期五星期六星期二星期三Solution: 3赵钱孙李周吴陈=============================================================星期四星期六星期三星期五星期一星期二星期日Solution: 4赵钱孙李周吴陈=============================================================星期四星期六星期日星期五星期一星期二星期三题目6:通讯录程序设计设计一个实用的小型通讯录程序,具有添加,查询和删除功能。

由姓名,籍贯,电话号码1,电话号码2,电子邮箱组成,姓名可以由字符和数字混合编码。

电话号码可由字符和数字组成。

实现功能:(1)系统以菜单方式工作(2)信息录入功能(3)信息浏览功能(4)信息查询功能(5)信息修改功能(6)系统退出功能题目7:学生选课系统假定有n门课程,每门课程有课程编号,课程名称,课程性质,学时,授课学时,实验或上机学时,学分,开课学期等信息,学生可按要求(如总学分不得少于15)自由选课。

试设计一个选修课程系统,使之能提供以下功能:(1)系统以菜单方式工作(2)课程信息和学生选课信息录入功能(课程信息用文件保存)(3)课程信息浏览功能(4)查询功能(5)按学分查询(6)某门课程学生选修情况(可选项)题目8:机房收费管理系统(1)输入功能:输入30名学生的学号、班级、姓名、上机起始时间。

(2)计算功能:计算每个下机学生的上机费用,每小时1元。

(上机费用=上机时间* 1.0/h ,不足一小时按一小时计算)(3)查询功能:按条件(班级、学号、姓名)显示学生的上机时间。

(4)机器使用情况的显示(显示方式不限但要一目了然)题目9:班级成绩管理系统对一个有N个学生的班级,每个学生有M门课程。

该系统实现对班级成绩的录入、显示、修改、排序、保存等操作的管理。

功能要求:(1)本系统采用一个结构体数组,每个数据的结构应当包括:学号、姓名、M门课程名称。

(2)本系统显示这样的菜单:请选择系统功能项:a、成绩录入b、成绩显示c、成绩保存d、成绩排序e、成绩修改(要求先输入密码)f、成绩统计1)显示每门课程成绩最高的学生的基本信息2)显示每门课程的平均成绩3)显示超过某门课程平均成绩的学生人数g、退出系统(3)执行一个具体的功能之后,程序将重新显示菜单。

(4)将学生成绩保存到文件中。

题目10:机房机位预定系统20台机器,编号1到20,从早八点到晚八点。

两小时一个时间段,每次可预定一个时间段。

功能要求:(1)系统以菜单方式工作(2)查询,根据输入时间,输出机位信息。

(3)机位预定,根据输入的时间查询是否有空机位,若有则预约,若无则提供最近的时间段,另:若用户在非空时间上机,则将用户信息列入等待列表。

(4)退出预定,根据输入的时间,机器号撤销该事件的预定!(5)查询是否有等待信息,若有则提供最优解决方案(等待时间尽量短),若无则显示提示信息。

题目11:班级档案管理系统对一个有N个学生的班级,通过该系统实现对该班级学生的基本信息进行录入、显示、修改、删除、保存等操作的管理。

功能要求:(1)本系统采用一个包含N个数据的结构体数组,每个数据的结构应当包括:学号、姓名、性别、年龄、备注。

(2)本系统显示这样的菜单:请选择系统功能项:a 学生基本信息录入b 学生基本信息显示c 学生基本信息保存d 学生基本信息删除e 学生基本信息修改(要求先输入密码)f 学生基本信息查询(1)按学号查询(2)按姓名查询(3)按性别查询(4)按年龄查询g. 退出系统(3)执行一个具体的功能之后,程序将重新显示菜单。

(4)将学生基本信息保存到文件中。

(5)进入系统之前要先输入密码。

题目12:职工工资管理系统功能设计要求1. 输入记录:将每一个职工的姓名、ID号以及基本工资、职务工资、岗位津贴、医疗保险、公积金的数据作为一个记录。

•该软件能建立一个新的数据文件或给已建立好的数据文件增加记录。

2. 显示记录:根据用户提供的记录或者根据职工姓名显示一个或几个职工的各项工资和平均工资。

3. 修改记录:可以对数据文件的任意记录的数据进行修改并在修改前后对记录内容进行显示。

4.查找记录:可以对数据文件的任意记录的数据进行查找并在查找前后对记录内容进行显示。

5. 删除记录:可删除数据文件中的任一记录。

6. 统计: (A)计算各项工资平均工资及总工资, (B)•统计符合指定条件(如职工工资前三项之和在3000元以上、3000~2000元、2000~1000元) 以内的工资职工人数及占总职工人数的百分比。

(C)按字符表格形式打印全部职工工资信息表及平均工资(•包括各项总的平均工资)。

相关文档
最新文档