学生通讯录
- 格式:xls
- 大小:21.00 KB
- 文档页数:36
C语言数据结构学院:信心工程学院专业:技术计科学与技术题目:班级通讯录管理系统班级:姓名:时间:一:程序设计目标:为某个班级建立一个学生通讯录管理系统,功能包括通讯录链表的建立、学生通讯信息的查询、修改、插入与删除、以及整个通讯录表的输出。
二:问题描述:为某个班级建立一个学生通讯录管理系统,可以方便查询每一个学生的宿舍电话、手机号、及电子邮箱。
其功能包括通讯录链表的建立、学生通讯信息的查询、修改、插入与删除、以及整个通讯录表的输出。
三:需求分析:1.创建单链表;2.向链表中插入数据;3.删除链表中的数据;4.查找链表中的内容;5.销毁单链表,释放内存空间;6.打印内容。
四:概要设计:为了实现上述程序功能,需要定义一个简化的线性表抽象数据类型:ADT LinearList {数据对象:D={ai |ai∈IntegerSet,i=0,1,2,…,n,n≥0}结构关系:R={<ai ,ai+1>|ai,ai+1∈D}基本操作:Initlist (L)操作前提:L是一个未初始化的线性表操作结果:将L初始化为一个空的线性表CrtLinkList(L)操作前提:L是一个已初始化的空表操作结果:建立一个非空的线性表L Insertlist (L,pos,e)操作前提:线性表L已存在操作结果:将元素e插入到线性表L的pos位置deleteList (L,pos,e)操作前提:线性表L已存在操作结果:将线性表L中pos位置的元素删除,删除的元素值通过e返回LocLinkList(L,e)操作前提:线性表L已存在操作结果:在线性表L中查找元素e,若存在,返回元素在表中的序号位置;若不存在,返回-1五:详细设计:(给出算法的伪码描述和流程图)输出提示信息void menu(void){ /*主菜单函数*/system("cls");printf("***************************************************\n");printf(" ^_^学生通讯录管理系统^_^\n");printf("*************************************************** \n");printf(" 1=录入学生通讯录信息\n");printf(" 2=列出所有学生通讯录 \n"); printf(" 3=按姓名查询信息 \n"); printf(" 4=按学号查询信息 \n"); printf(" 5=删除学生信息 \n"); printf(" 6=排序 \n"); printf(" 0=退出 \n"); printf("*************************************************** ***\n");}存入学生信息struct student *shuru(void) /*输入函数*/{system("cls");struct student *s1,*s2;n=1;intnum;printf("请输入学生个数(提示:个数不能输入0!):");scanf("%d",&num);s1=s2=(struct student *)malloc(sizeof(struct student)); printf("*************************************************") ;printf("请输入学号:");scanf("%ld",&s1->num);printf("请输入学生姓名:");scanf("%s",s1->name);printf("请输入班级:");scanf("%d",&s1->banji);printf("请输入电话号码:");scanf("%s",s1->shoujihaoma);printf("请输入电子邮件:");scanf("%s",s1->Email);printf("请输入学生宿舍电话号:");scanf("%d",&s1->sushedianhua);stu=s1;while(n<num){s2->next=s1;s2=s1;s1=(struct student *)malloc(sizeof(struct student));printf("*************************************************") ;printf("请输入学号:");scanf("%ld",&s1->num);printf("请输入学生姓名:");scanf("%s",s1->name);printf("请输入班级:");scanf("%d",&s1->banji);printf("请输入电话号码:");scanf("%s",s1->shoujihaoma);printf("请输入电子邮件:");scanf("%s",s1->Email);printf("请输入学生宿舍号:");scanf("%d",&s1->sushedianhua);n=n+1;}printf("*************************************************");s2->next=s1;s2=s1;s2->next=NULL;return(stu);//system("cls");}输出单个学生信息voidshuchu(struct student *s){printf(" %-8ld",s->num);printf("%-8s",s->name);printf("%-8d",s->banji);printf("%-8s",s->shoujihaoma);printf("%-8s",s->Email);printf("%-8d *\n",s->sushedianhua)输出所有学生信息void findall() /*输出所有学生信息*/{system("cls");struct student *s;//if(n=2)//printf("\n现在有%d个学生信息,分别是:\n",n);//elseprintf("\n现在有%d个学生信息,分别是:\n",n);printf("*学号\t姓名\t班级\t电话\t电子邮件\t宿舍*\n"); s=stu;while(s!=NULL){shuchu(s);s=s->next;}printf("___________________________________________________ _____________________");printf("返回主菜单请按【7】");if(getche()=='7') menu();}按姓名查找void findname(){ /*按姓名查找函数*/system("cls");struct student *s;char name[20];printf("\n请输入你要查询的学生姓名:\n");scanf("%s",name);s=stu;while(strcmp(s->name,name)!=0){s=s->next;}if(s==NULL){printf("查无此学生姓名!");goto end;}else{printf("该学生的信息为:");printf("* 学号姓名班级电话电子邮件宿舍 *");shuchu(s);}end:;删除单个信息struct student *shanchu(struct student*stu) /*删除函数*/ {system("cls");longnum;char s;struct student *s1,*s2;if(stu==NULL){printf("没有任何学生信息");goto end;}printf("请输入你要删除的学生学号:");scanf("%ld",&num);s1=stu;printf("警告:你确定要删除这个学生的信息吗(Y/N)?");scanf("%s",&s);if((s=='Y')||(s=='y')){while((num!=s1->num)&&(s1->next!=NULL)){s2=s1;s1=s1->next;}if(num==s1->num){ printf("该学生的信息为:");printf("* 学号姓名班级电话电子邮件宿舍 *");shuchu(s1);if(s1==stu)stu=s1->next;elses2->next=s1->next;printf("该学生的信息已经删除了!剩下的学生通讯录信息如下:"); n=n-1;}}findall();return(stu);end:;printf("返回主菜单请按【9】");if(getche()=='9') menu();}六:使用说明:按照屏幕提示操作:班级、学号输入只能是整型1:按1录入学生通讯录信息2:按2输出所有学生通讯录信息3:按3用学生姓名查询4:按5用学生学号查询5:按5删除学生信息6:按6排序0:按0退出七:程序数据测试:创建学生信息插入学生信息删除学生信息课程设计总结第一次设计如此长的程序真的很吃力。
同学聚会通讯录格式
同学聚会通讯录可以采用以下格式:
1. 姓名,将每位同学的姓名列在第一行,可以按照姓氏的字母顺序进行排列。
2. 联系方式,在每位同学的姓名下方,列出其联系方式,包括手机号码、电子邮箱等。
3. 班级信息,在联系方式的下方,可以附上每位同学的班级信息,包括年级、班级号等。
4. 其他信息,根据需要,可以在通讯录中添加其他信息,比如工作单位、家庭地址等。
通讯录的格式可以使用表格或者列表形式,具体如下:
姓名 | 联系方式 | 班级信息。
---------------------------------------------。
张三|138****5678|高三(1)班。
李四|139****4321|高三(2)班。
王五|136****1987|高三(1)班。
...
在整理通讯录时,可以先收集同学们的联系方式,然后按照姓
名的顺序进行排列,最后补充班级信息和其他相关信息。
这样的通
讯录格式清晰易读,方便查找和联系同学。
需要注意的是,通讯录中涉及到个人隐私信息,应该妥善保管,避免泄露给未经授权的人员。
在使用通讯录时,应遵守相关法律法规,尊重他人隐私权。
学生通讯录管理系统 IMB standardization office【IMB 5AB- IMBK 08- IMB 2C】“学生通讯录管理系统”的设计与实现1、设计要求问题描述纸质的通讯录已经不能满足大家的要求,容易丢失、查找困难等问题是纸质通讯录所不能克服的缺点。
“学生通讯录管理系统”是为了帮助老师、同学,或者其他一些需要使用通讯录的人员进行管理和分析的一种应用程序。
需求分析(1)输入数据建立通讯录。
(2)查询通讯录中满足要求的信息。
(3)插入新的通讯录信息。
(4)删除不需要的通讯录信息。
(5)查看所有的通讯录信息。
2、概要设计为了实现需求分析中的功能,可以从三个方面着手设计。
主界面设计为了实现学生通讯录系统各功能的管理,设计一个含有多个菜单项的主控菜单子程序以链接系统的各项子功能,方便用户使用本系统。
本系统主控菜单运行界面如下图所示:*************************欢迎使用通讯录系统****************************** 1 通讯录的建立 ** 2 插入通讯记录 ** 3 查询通讯记录 ** 4 删除通讯记录 ** 5 显示通讯录信息 ** 0 退出管理系统 ***************************欢迎使用通讯录系统****************************请选择0-5:存储结构设计本系统主要采用链表结构类型来表示存储在“学生通讯录管理系统”中的信息。
其中,链表结点由四个分量构成:通讯录成员学号、通讯录成员姓名、通讯录成员电话号码、指向该结构体的指针。
此外,系统还设置了一个全局变量seat,表示通讯录中成员的序号。
系统功能设计本系统设置了五个子功能菜单,五个子功能的设计描述如下。
(1)建立通讯录系统。
可以一次输入多个成员通讯录的信息,建立通讯录。
该功能由creatIncreLink( )函数实现。
(2)插入通讯记录。
每次可以插入一个成员通讯录的信息。
学生通讯录管理系统设计(数据结构)一、总体设计1、系统开发环境本系统采用C++语言,运行在Windows平台上,数据库采用MySQL。
2、系统功能(1)登陆:系统登录,验证用户名/密码,权限认证等。
(2)新增:新增学生通讯录信息,包括姓名、联系电话、地址、备注等信息。
(3)修改:修改学生通讯录信息,可以修改学生姓名、联系电话、地址等信息。
(4)删除:删除学生通讯录信息,可以根据姓名、联系电话删除学生的通讯录信息。
(5)查询:可以根据姓名、联系电话查询学生的通讯录详细信息。
(6)权限管理:根据用户类别对不同用户进行不同级别的权限管理。
(7)数据管理:根据学生查询,统计学生的报表信息和查询结果,可以对学生的通讯录数据实行一定的数据管理。
3、数据结构用于存储、管理学生通讯录信息的数据结构,采用链表法。
首先将学生信息定义为一个结构体,包含学生的姓名、联系电话、联系地址等信息,此构造体可存储学生一种或者多种信息;然后建立一个学生链表来存储学生信息,每个结点中存放学生结构体,在链表末尾增加一个指向学生链表头结点的指针,即实现了学生通讯录的输出。
二、模块分解1、登录模块实现用户名/密码的验证,权限的认证,权限管理等功能。
2、新增模块用于实现新增学生信息,信息包括姓名、联系电话、联系地址等,并将学生信息存放到学生链表中。
4、删除模块用于实现删除学生信息,使用链表的查找、删除等来实现。
6、权限管理模块用于实施对不同用户类别的权限管理,实现对不同用户类别的权限管理,保证数据的安全。
7、数据管理模块用于实施对学生数据的安全,统计报表信息,数据标准化处理。
学生通讯录管理c语言课程设计一、课程目标知识目标:1. 理解并掌握C语言中结构体的定义和使用方法;2. 学会使用数组存储和管理结构体数据,实现对通讯录信息的增删查改功能;3. 掌握文件操作在C语言中的应用,实现对通讯录数据的持久化存储。
技能目标:1. 能够运用C语言编写简单的通讯录管理系统,实现基本的信息管理功能;2. 培养学生分析问题、设计程序结构、编写代码和调试程序的能力;3. 提高学生运用所学知识解决实际问题的能力,培养编程思维。
情感态度价值观目标:1. 培养学生对C语言编程的兴趣,激发学习积极性;2. 培养学生的团队协作意识,提高沟通与协作能力;3. 培养学生严谨、细致的学习态度,养成良好的编程习惯。
课程性质:本课程为C语言程序设计实践课程,结合实际应用场景,锻炼学生的编程能力和解决问题的能力。
学生特点:学生已具备基本的C语言语法知识,有一定的编程基础,但实践经验不足。
教学要求:结合课本知识,注重实践操作,引导学生通过实际项目开发,掌握C语言编程技巧,提高编程能力。
将课程目标分解为具体的学习成果,以便在教学设计和评估中达到预期效果。
二、教学内容1. 结构体的定义与应用- 结构体概念及其使用场景- 结构体成员的定义与访问- 结构体数组的创建与使用2. 通讯录管理系统功能设计- 功能需求分析- 系统模块划分- 数据存储结构设计3. C语言核心编程技术- 控制语句(循环、分支)- 函数的定义与调用- 指针的使用4. 文件操作与数据存储- 文件打开、关闭、读写操作- 结构体数据与文件的序列化与反序列化- 数据持久化存储的实现5. 系统测试与优化- 功能测试与性能测试- 代码优化与调试技巧- 用户体验改进教学内容安排与进度:第一周:结构体定义与应用,结构体数组的使用第二周:通讯录管理系统功能设计,模块划分第三周:C语言核心编程技术,实现通讯录基本功能第四周:文件操作与数据存储,系统测试与优化教材章节关联:《C语言程序设计》第四章:结构体与共同体《C语言程序设计》第六章:文件《C语言程序设计》附录:常见错误及其调试方法教学内容依据课程目标制定,注重科学性和系统性,结合教材章节,使学生能够循序渐进地掌握通讯录管理系统的设计与实现。
____年级班学生通联表____年级班班(队)委会名单班干部职责一、班长、副班长职责1.领导与组织全体同学积极参加学校各项活动。
2.加强班内思想领导,组织开展批评与自我批评,克服各种不良班风倾向。
3.督促同学自觉遵守《小学生守则》《小学生日常行为规范》和校规校纪,贯彻执行学校部署的各项工作。
4.领导各委员、课代表、小组长进行工作,并检查其工作执行情况。
5.负责发上、下课和集合口令,作好本班同学出勤统计工作。
6.经常向班主任汇报本班同学思想、学习、生活健康情况;积极向班主任和学校领导反映同学的意见和呼声。
7.召集并主持班会和班委会,领导贯彻班会决议;代表本班出席学校工作的各种会议。
8.班长在执行上述工作中,应以负责思想、学习、纪律为主,副班长以协助班长处理各项班级工作,如文体、卫生等为主,班长请假时由副班长代理班级工作。
二、学习委员职责1.领导与推动本班同学积极交流学习经验,改进学习方法,开展各种课外辅助活动,形成浓厚的学习气氛。
2.指导各课代表进行工作,加强与各小组长的联系,掌握本班同学学习情况。
3.课前做好教师用具和学生学习用品的准备。
4.学习委员在进行工作时应加强与班主任、各任课教师的联系,并接受老师的领导与指示。
三、卫生委员(劳动委员)职责1.组织好班级卫生的清扫工作,并作好经常性的督促、检查。
2.经常检查本班同学个人卫生和公共卫生执行情况,教育同学讲究公共卫生,养成良好的卫生习惯。
3.领借和保管卫生清洁工具及生活用品。
4.做好眼保健操的领操、组织、检查工作。
5.经常检查本班同学个人卫生和公共卫生执行情况,教育同学讲究公共卫生,养成良好的卫生习惯。
6.与总务处保持密切联系,并接受其领导。
四、宣传委员职责1.积极向同学宣传学校组织的各项活动,督促同学们参加,组织同学学习时事。
2.建好、管好、用好班级图书角;组织开展小型多样、丰富多采的班级文化活动,形成良好的育人氛围。
3.搞好班级文化阵地的建设,组织出好本班的黑板报、宣传橱窗。
学生通讯录课程设计一、课程目标知识目标:1. 学生能理解并掌握通讯录的基本概念,包括姓名、电话号码、地址等信息的记录方式。
2. 学生能够运用所学知识,独立设计并制作一份个人通讯录。
3. 学生了解通讯录在生活中的重要性和实际应用。
技能目标:1. 学生掌握使用文字处理软件或手工方式制作通讯录的技能。
2. 学生培养信息收集、整理和分类的能力,提高信息处理效率。
3. 学生学会在通讯录中合理运用字体、颜色等元素,提高审美观。
情感态度价值观目标:1. 学生培养关爱他人、珍惜友谊的情感,通过通讯录的编制,增强与同学、亲朋好友的联系。
2. 学生树立正确的信息保护意识,尊重他人隐私。
3. 学生认识到通讯录在生活和学习中的实用价值,激发对信息技术学科的兴趣。
课程性质:本课程为信息技术学科,结合实际生活场景,培养学生的实际操作能力和信息素养。
学生特点:六年级学生已具备一定的信息技术基础和实际操作能力,对新鲜事物充满好奇,喜欢动手实践。
教学要求:教师需结合学生特点,设计生动活泼、富有实践性的教学活动,引导学生积极参与,注重培养学生实际操作能力和创新思维。
在教学过程中,关注学生的情感态度价值观培养,使学生在掌握知识技能的同时,形成良好的道德素养。
通过分解课程目标,为后续教学设计和评估提供具体可衡量的学习成果。
二、教学内容1. 通讯录基础知识:- 通讯录的定义与作用- 通讯录的基本元素:姓名、电话、地址等2. 通讯录设计与制作:- 制作通讯录的常用工具:文字处理软件、手工制作等- 通讯录的设计原则:简洁、美观、易用- 通讯录的制作步骤:收集信息、整理分类、设计布局、输入输出3. 信息技术应用:- 信息的收集与整理方法- 通讯录的电子化处理:使用文字处理软件进行编辑、排版和保存4. 信息保护与道德素养:- 信息保护意识:不泄露他人隐私,保护个人信息安全- 道德素养:尊重他人,正确使用通讯录教学内容安排与进度:第一课时:通讯录基础知识学习,了解通讯录的定义与作用,熟悉通讯录的基本元素。