课程设计教学大纲-C语言程序设计_第1页
课程设计教学大纲-C语言程序设计_第2页
课程设计教学大纲-C语言程序设计_第3页
课程设计教学大纲-C语言程序设计_第4页
课程设计教学大纲-C语言程序设计_第5页
已阅读5页,还剩4页未读 继续免费阅读

下载本文档

版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领

文档简介

高级语言程序设计课程设计教学大纲课程设计名称:高级语言程序设计 课程设计学分: 1课程设计时间:2014-6-30至2014-7-4 课程设计年级:13车辆工程课程设计学时或周数:1周 课程设计专业:车辆工程一、课程设计的目的、任务与要求C语言是一种编程灵活,特色鲜明的程序设计语言。C语言除了学习必须的基本知识:如概念,方法和语法规则之外,更重要的是进行实训,以提高学习者的动手和编程能力,这才是学习语言的最终目的,结合多年来的教学经验,根据学生的学习情况,为配合教学过程,使“项目教学法”能在本质上促使学生有更大进步,特编写了该高级语言程序设计任务书,以在实训过程中给学生提供帮助。达到如下目的:1在课程结束之前,让学生进一步了解C程序设计语言的编程功能;2让学生扎实掌握C程序设计语言的相关知识;3通过一些有实际意义的程序设计,使学生体会到学以致用,并能将程序设计的知识与专业知识有效地结合,更全面系统地了解行业知识。二、选题的原则及题目难度、深度、广度分析1. 选题原则:(1)题目要符合教学要求,使学生能够运用所学计算机技术的基本知识,进行基本技能方面的训练。(2)题目的主要内容应当是学生在计算机技术课程中学过的知识。如果有些知识需要深化或扩展应给予补充讲解,使学生能够理解和接受。 (3)题目不宜过大。课题指标应从学生实际出发,因人而异,使不同程度的学生经过努力能够完成任务,做有所获。 (4)题目内容应尽可能反映计算机技术应用的新水平,具有一定的实用价值。 2. 题目难度、深度、广度分析: (1)发明、创新性课题:这类课题要求学生充分挖掘自己的创造性思维潜力,自行拟出课题。 (2)给定7个基础课题和5个深化课题,学生可任意选择4个基础课题和1个深化课题,学生按照课题要求完成相应任务。三、课程设计内容(1) 基础部分(以下7题,任选四题60%,多做酌情加分) 分屏处理数据系统: 随机产生2000个(1-2000)区间的数,并分屏显示(每行显示10个数字,每个数字占位宽为4,每页显示10行),而且在每一屏的下方显示本屏中数据的最大值、最小值和平均值。提示:利用1000次循环产生随机数,并判断每行有10个数字时输出回车符,判断输出100个数字后,在分屏点上输出press any key to continue,通过getchar()函数让用户以按回车键的方式进入下一屏。产生随机数的函数包括:srand()和rand()。函数应用示例如下:/*随机产生一个0-100之间的整数*/#include void main()int rNum = 0,i = 0;srand(time(0);printf(%d ,rand()%100);其中,time(0)是获取当前计算机的系统时间作为种子,即让随机数随系统时间变化而变化。掷骰子游戏: 两人玩骰子,游戏规则如下:1) 两人轮流掷骰子,每次掷两个,每人最多掷10次。2) 将每人每次的分值累加计分3) 当两个骰子点数都为6时,计8分;当两个点数相等且不为两个6时,计7分;当两个点数不一样时,计其中点数较小的骰子的点数。4) 结束条件:当双方都掷10次或经过5次后一方累计分数为另一方的两倍。最后显示双方分数并判定优胜者。提示:利用10次循环产生四组随机数(随机数范围为1-6),并以两组为一方判断每对点数及相应的分数,当一方累计分数为另一方的两倍且此时循环了5次或10次时,输出比赛优胜方。产生随机数的函数包括:srand()和rand()。示例代码如分屏处理数据系统。射击游戏:在程序运行时屏幕上方第一行随机出现一个 符号,要求游戏者输入一个1-80之间的整数,当用户输入一个整数后,一个*立即从屏幕底端的该整数列向上移动,若移动到屏幕的顶端能撞上 符号,则游戏者获胜;若没有撞上,则要求再输入一个整数,共允许输入5次,如果一直没有撞上,则认为游戏者输。提示:1)输入 符号可以采用printf(%c,1); 2)显示*号向上移动:输出一些空行;输出*号;以循环的方式增加延时(for(i=0;i100000;i+););system(“cls”);清屏重新绘制*号。参考代码:#include void main()int rNum = 0,i = 0,j = 8;srand(time(0);rNum = rand()%79+1; /*随机生成1-80的数字*/while(j-0)for(i = 1; i = 80; i+)if(i = rNum)printf(%c,1); /*在指定某列显示一个笑脸*/elseprintf(%c, );getchar();system(cls);/*清屏*/车票问题:假设某线路的公共汽车共设置26个车站,准备了1元、2元6元的车票,收费标准为:6站以内票价为1元,每4站票价增加1元。现在随机生成一些乘客的上车站与下车站,显示每位乘客应付的票价和单程售出的总票价,并统计几元的车票卖得最多和在哪个车站下的人最多。排考场座位问题:假设考场有88的座位,每当一个考生进入考场就为他安排座位。主界面如下:请输入选项(1-4)1 设定考场座位2 取消考场座位3 显示某座位考生信息4 查找学生座位5 按q键退出系统1) 选择1,用户输入准考证号,随机产生该学生座位的行号和列号,要求一个考生只有一个座位,已有考生的位置上不能再安排新的考生;2) 取消某人的考场座位;3) 输入行号列号,输出该考生的准考证号;4) 输入某学生的准考证号,输出该学生的座位。提示:88的座位可有一个8*8的一维整型数组表示,学号可用一个整型变量表示。示例代码如下:#include #define ROWS8#define COLS8void main()int seatROWS*COLS = 0;int stuNum = 0; /*记录学生人数*/char cmd = 0;while(1)printf(ntt1.设定考场座位);printf(ntt2.取消考场座位);printf(ntt3.显示某座位考生信息);printf(ntt4.查找学生座位n);printf(ntt5.退出系统n);/*接收命令*/cmd = getchar();getchar();/*吸收到键盘*/if(cmd = 1)else if(cmd = 2)else if(cmd = 3)else if(cmd = 4)else if(cmd = 5)elseprintf(输入错误!n);猜数字游戏:游戏随机产生4个0-9的数字,请用户猜4个数字的值和位置顺序。用户输入4个数字后,游戏提示用户当前这4个数字猜对几个,以及几个数字位置正确(要求不能显示哪位是正确的),用户再猜,直到猜对这4个数字的值和位置顺序,此时提示用户游戏结束。要求在文件中记录用户每次所猜的数字及结果。金币:国王用金币奖励他忠诚的侍从。第一天侍从工作结束后,国王奖励了他一个金币;接着的两天侍从工作中(第二天,第三天)的每一天,国王奖励了他两个金币;接着的三天侍从工作中(第四天,第五天,第六天)的每一天,国王奖励了他三个金币;接着的四天侍从工作中(第七天,第八天,第九天,第十天)的每一天,国王奖励了他四个金币。这种奖励的模式将是固定不变的,即在N天侍从工作中的每一天,国王将奖励他N个金币;接着的N+1天的侍从工作中的每一天,国王将奖励他N+1个金币。要求:在给定的天数时,你的程序能够统计国王总共奖励了侍从多少金币。例如:假设侍从工作了11天,则总共获得的金币为:1+2*2+3*3+4*4+1*5=35(2) 深化部分 (任选一题40%,多做酌情加分)题目1:小型图书管理系统设计 功能:实现某班级的图书信息管理,图书的基本信息包括书号、书名、作者、单价、数量和简介(50字内)等。 基本要求: 1设计简单的菜单,能够进行系统功能选择。 2实现信息的录入功能。 3在已有信息的基础上添加新的记录。 4删除指定书号的记录。 5修改指定书号的记录 6实现信息的浏览功能 7按书号查询功能 8按单价排序功能 提示:图书的基本信息可用结构体表示,图书管理则用结构体数组表示。示例代码:#include typedef struct bookInfoint sn;char name256;char author256;int price;int num;BOOKINFO;void main()BOOKINFO books1000=0;int bookNum = 0;/*添加一个图书信息*/BOOKINFO newBook;newBook.sn = 1001;strcpy(newB,book1);strcpy(newBook.author,xiaoer);newBook.price = 10;newBook.num = 2;booksbookNum = newBook; /*将新书存入车库*/bookNum+;/*图书+1*/题目2:学生宿舍管理系统设计 功能:实现简单的学生宿舍基本信息管理,宿舍的基本信息包括楼号、房间号、面积、所容纳人数、已入住人数等 基本要求: 1设计简单的菜单,能够进行系统功能选择。 2实现信息的录入功能。 3在已有信息的基础上添加新的记录。 4删除指定房间号的记录。 5修改指定房间号的记录 6实现信息的浏览功能 7按房间号查询功能 8按已入住人数排序功能 题目3:职工工资管理系统设计 功能:实现简单的职工工资信息管理,职工工资的基本信息包括编号、姓名、基本工资、奖金、工资总额等 基本要求: 1设计简单的菜单,能够进行系统功能选择。 2实现信息的录入功能。 3在已有信息的基础上添加新的记录。 4删除指定编号的记录。 5修改指定编号的记录 6实现信息的浏览功能 7按编号查询功能 8按工资总额排序功能 题目4:职工人事管理系统设计 功能:实现简单的职工人事信息管理,基本信息包括职工编号、姓名、性别、年龄、身份证号和简历(50字以内) 基本要求: 1设计简单的菜单,能够进行系统功能选择。 2实现信息的录入功能。 3在已有信息的基础上添加新的记录。 4删除指定编号的记录。 5修改指定编号的记录 6实现信息的浏览功能 7按编号查询功能 8按身份证号排序功能 题目5:小型通讯录设计 功能:实现简单的通讯录信息管理,基本信息包括编号、姓名、电话、手机、邮编、地址和关系(如朋友、亲友、同事、同学等) 基本要求:1设计简单的菜单,能够进行系统功能选择。2实现信息的录入功能。 3在已有信息的基础上添加新的记录。 4删除指定编号的记录。 5修改指定编号的记录 6实现信息的浏览功能 7按编号查询功能 8按手机号排序功能题目6:学生自拟要求:具有插入、删除、查询、修改、排序等功能。四、课程设计时间进程表2014-6-30:一、布置任务,讲解设计课题的基本设计思路和基本要求。二、讲解课程设计报告本要求、需要的提交电子资料和课程设计最总成绩评定标准。三、提供本次课程设计关键技术的基础练习(可根据所选课题选择相应的题进行练习):2014-7-1:讲解设计深化部分的基本设计思路和基本要求,及其在成绩评定中的比例。2014-7-2:学生自主设计,老师辅导,并进行抽查。2014-7-3:再次讲解课程设计报告本要求,强调报告格式要求。需要的提交电子资料。学生自主设计,老师辅导,并进行抽查。2014-7-4:上午:学生自主设计,老师辅导,并进行抽查。下午:递交课程设计电子资料和设计报告。四、设计过程和报告格式要求(1)设计要求编写程序要求遵循如下基本要求:l 模块化程序设计l 锯齿型书写格式l 必须上机调试通过(2)课程设计报告格式l 设计目的l 总体设计(程序设计组成框图、流程图)l 详细设计(模块功能说明(如函数功能、入口及出口参数说明,函数调用关系描述等)l 调试与测

温馨提示

  • 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
  • 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
  • 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
  • 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
  • 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
  • 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
  • 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。

评论

0/150

提交评论