




已阅读5页,还剩30页未读, 继续免费阅读
版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领
文档简介
. 应用技术学院 课 程 设 计 报 告课程名称 C语言课程设计 课题名称 班级成绩管理系统 专 业 电气工程及其自动化 班 级 0783 学 号 200713010331 姓 名 陈杰 指导教师 王颖 2008年3 月 20 日湖南工程学院应用技术学院课 程 设 计 任 务 书课程名称 C语言课程设计 课 题 班级成绩管理系统 专业班级 电气工程及其自动化0783班 学生姓名 陈杰 学 号 200713010331 指导老师 王颖 审 批 前 言 C语言程序设计课程设计是对学生的一种全面综合训练,它包括问题分析,总体结构设计,用户界面设计,程序设计基本技能和技巧,多人合作,以至一整套软件工作规范的训练和科学作风的培养。是与课堂听讲、自学和练习相辅相成的必不可少的一个教学环节。通常,课程设计的课题比平时的习题复杂得多,也更接近实际。课程设计着眼于与应用的结合点,使学生学会如何把书上学到的知识用于解决实际问题,培养软件工作所需要的动手能力;另一方面,能使书上的知识变“活”,使学生更好地深化理解和灵活掌握教学内容。为了达到上述目的,本课程设计安排了八个设计课题,训练重点在于基本的程序设计方法和分析问题的能力,而不强调面面俱到。学生可任选其中一题进行设计,设计完毕写出课程设计报告,用A4纸打印成册;并将课程设计报告与源程序存盘。学习委员将课程设计报告与磁盘收齐后交指导老师。一、目的全面熟悉的掌握C语言程序设计中的顺序、分支、循环三种结构及数组、函数和C语言基本图形编程等方法,把编程与实际结合起来,增强对不同问题运用和灵活选择的数据结构以及算法描述的本领,熟悉编制和调试程序的技巧,掌握分析结果的若干有效方法,进一步提高上机动手能力,培养使用计算机解决实际问题的能力,养成提供文档资料的习惯和规范的编程思想,为以后在专业课程中应用计算机系统解决计算、分析、实验和设计等学习环节打下结实的基础。二、基本情况课程类别:必修课课程学分:1学分课程学时:1周课程对象:电气工程0781、0782、0783、0784、0785、0786三、时间安排时间 任务2008-3-8下午3:40-5:40指导老师给学生布置课程设计的任务及要求2008-3-10到2008-3-15学生根据设计任务及要求,对系统进行需求分析、概要设计和详细设计,并在此基础上编写程序代码 学生提交系统程序清单初稿上机调试程序修改并完善程序并上机调试程序 2008-3-16接受指导老师的验收2008-3-16到2008-3-22书写程序设计报告提交课程设计报告四、调试过程规范化要求1)需要分析分析系统功能需求以及用户操作流程。2)概要设计在需求分析的基础上,确定系统总体框架(系统功能结构图)。3)详细设计定义数据储存结构,并设计实现系统功能的具体算法,画出各算法的工作流程图。4)代码设计根据所设计的算法,定义相应函数分别实现系统的各子功能模块,同时由主程序提供友好的用户界面,使用户可通过选择主菜单来调用课程设计中要求完成的各个功能模块,子程序执行完后还可以返回到主菜单,继续选择其他功能执行。源程序要求书写规范,结构清晰。重点函数的重点变量。重点功能部分均要求给出清晰的程序注释。5)程序调试程序编译、链接成功后,自己设计实现程序功能的一组或多组测试数据,并严格按照此测试数据进行测试,然后分析测试结果。如果程序不能正常进行或结果不正确,则需对程序进行单步调试,在调试过程中认真查找算法实现中存在的问题,并加以分析和改正。如果程序能够基本正确地运行,可考虑增加若干基本的容错功能;另外尽量对现有的算法给出改进方案,并比较不同算法之间的优缺点。目录前 言.3一、设计目的及任务.6二、设计思路.6三、需求分析.7四、概要设计.8五、详细设计.10六、调试分析.17七、总结.18八、评分.19九、参考资料.20十、附件.20 正 文一、设计目的与任务本课程设计是计算机科学与技术专业重要的实践性环节之一,是在学生学习完C语言程序设计课程后进行的一次全面的综合练习。本课程设计的目的和任务:(1)巩固和加深学生对C语言课程的基本知识的理解和掌握;(2)掌握C语言编程和程序调试的基本技能;(3)利用C语言进行简单软件设计的基本思路和方法;(4)提高运用C语言解决实际问题的能力。二、设计思路设计课题一:班级成绩管理系统一、问题描述:对一个有N个学生的班级,每个学生有M门课程。该系统实现对班级成绩的录入、显示、修改、排序、保存等操作的管理。二、功能要求:1、本系统采用一个结构体数组,每个数据的结构应当包括:学号、姓名、M门课程名称。2、本系统显示这样的菜单:请选择系统功能项:a、 成绩录入b、 成绩显示c、 成绩保存d、 成绩排序e、 成绩修改(要求先输入密码)f、 成绩统计(1) 显示每门课程成绩最高的学生的基本信息(2) 显示每门课程的平均成绩(3) 显示超过某门课程平均成绩的学生人数g、 退出系统3、执行一个具体的功能之后,程序将重新显示菜单。4、将学生成绩保存到文件中。三、算法提示:1、数据结构:结构体类型数组。2、数据库结构:下表构成该系统的基本数据库。 姓名学号课程名称1课程名称2charCharfloatfloat四、测试数据:学生人数N=10课程门数M=4课程名:数学、语文、英语、政治五、其它对该系统有兴趣的同学可以在实现上述基本功能后,完善系统的其它功能。三、需求分析: 学生成绩管理系统有13种功能。把这13个功能做成13个子函数。在主函当数中设计一个菜单对这13个子数进行管理。来实现对整个系统的操作。 根据课题的要求。每一个学生的包括姓名(char)、学号(char)、M门课程的成绩(float).再加上系统功能上的要求每一学生的信息还要总分和名次等。所以自然的想到要用结构体来定义每一个学生的信息结构。然后用链表把它们组成一个有序的整体。用对链表的操作来实现对所有学生信息的统一管理(成绩显示、成绩排序、成绩修改等)。最后为了以后按照处理后的顺序保存到文件中。四、概要设计:程序的模块组成: 菜单函数:int menu_select()主 函 数: int main() 新建成绩函数:STUDENT *init() 输入成绩函数 :STUDENT *create() 显示成绩函数: void print(STUDENT *head) 删除成绩函数: STUDENT *delete(STUDENT *head) 按查找函数: void lookup(STUDENT *head)保存函数: void save(STUDENT *head)按总分排序函数: STUDENT *sort(STUDENT *head) 计算总分和均分函数: void computer(STUDENT *h)修改函数: STUDENT *Modify(STUDENT *head,STUDENT *new) 按学号排序函数: STUDENT *index(STUDENT *h) 各个函数的主要功能: 菜单函数:显示系统主菜单。输入成绩函数: 随时输入数据。 显示成绩函数: 显示所有学生的信息。 查找函数: 方便学生查找自己的成绩。 修改成绩函数:添加、删除、插入学生成绩。 保存函数: 保存好学生成绩,以免丢失。统计函数:l 显示每门课程成绩最高的学生的基本信息。l 显示每门课程的平均成绩。l 显示超过某门课程平均成绩的学生人数。l 课题的功能模块的划分:开始菜单界面功能选择计算成绩总分和均分初始化函数输入成绩信息删除成绩信息显示成绩信息查找成绩信息按成绩排序保存到文件从文件读数据按 学 号 排 序插入学生成绩分类合计退出系统结束五、详细设计:整个系统除了主函数外,另外还有14个函数,实现八大功能:输入功能、显示功能、查找功能、排序功能、插入功能、保存功能、读取功能。各个函数的详细设计说明分别如下:主函数 main()利用无限次循环for(;)和swithch()实现各函数的调用,系统根据输入的数字选项来调用相应的函数。菜单选择函数 int menu_select()这是一个无参函数,主要实现“功能选择”的界面,在这个界面里有显示系统的九大功能,根据每个功能前面的序号进行选择。等执行完每一个函数功能后,返回菜单。初始化函数 STUDENT *init()这是一个无参函数,里面只有两个语句,它的作用是使链表初始化,使head的值为NULL和一个清屏语句。比如:没有这个函数的话,在你没有输入任何数据的情况下,去执行显示功能的时候会显示一些乱码!输入成绩函数 STUDENT *create()这是一个双边界面,用来执行学生成绩记录的输入,当学生为时停止输入,函数结束后,带回一个链表头的指针指向一下个学生的信息插在表头。N-S流程图如下:head=NULL 无条件循环指针p指向新开辟的单元指针p是否为空是否输入学号p-num输出p-num是否为内存是否溢出 输入姓名p-name停止for(i=0;isum=s;菜单 p-average=(float)s/3; p-order=0; p-next=head;head=p;显示成绩函数 void print(STUDENT *head)这是一个不返回值的有参函数,形参为“链表头的指针”,负责对全部学生成绩记录的输出,不足之处就是不能对学生成绩进行分页显示。算法:先将p结点的指针指向第一个结点,将p结点(即第一个结点)的数据输出。然后再将p结点的指针指向p指针的的指针(即下一结点),将p结点(即第一结点)的数据输出。重复执行此步聚直到p指针指向NULL为止。N-S流程图如下: p=head,使指向第一个结点 输出p所指向的结点p指向一下个结点当p指的不是表尾保存成绩函数 void save(STUDENT *head) 这是一个不返回值的有参函数,形参为“链表头的指针”,可以把学生记录保存在电脑上由自己任意命名的二进制文件。N-S流程图如下:输入要保存记录的文件地址outfile文件不能打开否是p=head;输出一个出错信当p不为空时息,并返回菜单fwrite(p,LEN,1,fp); (写入一条记录)p=pnext; (指针后移)fclose(fp); (关闭文件)查找成绩函数 void lookup(STUDENT *head)这是一个不返回值的有参函数,形参为“链表头的指针”,实现按学号对某个学生进行查找,并显示所查找到的记录。算法:采用线性查找法往下一个结点查找。输入所要查找的学生的学号s,设一个指针变量p,先指向第一个结点,当strcmp(p-name,s) & p != NULL时,使p后移一个结点,如果p!=NULL,输出p所指的结点。N-S流程图如下:输入要查找的学生的学号sp=head,使p指向第一结点当记录的学号不是要找的,或指针不为空时p=p-next p!=NULL如果指针不为空是否显示没有该输出p所指向的结点学生删除成绩函数 STUDENT *delete(STUDENT *h)这是一个有返回值的有参函数。形参为“链表头的指针”,在核对密码后。实现对所要删除学生按学号进行查找。找到后显示该学生的信息。按任意键进行删除。算法:主函数链表的头指针,用一个输出语句printf(Input your password:);提示用户输入密码。在输入过程中如果需要用到退格。putchar(8);putchar( ); putchar(8);来达到视觉和功能上的要求。如果密码错误,则两秒后自动返回主菜单。正确后输入要删除的学生学号,进行删除。N-S流程图如下: 传递头指针;输入密码;否 密码正确 是 输入要删除学生的学号 printf(Password 有该学生信息is mistake 否 是 Tow seconds to return!); printf( 显示该学生信息Password is 按任意键确认删除 mistake Tow seconds to printf(n have deleted No %s studentn,s); return!); printf(Dont forget saven);sleep(2);clrscr();修改成绩函数 STUDENT *Modify(STUDENT *head)这是一个有参函数,一个是“链表头的指针”修改之后,并返回链表的头指针。算法:首先向系统申请一块空间,用于存放输入的信息。程序会跟据用户输入的学号。采用线性查找法往下一个结点查找。设一个指针变量p,先指向第一个结点,当strcmp(p-name,s) & p != NULL时,使p后移一个结点,如果p!=NULL,输出p所指的结点。如果有该学生就修改。并出现提示信息*Modify success!*。如果没有该学生则出现“*Find out No.%s student*”提示。并2秒后返回主菜单。N-S流程图如下:q=head原来的链表是空表是否2秒后当记录的学号不是要找的,或指针不为空时返回主菜单info指向q位置 q向后移一个结点!strcmp(p-no,info-no)是 否printf(Dont forget saven) info-next=p-next; q-next=info;查找成绩函数 STUDENT *load()这是一个不返回值的有参函数,形参为“链表头的指针”,根据输入的文件地址进行读取。N-S流程图如下:定义两个指针变量p1,p2输入要打开的记录文件地址infile文件不能打开否是开辟一个新单元指针p1是否为空返回菜单否是 返回菜单读入记录fclose(fp); (关闭文件)按部分排序函数 STUDENT *sort(STUDENT *head)这是一个有参函数,形参为“链表头的指针”,按学生成绩的平均分高低进行排序,还可以显示名次。N-S流程图:temp=head-next,head-next=NULL 当temp!=NULL时t=temp;temp=temp-next;p1=head;p2=head;当t-averageaverage&p1!=NULL时p2=p1;p1=p1-next; p1=p2是否t-next=p1;t-next=p1;head=t;p2-next=t;p1=head;当p1!=NULL时i+;p1order=i;p1=p1next;输出“排序成功” 六、程序调试: 由于本课题中的许多知识点都没有学过都要靠自己到课外的资料中去查找。在用的时候难免出现这样那样的错误。如开始设计出来的菜单不是预想的那样,而是总个窗中出现混乱。解决的这个问题的办法是调整。最后还是老师帮我帮我们找到了问题的所在for 循环的次超过了链表中结点的数量。再就是自定义函数时由于课本的概念不清楚,多写了空格键,以至函数调用不出来。又如:在设计修改学生信息时的密密码时。当用户发现输入密码错误按了退格键后,因为“*”并没有消去。导致用户再次按退格键,又出现前面的情况。最终导致输入密码错误。所以用了两次退格键 :putchar(8); /*退格键*/ putchar( ); /*以空格代替*/ putchar(8); /*再次退格*/。在对链表操作时,要特别链表指针的移动(p=p-next)和链表尾的判断 (p= =NULL)。没有指针的移动,就很容易出现死循环。而在运行过程中不能控制。所以你就会认为是死机。如果没有链表尾的判断。就会在运行过程出现想不到的错误。如:在显示链表信息时,后面就会出现乱码。在程序测试中,详细设计中均有说明。一个系统的菜单和提示信息非常重要。如果没有这些用户根本不知道怎么用你设计的这个系统。在设计的调试过程中也无法顺利的完成调试工作。有了一个清晰简单的菜单和一些提示信息这后,调试过程完成的非常顺利。七、总结:通过这段时间的课程设计,我认识到C语言是一门比较难的课程。需要多花时间上机练习。这次的程序训练培养了我实际分析问课程设计是培养学生综合运用所学知识,发现,提出,分析和解决实际问题,锻炼实践能力的重要环节,是对学生实际工作能力的具体训练和考察过程.回顾起此次C语言课程设计,至今我仍感慨颇多,的确,从课题到定稿,从理论到实践,在整整一星期的日子里,可以说得是苦多于甜,但是可以学到很多很多的东西,同时不仅可以巩固了上课所学过的知识,而且学到了很多在书本上所没有学到过的知识。通过这次课程设计使我懂得了理论与实际相结合是很重要的,只有理论知识是远远不够的,只有把所学的理论知识与实践相结合起来,从而提高自己的实际动手能力和独立思考的能力。在设计的过程中遇到问题,可以说得是困难重重,这毕竟第一次做的,难免会遇到过各种各样的问题,同时在设计的过程中发现了自己的不足之处,弥补了上课所学的知识。这次C语言程序设计同时还使得我认为它是一个团队的工作,团队需要个人,个人也离不开团队,必须发扬团结协作的精神。某个人的离群都可能导致整项工作的失败.只有一个人知道原理是远远不够的,必须让每个人都知道,否则一个人的错误,就有可能导致整个工作失败.团结协作是我们实习成功的一项非常重要的保证。而这次实习也正好锻炼我们这一点,这也是非常宝贵的.我很清楚的知道团结协作的力量是伟大的,如果是我一个人孤军奋战的话,肯定不能在规定时间内完成这次课程设计的要求内容,因此我很怀念这两个星期的合作,想起我们一起查阅资料,一起讨论设计程序的思路,成功的时候一起分享喜悦.让我们懂得,科学的精神是一个大学生尤其是我们一个学工科的学生是不可缺少的. 也“粗略”的懂得了以前王颖老师说的奋战几天几夜的辛酸和不容易,人是在逆境中锻炼自身,在逆境中成材的.答辩的时候王老师告诉我们,大学里还有好多的,课程设计的时间和环节.我们这还是刚刚开始,以后汇编语言单片机一致到大四的毕业设计都包含有课程设计的环节.答辩,写报告都不可缺少。因此在以后的学习中我将会引以这次程序设计为鉴,学习好程序性语言。武装自己的头脑。丰富计算机知识!但我出总结出了一点点的经验如下:1、要对系统的功能和要求做出详细的分析,并合理分解任务。 2、把分解出来的子任务,做给一个相对独立的模块。3、在设计一个模块之前,要简单构想一下总界面的显视情况。4、针对构想出来的界面进行程序的编写。最后,感谢老师您对我的指导和从百忙中抽空看我的设计,谢谢!八、评分课程名称: 班级成绩管理 项 目评 价设计方案的合理性与创造性设计与调试结果设计说明书的质量答辩陈述与回答问题情况课程设计周表现情况综合成绩 教师签名: 日期: 九、参考资料:C语言程序案例分析 人民邮电出版社C语言程序设计(第2版) 北京邮电大学出版社C程序设计(第三版) 清华大学出版社C语言程序设计案例分析 人民邮电出版社C语言实例解析精粹 人民邮电出版社C语言课程设计精编案例 中国水利水电出版社十、附件:#include stdio.h /*I/O函数*/#include stdlib.h /*其它说明*/#include string.h /*字符串函数*/#include conio.h /*屏幕操作函数*/#include mem.h /*内存操作函数*/#include ctype.h /*字符操作函数*/#include alloc.h /*动态地址分配函数*/#include dos.h#define N 4 /*定义常数*/typedef struct z1 /*定义数据结构*/ char no12; char name20; int scoreN; float sum; float average; int order; struct z1 *next; STUDENT;/*以下是函数原型*/STUDENT *init(); /*初始化函数*/STUDENT *create(); /*创建链表*/STUDENT *delete(STUDENT *h); /*删除记录*/void print(STUDENT *h); /* 显示所有记录*/void lookup(STUDENT *h); /*查找*/void save(STUDENT *h); /*保存*/STUDENT *load(); /*读入记录*/void computer(STUDENT *h); /*计算总分和均分*/STUDENT *Modify(STUDENT *h); /*修改记录*/void append(); /*追加记录*/STUDENT *sort(STUDENT *h); /*按总分排序*/STUDENT *index(STUDENT *h); /*按学号排序*/int menu_select(); /*菜单函数*/*主函数开始*/main() int i; STUDENT *head; /*链表定义头指针*/ printf(nnnnnnnnn); printf( * * * * * * * * * n); printf( * * * * * * * * * * * n); printf( * * * * * * * * * * * * * n ); printf( * * * * * * * * * * * * * n); printf( * * * * * * * * * * * n); printf(n); printf(n); printf(n); sleep(2); head=init(); /*初始化链表*/ clrscr(); /*清屏*/ for(;) /*无限循环*/ switch(menu_select() /*调用主菜单函数,返回值整数作开关语句的条件*/ /*值不同,执行的函数不同,break 不能省略*/ case 0:head=init();break; /*执行初始化*/ case 1:head=create();break; /*创建链表*/ case 2:print(head);break; /*显示全部记录*/ case 3:head=delete(head);break; /*删除记录*/ case 4:lookup(head);break; /*按名字查找记录*/ case 5:save(head);break; /*保存文件*/ case 6:head=load(); break; /*读文件*/ case 7:computer(head);break; /*计算总分和均分*/ case 8:head=Modify(head); break; /*修改记录,一般会插在表尾*/ case 9:head=sort(head);break; /*按部分排序*/ case 10:append();break; /*追加记录*/ case 11:head=index(head);break; /*按学号排序*/ case 12: exit(0); /*如菜单返回值为14程序结束*/ /*菜单函数,返回值为整数*/menu_select() char *menu=*MENU*, /*定义菜单字符串数组*/ 00. init list, /*初始化*/ 01. Enter list, /*输入记录*/ 02. print list , /*显示单链表中所有记录*/ 03. Delete a record from list, /*从表中删除记录*/ 04. Search record on name, /*按照姓名查找记录*/ 05. Save the file, /*将单链表中记录保存到文件中*/ 06. Load the file, /*从文件中读入记录*/ 07. compute the score, /*计算所有学生的总分和均分*/ 08. Modify an information , /*修改某学号的信息*/ 09. sort to make new file, /*排序*/ 10. append record to file, /*追加记录到文件中*/ 11. index on nomber, /*按学号排序*/ 12. Quit; /*退出*/ char s3; /*以字符形式保存选择号*/ int c,i; /*定义整形变量*/ gotoxy(1,1); /*移动光标*/ textcolor(YELLOW); /*设置文本显示颜色为黄色*/ textbackground(BLUE); /*设置背景颜色为蓝色*/ gotoxy(10,2); /*移动光标*/ putch(0xc9); /*输出左上角边框*/ for(i=1;i44;i+) putch(0xcd); /*输出上边框水平线*/ putch(0xbb); /*输出右上角边框 */ for(i=3;i20;i+) gotoxy(10,i);putch(0xba); /*输出左垂直线*/ gotoxy(54,i);putch(0xba); /*输出右垂直线*/ gotoxy(10,20);putch(0xc8); /*输出左上角边框*/ for(i=1;i44;i+) putch(0xcd); /*输出下边框水平线*/ putch(0xbc); /*输出右下角边框*/ window(11,3,53,19); /* 制作显示菜单的窗口,大小根据菜单条数设计*/ clrscr(); /*清屏*/ for(i=0;i16;i+) /*输出主菜单数组*/ gotoxy(10,i+1); cprintf(%s,menui); textbackground(BLACK); /*设置背景颜色为黑色*/ window(1,1,80,25); /*恢复原窗口大小*/ gotoxy(10,21); /*移动光标*/ doprintf(n make by wenwei); printf(n Enter you choice(013):); /*在菜单窗口外显示提示信息*/ scanf(%s,s); /*输入选择项*/ c=atoi(s); /*将输入的字符串转化为整形数*/ while(c14); /*选择项不在014之间重输*/ return c; /*返回选择项,主程序根据该数调用相应的函数*/STUDENT *init() clrscr(); return NULL;/*创建链表*/STUDENT *create() int i; int s; STUDENT *h=NULL,*info; /* STUDENT指向结构体的指针*/ clrscr(); for(;) info=(STUDENT *)malloc(sizeof(STUDENT); /*申请空间*/ if(!info) /*如果指针info为空*/ printf(nout of memory); /*输出内存溢出*/ return NULL; /*返回空指针*/ inputs(enter no:,info-no,11); /*输入学号并校验*/ if(info-no0=) clrscr();break; /*如果学号首字符为则结束输入,清屏后返回*/ inputs(enter name:,info-name,15); /*输入姓名,并进行校验*/ printf(please input %d score n,N); /*提示开始输入成绩*/ s=0; /*计算每个学生的总分,初值为0*/ for(i=0;iscorei); /*输入成绩*/ if(info-scorei100|info-scoreiscorei100|info-scoreiscorei; /*累加各门课程成绩*/ info-sum=s; /*将总分保存*/ info-average=(float)s/N; /*求出平均值*/ info-order=0; /*未排序前此值为0*/ info-next=h; /*将头结点做为新输入结点的后继结点*/ h=info; /*新输入结点为新的头结点*/ clrscr(); return(h); /*返回头指针*/*输入字符串,并进行长度验证*/inputs(char *prompt, char *s, int count) char p255; do printf(prompt); /*显示提示信息*/ scanf(%s,p); /*输入字符串*/ if(strlen(p)count)printf(n too long! n); /*进行长度校验,超过count值重输入*/ while(strlen(p)count); strcpy(s,p); /*将输入的字符串拷贝到字符串s中*/*输出链表中结点信息*/void print(STUDENT *h) int i=0; /* 统计记录条数*/ STUDENT *p; /*移动指针*/ clrscr(); /*清屏*/ p=h; /*初值为头指针*/ printf(nnn*STUDENT*n); printf(|rec|nO | name | sc1| sc2| sc3| sc4| sum | ave |order|n); printf(|-|-|-|-|-|-|-|-|-|-|n); while(p!=NULL) /*只要p不是尾结点,就输出记录*/ i+; printf(|%3d|%-10s|%-15s|%4d|%4d|%4d|%4d| %6.2f | %6.2f | %3d |n, i, p-no,p-name,p-score0,p-score1,p-score2,p-score3,p-sum,p-average,p-order); p=p-next; printf(*end*n); getch(); /*输入任一键返回主菜单*/ clrscr(); /*清屏*/*删除记录*/STUDENT *delete(STUDENT *h) STUDENT *p,*q; /*p为查找到要删除的结点指针,q为其前驱指针*/ char s12; /*存放学号*/ char *pass=wenwei28; char a20,b=NULL; int i=0; clrscr(); printf(Input your password:); while(i0) a-i=NULL; putchar(8); /*退格键*/ putchar( ); /*以空格代替*/ putchar(8); else putchar(7); /*没有任何字符的退格,响铃警告*/ else if(b!=r) ai+=b; /*只要不是退格和回
温馨提示
- 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
- 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
- 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
- 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
- 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
- 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
- 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。
最新文档
- 济南市2025-2026学年九年级上学期语文期末模拟试卷
- 高速铁路运输
- 高速路机电基础知识培训课件
- 高速收费站文明服务课件
- 松材线虫病防治服务投标方案
- siyb考试题及答案
- 电网技术知识培训总结课件
- 电缆加工专业知识培训课件
- 电站防雷装置知识培训课件
- 电的基本知识培训总结课件
- 新版学校班主任工作手册模板
- 香港中文大学博士英文复试模板
- 国家公祭日成品课件
- 新项目方法能力验证报告(固定污染源废气氯化氢的测定硝酸银容量法)
- DL-T+2081-2020电力储能用超级电容器试验规程
- ISO9001设计变更管理程序
- 八年级下册英语补全对话及答案
- 青少年运动员运动损伤的预防和处理
- 大便失禁课件
- (正式版)QBT 8003-2024 化妆品用原料 水杨酸
- 高中数学竞赛平面几何中几个重要定理
评论
0/150
提交评论