嵌入式Linux C程序设计课程设计学生成绩系统.doc
《嵌入式Linux C程序设计课程设计学生成绩系统.doc》由会员分享,可在线阅读,更多相关《嵌入式Linux C程序设计课程设计学生成绩系统.doc(24页珍藏版)》请在三一办公上搜索。
1、苏 州 市 职 业 大 学课程设计任务书 课程名称: 嵌入式Linux C程序设计 起讫时间: 2011-12-26至2011-12-30 院 系: 电子信息工程系 班级: 10电子信息技术(1) 指导教师: 系 主 任: 苏 州 市 职 业 大 学课程设计说明书 名称 嵌入式Linux C程序设计 2011年12月26日至2011年12月30日共1周院 系 电子信息工程系 班 级 10电子信息技术1 姓 名 系主任 教研室主任 崔志磊 指导教师 一、课程设计课题利用嵌入式LinuxC程序设计课程中所学到的编程知识和编程技巧,完成具有一定难度和工作量的程序设计题目,帮助掌握编程、调试的基本技能
2、。参考题目:课题推荐:如学生另选课题,须经指导教师同意。1、建立一个链表,每个结点包含:学号、姓名、3门考试成绩1) 按学号排序;2) 输入一个学生学号,输出其成绩。3) 输入一个学生的信息将它插入链表中(假定链表按学号有序)。4) 统计该链表中学生总成绩和平均成绩。 5) 找出成绩最高的学生序号和课程.6) 找出不及格课程的学生序号及其各门课的全部成绩.7) 求全部学生各门课程的平均分数,并输出.2、投骰子游戏:游戏者投两枚骰子,每个骰子有六面,这些面包含1,2,3,4,5,6个点。投两枚骰子之后,计算点数之和。如果第一次投时的和为7或11,则游戏者获胜。如果第一次投时的和为2,3或12,则
3、游戏者输,庄家赢。如果第一次投时的和为4,5,6,8,9,10,则这个和成为游戏者下次投骰子获胜的点数。要想赢,就要继续投骰子,直到投到点数。如果投七次之后还没有赚到点数,则游戏者输。3、教材P239 “动手练练” 34、用递归方法建立一颗二叉树,至少有10个节点,每个节点都存放整数值。要求所有的左孩子都小于根节点,而所有的右孩子都大于根节点。最后以中序序列输出此树。5、一个简单计算器 ,从屏幕输入算式,要求能够完成一般四则运算。提示:用链表或数组6、万年历,见运行效果7、校际运动会管理系统,见运行效果问题描述:1.初始化输入:N-参赛学校总数,M-男子竞赛项目数,W-女子竞赛项目数; 各项目
4、名次取法有如下几种: 取前5名:第1名得分 7,第2名得分 5,第3名得分3,第4名得分2,第5名得分 1; 取前3名:第1名得分 5,第2名得分 3,第3名得分2; 用户自定义:各名次权值由用户指定。2.由程序提醒用户填写比赛结果,输入各项目获奖运动员的信息。3.所有信息记录完毕后,用户可以查询各个学校的比赛成绩,生成团体总分报表,查看参赛学校信息和比赛项目信息等。提示:程序中可能用到以下定义信息,可以写在一个 .h 文件里: #ifndef _MAINFILE_H_#define _MAINFILE_H_/*/#include stdio.h#include stdlib.h#define
5、 MAXLENGTH 20 /*字符串最大长度*/#define MAX_N 20 /*最大参赛学校数目*/#define MAX_M 30 /*男子项目最大数目*/#define MAX_W 20 /*女子项目最大数目*/#define LEN sizeof(Position)#ifndef NULL#define NULL (void*)0#endif /*NULL*/typedef enum _Bool _TRUE=1,_FALSE=0Bool;typedef enum _SportType _MAN,_WOMAN SportType; /*sport type*/typedef enu
6、m _ScoreType _FIVE,_THREE,_CUSTOM ScoreType; /*score type*/*单个学校信息描述*/typedef struct _SchoolInfoint SchoolNum;/*学校编号*/char schoolNameMAXLENGTH;/*学校名称*/SchoolInfo,*pSchoolInfo;/*全部参赛学校描述*/typedef struct _SchoolSchoolInfo schInfoArrayMAX_N;int nTotalNmOfSch;/*参赛学校总数*/School,*pSchool;/*某一竞赛项目名次取法*/type
7、def struct _ScrInfoint total;/*取前多少名*/int* power;/*每一名次对应分值*/ScrInfo,*pScrInfo;/*单个竞赛项目信息描述*/typedef struct _SportInfoint sportNum;/*项目编号*/char sportNameMAXLENGTH;/*项目名称*/SportType sprtTyp;/*项目类型(男子、女子)*/ScoreType scrTyp;/*取名次类型(前5、前3、用户自定义)*/ScrInfo scrInfo;/*名次取法纪录项*/SportInfo,*pSportInfo;/*全部竞赛项目
8、信息描述*/typedef struct _SportSportInfo sportInfoArrayMAX_M+MAX_W;int nTotalNmOfMSprt;/*男子项目总数*/int nTotalNmOfFSprt;/*女子项目总数*/Sport,*pSport;/*比赛成绩记录*/typedef struct _Positionint sportNum;/*竞赛项目编号*/char nameMAXLENGTH;/*获得名次的运动员姓名*/int score;/*得分*/int schoolNum;/*所属学校编号*/struct _Position *ptrNext;Positio
9、n,*pPosition;二、课程设计要求1要求1)重视课程设计环节,用严谨、科学和踏实的工作态度对待课程设计的每一项任务;2)按照课程设计的题目要求,独立地完成各项任务,不允许相互抄袭;3)利用课程中所学到知识,能够作到:进行功能需求分析,设计合理的数据结构和系统框架,程序功能齐全,界面友好,能正确运行;4)按时到机房上机,不得旷课、迟到、早退及做与课程设计内容无关的事,并接受指导老师的检查;5)课题完成后必须按要求提交课程设计报告,课程设计报告要求及内容见本课程设计任务书第四点。2成绩评定1)课程设计成绩按优、良、中、及格和不及格五级评定;2)能独立完成并有一定创新功能且正确者,成绩评为优
10、;3)凡有无故旷课或多次迟到、早退者不能评定优、良、中;4)凡未按要求或不能按时完成者,以不及格评定;5)未交课程设计报告者,以不及格评定;6)与他人雷同或抄写复制他人程序,以不及格评定;7)经课程设计答辩未达到设计要求者,以不及格评定。三、课程设计工作量课程设计共24学时,安排见下表。内容学时明确课程设计的目的、要求和任务(由指导老师布置)1查阅资料,分析、讨论,完成选题1进行系统需求分析,设计合理的数据结构和系统框架4编写代码,进行程序调试(功能齐全,能正确运行)12进行模块联调,完成测试2完成课程设计说明书2课程设计验收2课程设计可以由12名同学合作完成一个课题。全体成员应共同完成选题,
11、确定设计思想,进行功能模块划分,然后由组长为各成员分配任务。整个设计期间,组长负责协调工作。各小组成员明确自己的任务后,应独立完成设计、编码和调试。课题设计完成后,小组成员要理解同组其他成员设计的源程序,熟练操作本组设计,各自完成课程设计说明书。四、课程设计说明书内容为培养学生严谨的工作态度,锻炼学生编写文档的能力,要求学生完成设计任务后,应按要求提交课程设计报告。设计报告除了填写封面内容和正文部分的规定内容外,还包含如下几个方面的内容:1、需求分析:简述本课程设计要完成的任务;2、概要设计:应用程序功能详细说明;3、详细设计:主要功能模块的详细描述;4、调试报告:调试过程中出现的问题及解决方
12、法;5、测试结果;6、用户使用说明;7、附录:程序源代码(附上有针对性的注释),参考资料。目 录一、需求分析101.1、课程设计任务101.2、课程设计的意义及目标10二、概要设计112.1、流程图112.2、编译.调试工具说明112.21、vi编译器的介绍112.22、makefile介绍12三、详细设计13四、编译和调试144.1、用make编译144.2 makefile文件14五、运行结果155.1、 按学号排序;155.2、 输入一个学生学号,输出其成绩。155.3、 输入一个学生的信息将它插入链表中(假定链表按学号有序)。165.4、 统计该链表中学生总成绩和平均成绩。165.5、
13、 找出成绩最高的学生序号和课程.175.6、 找出不及格课程的学生序号及其各门课的全部成绩175.7、 求全部学生各门课程的平均分数,并输出.17六、心得18七、参考文献19八、附录20一、需求分析1.1、课程设计任务建立一个链表,每个结点包含:学号、姓名、3门考试成绩1) 按学号排序2) 输入一个学生学号,输出其成绩。3) 输入一个学生的信息将它插入链表中(假定链表按学号有序)。4) 统计该链表中学生总成绩和平均成绩。 5) 找出成绩最高的学生序号和课程.6) 找出不及格课程的学生序号及其各门课的全部成绩.7) 求全部学生各门课程的平均分数,并输出.1.2、课程设计的意义及目标课程设计是培养
14、学生综合运用所学知识,发现,提出,分析和解决实际问题,锻炼实践能力的重要环节,是对学生实际工作能力的具体训练和考察过程。要求在规定的时间内,完成老师布置的任务,最重要的是让学生学到东西。目的使这次课程设计,使学生巩固了上课学到的知识,进一步学习、掌握嵌入式Linux的运行环境、开发平台。二、概要设计2.1、流程图 2.2、编译.调试工具说明2.2.1、vi编译器的介绍 vi 编辑器是Visual interface的简称,通常称之为vi。它在Linux上的地位就像Edit程序在DOS上一样。它可以执行输出、删除、查找、替换、块操作等众多文本操作,而且用户可以根据自己的需要对其进行定制,这是其他
15、编辑程序所没有的。 vi 编辑器并不是一个排版程序,它不像Word或WPS那样可以对字体、格式、段落等其他属性进行编排,它只是一个文本编辑程序。没有菜单,只有命令,且命令繁多。vi有3种基本工作模式:命令行模式、文本输入模式和末行模式2.2.2、makefile介绍(1)makefile文件介绍Makefile一个工程中的源文件不计数,其按类型、功能、模块分别放在若干个目录中,makefile定义了一系列的规则来指定,哪些文件需要先编译,哪些文件需要后编译,哪些文件需要重新编译,甚至于进行更复杂的功能操作,因为 makefile就像一个Shell脚本一样,其中也可以执行操作系统的命令。(2)m
- 配套讲稿:
如PPT文件的首页显示word图标,表示该PPT已包含配套word讲稿。双击word图标可打开word文档。
- 特殊限制:
部分文档作品中含有的国旗、国徽等图片,仅作为作品整体效果示例展示,禁止商用。设计者仅对作品中独创性部分享有著作权。
- 关 键 词:
- 嵌入式Linux C程序设计课程设计学生成绩系统 嵌入式 Linux 程序设计 课程设计 学生 成绩 系统
链接地址:https://www.31ppt.com/p-2385380.html