搜档网
当前位置:搜档网 › C语言学生信息管理系统

C语言学生信息管理系统

C语言学生信息管理系统
C语言学生信息管理系统

C语言课程设计

题目名称:学生信息管理系统

姓名 XXX

学号 XXXXXXXX

专业网络工程

班级一班

指导教师 XXX

编写日期 2011/6/6

1、序言........................................................

2、需求分析....................................................

2.1.具体目标...............................................

2.1.1..................................................

.......................................................

.......................................................

.......................................................

3、总体设计....................................................

3.1.算法分析...............................................

3.2.程序框图...............................................

4、详细设计....................................................

4.1.函数模块...............................................

主界面函数.............................................

输入函数...............................................

查询函数...............................................

修改信息函数...........................................

增加信息函数...........................................

4.1.6删除信息函数. ....................................

输出信息函数...........................................

4.1.8保存信息函数 .....................................

4、组员名单....................................................

5、结论和心得..................................................

6、致谢........................................................

1、序言

随着学校的规模不断过大,学生数量急剧增加,有关学生的各种信息量也成倍增加。面对庞大的信息量需要有学生信息管理系统来提高学生管理工作的效率。通过这样的系统可以做到信息的规范化管理、科学性统计和快速查询、修改、增加、删除等,从而减少管理方面的工作量。

2、需求分析

本系统主要需要解决的任务是实现学生信息关系的系统化、规范化和自动化,其主要目的是计算学生各种信息进行日常管理,如查询、修改、增加删除学生信息等。在实现程序功能的同时应该做到界面简单易懂,容易操作,方便使用的要求。并且程序需要有一定的纠错能力。

2.1.具体目标

本系统主要应用于学生学籍管理、信息查询等部分,具有不同的操作功能。具体功能如下:

2.1.1 有关学生信息的录入,学生信息包括输入学生的学号,姓名,年龄,性别,出生年月,地址,电话,E-mail等(学生信息用文件保存)。

2.1.2. 学生信息的浏览功能。

2.1.

3. 学生信息的查询功能,其中实现按学号和姓名二种方式查询。

2.1.4. 学生信息的修改功能,包括增加、删除等。

3、总体设计

3.1.算法分析

首先,考虑信息的录入,一个学生包括这么多的属性,应该考虑定义一个结构体。其次,我们应该考虑数据的存储形式,在这里我们用一个数组。从文件中录入我们首先要定义一个文件指针,打开该文件后通过一个循环来读文件,将所有信息读出来后关闭文件。

对于菜单的实现,首先用printf语句把程序的功能列出来,然后等待用户输入而执行不同的函数,执行完了一个功能后又回到菜单。

信息的浏览,我们只需要通过一个循环将结构体中所有元素输出就行了。

信息的查询,我们选择用switch结构来解决用学号和姓名二种方式来查询的要求。等输入学号或者姓名的时候,通过字符串比较函数,如果存在,那么输出学生信息,否则提示错误并要求重新输入。

信息的修改,输入要修改信息的学号。首先用字符串比较函数判断改学生信息是否存在,如果存在,同过switch语句来依次修改学生的各项信息。修改信息我们需要用字符串复制函数。

增加新学生信息,输入要增加的学号。首先用字符串比较函数判断,如果输入的学号已经存在,则提示重新输入,否则依次输入各项信息。

删除学生信息,通过比较找到要删除的学号,用后一个学生的信息直接赋值,后面的依次赋值给前一个学生的信息。

3.2.程序框图

4、详细设计

4.1.函数模块

4.1.1.主界面函数

void menu()

{ int num;

printf(" 简易学生通讯录系统\n\n");

printf(" -----------系统功能菜单----------\n"); printf(" *****************************\n");

printf(" * 1.读入学生信息 *\n");

printf(" * 2.查询学生信息 *\n");

printf(" * 3.修改学生信息 *\n");

printf(" * 4.增加学生信息 *\n");

printf(" * 5.按学号删除信息 *\n");

printf(" * 6.显示当前信息 *\n");

printf(" * 7.保存当前学生信息 *\n");

printf(" * 8.退出系统 *\n");

printf(" *****************************\n");

printf("请选择菜单编号:");

scanf("%d",&num);

switch(num)

{

case 1:input();break;

case 2:inquir();break;

case 3:modify();break;

case 4:increase();break;

case 5:del();break;

case 6:output();break;

case 7:save();break;

case 8:k=0;break;

default:printf("请在1-8之间选择\n");

}

}

说明:此函数的功能是输出主界面功能菜单,已供选择相应的模块进行操作。

其中定义一个变量num,通过输入num的值来进入相应的功能,switch提供了不同选择的入口。在结束相应功能的操作后又返回主界面,并且对错误的输入有一定的纠错能力。

4.1.2.输入函数

void input()

{

FILE *fp;

int i=0;

if ((fp=fopen("student.dat","r"))==NULL)

{ printf("Open file studentdent.dat error! Strike any key to exit!");

exit(0);

}

while(fscanf(fp,"%s %s%d%s %s %s %s %s",student[i].number,student[i].n ame,&student[i].age,

student[i].sex,student[i].time,student[i].add,student[i].tel,student[i ].email)==8)

{

i++;

}

fclose(fp);

n=i;

printf("录入完毕!\n");

}

说明:此函数的功能是从文件中录入信息。首先定义了一个文件指针fp,用他来打开文件student.dat(事先已经储存),通过while循环录入信息,最后关闭文件。显示录入信息成功!

4.1.3.查询函数

void inquir()

{int i,j,item,flag;

char s1[LEN];

printf("------------------\n");

printf("1.按学号查询\n");

printf("2.按姓名查询\n");

printf("3.退出本菜单\n");

printf("------------------\n");

while(1)

{ printf("请选择子菜单编号:");

scanf("%d",&item);

flag=0;

switch(item)

{

case 1:

printf("请输入要查询的学生的学号:\n");

scanf("%s",s1);

for(i=0;i

if(strcmp(student[i].number,s1)==0)

{ flag=1;

printf("该学生学号,姓名,年龄,性别,出生年月,地址,电话,E-email 分别为:\n");

printf("%s %s %d %s %s %s %s %s\n",student[i].number,student[i] .name,student[i].age,

student[i].sex,student[i].time,student[i].add,student[i].tel,student[i ].email);

}

if(flag==0)

printf("该学号不存在!\n");

break;

case 2:

printf("请输入要查询的学生的姓名:\n");

scanf("%s",s1);

for(i=0;i

if(strcmp(student[i].name,s1)==0)

{ flag=1;

printf("该学生学号,姓名,年龄,性别,出生年月,地址,

电话,E-email 分别为:\n");

printf("%s %s %d %s %s %s %s %s\n",student[i].number,student[i] .name,student[i].age,

student[i].sex,student[i].time,student[i].add,student[i].tel,student[i ].email);

}

if(flag==0)

printf("该姓名不存在!\n");

break;

case 3:return;

default:printf("请在1-3之间选择\n");

}

}

说明:首先定义一个变量,输入值通过switch来选择相应模块。用一个for循环和字符串比较函数来不断的把输入的数据和系统储存的信息比较,如果相同,则输出信息。否则提示信息不存在!

4.1.4.修改信息函数

void modify()

{

int i,j,item,num;

char sex1[3],s1[LEN],s2[LEN];

printf("请输入要要修改的学生的学号:\n"); scanf("%s",s1);

for(i=0;i

if(strcmp(student[i].number,s1)==0)

num=i;

printf("------------------\n");

printf("1.修改姓名\n");

printf("2.修改年龄\n");

printf("3.修改性别\n");

printf("4.修改出生年月\n");

printf("5.修改地址\n");

printf("6.修改电话号码\n");

printf("7.修改E-email地址\n");

printf("8.退出本菜单\n");

printf("------------------\n");

while(1)

{ printf("请选择子菜单编号:");

scanf("%d",&item);

switch(item)

{

case 1:

printf("请输入新的姓名:\n");

scanf("%s",s2);

strcpy(student[num].name,s2); break; case 2:

printf("请输入新的年龄:\n");

scanf("%d",&student[num].age);break;

case 3:

printf("请输入新的性别:\n");

scanf("%s",sex1);

strcpy(student[num].sex,sex1); break; case 4:

printf("请输入新的出生年月:\n");

scanf("%s",s2);

strcpy(student[num].time,s2); break; case 5:

printf("请输入新的地址:\n");

scanf("%s",s2);

strcpy(student[num].add,s2); break; case 6:

printf("请输入新的电话号码:\n");

scanf("%s",s2);

strcpy(student[num].tel,s2); break;

case 7:

printf("请输入新的E-email地址:\n");

scanf("%s",s2);

strcpy(student[num].email,s2); break;

case 8:return;

default:printf("请在1-8之间选择\n");

}

}

}

说明:首先输入要修改信息的学号,同样通过字符串比较函数来判断学号是否存在。如果存在则通过switch语句来选择需要修改的信息,修改通过字符串复制函数。修改结束后可以选择退出该模块,进入主界面。

4.1.

5.增加信息函数

void increase()

{ int i=n,j,flag;

printf("请输入待增加的学生数:\n");

scanf("%d",&m);

do

{ flag=1;

while(flag)

{ flag=0;

printf("请输入第 %d 个学生的学号:\n",i+1);

scanf("%s",student[i].number);

for(j=0;j

if(strcmp(student[i].number,student[j].number)==0)

{ printf("已有该学号,请检查后重新录入!\n");

flag=1;

break;

}

}

printf("请输入第 %d 个学生的姓名:\n",i+1);

scanf("%s",student[i].name);

printf("请输入第 %d 个学生的年龄:\n",i+1);

scanf("%d",&student[i].age);

printf("请输入第 %d 个学生的性别:\n",i+1);

scanf("%s",student[i].sex);

printf("请输入第 %d 个学生的出生年月:(格式:年.月)\n",i+1); scanf("%s",student[i].time);

printf("请输入第 %d 个学生的地址:\n",i+1);

scanf("%s",student[i].add);

printf("请输入第 %d 个学生的电话:\n",i+1);

scanf("%s",student[i].tel);

printf("请输入第 %d 个学生的E-email:\n",i+1);

scanf("%s",student[i].email);

if(flag==0)

{

i++;

}

}while(i

n+=m;

printf("录入完毕!\n\n");

}

说明:首先判断学号是否存在,如果存在,则提示学号已经存在。否则通过循环依次输入学生的各种信息,输入结束后返回主界面。

4.1.6删除信息函数.

void del()

{ int i,j,flag=0;

char s1[LEN+1];

printf("请输入要删除学生的学号:\n");

scanf("%s",s1);

for(i=0;i

if(strcmp(student[i].number,s1)==0)

{ flag=1;

for(j=i;j

student[j]=student[j+1];

}

if(flag==0)

printf("该学号不存在!\n");

if(flag==1)

{

n--;

printf("删除成功,显示结果请选择菜单6\n");

}

}

说明:该函数的目的是为了删除学生信息,我们定义了四个变量,其中数组s1用来输入需要删除的学生学号。i为for的循环变量,用来遍历全部学生信息,通过strcmp函数来判断该学号是否存在。如果存在,将定义的变量flag赋值为1,同时将i后面的每一个学生信息都赋给前一个学生的信息,达到删除的效果。如果学号不存在,那么flag为0,这时系统则提示学号不存在。函数调用完后返回主界面,可以继续选用其他模块的功能。

4.1.7.输出信息函数

void output()

{ int i;

printf("所有学生的信息为:\n");

for(i=0;i

{

printf("%s %s %d %s %s %s %s %s\n",student[i].number,student[i] .name,student[i].age,

student[i].sex,student[i].time,student[i].add,student[i].tel,student[i ].email);

}

}

说明:此函数是为了输出所有的学生信息,要实现比较简单,只需直接通过一个循环将结构体中的元素遍历输出即可。输出后返回主界面。

4.1.8保存信息函数

void save()

{ int i,j,k,flag=0;

FILE *fp;

fp=fopen("student.dat","w");

for(i=0;i

{ fprintf(fp,"%s %s %d %s %s %s %s %s\n",student[i].number,student[ i].name,student[i].age,

student[i].sex,student[i].time,student[i].add,student[i].tel,student[i].emai l);

}

fclose(fp);

}

说明:定义该函数是为了保存信息至文件,首先必须定义一个文件指针,用指针打开函数打开一个已经存储好的文件,通过一个循环将n个学生的信息存进文件。最后关闭文件,以保证信息不会丢失。函数调用完毕后返回主界面,从而可以继续操作程序。

4、组员名单

XXX

XXX

XXX

XXX

XXX

5、结论和心得

XXX:在这次的C程序课程设计中我负责三个模块,分别是:删除学生信息,输出学生信息和将学生信息存入文件。我负责的是相对比较简单的模块,实现的时候不是很吃力。但还是存在很多的小问题,列如忘记分号啊、某些表达式位置不正确导致的逻辑错误等等。在这次设计中我体会到了写程序一定得细心,因为几乎全对还是等于错误,细节决定成败。另外也加强了组员中的友谊,有很多问题都是大家一起讨论解决的。我们讨论分配了各自负责的模块,在接口方面我们开始有一些分歧,但最后都达成了一致。我们每个人都在努力,当最后我们用文件包含语句将所有的模块包含起来运行成功的那一刻,我觉得我的付出得到了收获。当然这收获不仅仅是成功的完成了作业,更多是过程中的那种不懈努力的精神,组员间相互的帮助鼓舞,让我收益良多。当然也要感谢老师在设计中对我的帮助,给我的启发,谢谢你们!

XXX:通过此次C语言程序设计实践,我实在是获益不浅!C语言是这个学期才开始学习的,有很多地方都没弄懂,所以一开始做题,也是有点模糊,在指导老师的指导下,我们慢慢的进入状态,我们做的是一个学生信息管理系统,内容包括很多。运用的函数也是非常的复杂,我们一组有五个人,我们分工合作,我们每个人各负责一块功能区域,经过几星期的努力,我们完成了大半个程序,但是总是有很多错误出现,有好多是些小问题,这都是我们粗心大意造成的,所以设计程序一定要仔细,不容一点的马虎。同时,也让我们知道了,合作的力量,如果是孤军奋战的话,我们也不能在规定时间内完成,当然,也多亏老师的指导。

程序设计过程有如解决一实际问题,从解决实际问题的角度,我们可以这样来看:

首先要了解这个问题的基本要求,即输入、输出、完成从输入到输出的要求是什么;其次,从问题的要害入手,从前到后的解决问题的每个方面,即从输入开始入手,着重考虑如何从输入导出输出,在这个过程中,可确定所需的变量、数组、函数,然后确定处理过程--算法。可得最后结论。在程序设计中,可认为也是一个社会,每个一同的社会成员都有不同的想法。程序设计学得的好坏要看你在社会中解决问题的能力的高低,所以不同的人编程的结果是不同的。在这个社会中,经验与想法最为重要。

这次设计,让我掌握了C语言,而且还得到了用C语言解决实际问题的宝贵经验! XXX:这学期我们学的C语言,以前就听过这个名字,打开书一看简直一窍不通,学好这门科简直就是一个挑战,课前课后都要把书啃一遍,要不然上课就跟不上,终于学期快结束了,我们有一个课程设计,完成一个复杂的程序,我们的题目是做"简易学生通讯录系统",难度不小啊。通过组员的分工合作。终于还是完成了设计。

首先感谢郭美老师给予的帮助。通过这次课程设计使我们懂得了理论与实际相结合是很重要的,只有理论知识是远远不够的,只有把所学的理论知识与实践相结合起来,从理论中得出结论,才能真正为社会服务,从而提高自己的实际动手能力和独立思考的能力。在设计的过程中遇到问题,可以说得是困难重重,这毕竟第一次做的,难免会遇到过各种各样的问题,同时在设计的过程中发现了自己的不足之处,对一些前面学过的知识理解得不够深刻,掌握得不够牢固,比如说结构体,指针,链表……通过这次课程设计之后,我们把前面所学过的知识又重新温故了一遍。

做它,难就难在不知从何开始,这个时候才知道上课老师们不厌其烦的教导是多么的宝贵,这个时候才后悔上课的时候没有认真的听讲。可是现在一切都晚了,还好时间还算是充裕,只好拿出书本重新复习一下。特别是结构体,指针的部分,几乎是一片空白。不过经过几天的努力,大体上把课本上的知识点看了一遍,知识点也都基本是撑握了,所以一下一步就是开始正式的编程序了。不过毕竟是个新手,还是不知如何下手,于是就在网上下了一篇类似的程序,经过仔细的研究,终于读懂了C语言编程的基本过程和方法。经过一波三折,终于开始正式编程。

编程是一件很枯燥很无聊的事情,但是出于完成作业,得到学分的压力,还必须强破自己坚持下去,按照老师所说的模块化思想,分部分的进行编写。而且编程是一件高精度、模范化的事情,稍有疏乎都会影响全局,也可能因为某一处的小的错误而导致整个程序的无法运行。所以认真仔细就是非常重要的了。

在这次合作中我是负责“修改信息”这一模块的:(如下)void modify() /*修改信息*/

{int i,j,item,num;

char sex1[3],s1[LEN+1],s2[LEN+1]; /* 以姓名和学号最长长度+1为准 */

printf("请输入要要修改的学生的学号:\n");

scanf("%s",s1);

for(i=0;i

if(strcmp(stu[i].code,s1)==0)

num=i;

printf("------------------\n");

printf("1.修改姓名\n");

printf("2.修改年龄\n");

printf("3.修改性别\n");

printf("4.修改出生年月\n");

printf("5.修改地址\n");

printf("6.修改电话号码\n");

printf("7.修改E-mail地址\n");

printf("8.退出本菜单\n");

printf("------------------\n");

while(1)

{ printf("请选择子菜单编号:");

scanf("%d",&item);

switch(item)

{

case 1:

printf("请输入新的姓名:\n");

scanf("%s",s2);

strcpy(stu[num].name,s2); break;

case 2:

printf("请输入新的年龄:\n");

scanf("%d",&stu[num].age);break;

case 3:

printf("请输入新的性别:\n");

scanf("%s",sex1);

strcpy(stu[num].sex,sex1); break;

case 4:

printf("请输入新的出生年月:\n");

scanf("%s",s2);

strcpy(stu[num].time,s2); break;

case 5:

printf("请输入新的地址:\n");

scanf("%s",s2);

strcpy(stu[num].add,s2); break;

case 6:

printf("请输入新的电话号码:\n");

scanf("%s",s2);

strcpy(stu[num].tel,s2); break;

case 7:

printf("请输入新的E-mail地址:\n");

scanf("%s",s2);

strcpy(stu[num].mail,s2); break;

case 8:return;

default:printf("请在1-8之间选择\n");

}

}

} 看起来很简短的一点点程序,它可好费了我不少的精力和时间。其间,还是碰到过一些

问题。但是很其他几个模块相比,还是相对简单的。

char sex1[3],s1[LEN+1],s2[LEN+1];一开始,写成 char sex1[3],s1[LEN],s2[LEN];

后来后来经过多次调试,还是觉得以姓名和学号最长长度+1为好。还有在编写时,总是

C语言-通讯录管理系统

#include #include #include struct record{ charnum[12]; char name[10]; char birthday[10]; char post[10]; char phone[15]; }data[100]; intmenu_select( ); intcreate_record(); intadd_record(int flag); int flag=0; intfind_record(int flag); intdelete_record(int flag); voidpaixu_record(int flag); intsave_record(int flag); void main() { for( ; ; ){ switch(menu_select()) { case 1: printf(" ***********************************************\n"); printf(" ************** 通讯录的建立***************\n"); printf(" ***********************************************\n"); flag=create_record(); break; case 2: printf(" ***********************************************\n"); printf(" ************** 通讯录信息的添加*****************\n"); printf(" ***********************************************\n"); flag=add_record(flag); break; case 3: printf(" ******************************\n"); printf(" ******* 通讯录信息查询*******\n"); printf(" ******************************\n"); find_record(flag); break; case 4:

C语言图书管理系统课程设计报告[1]

第三章图书管理系统的设计与实现 3.1系统的需求分析 图书登记管理系统作为一个应用软件将为学校的老师和学生提供一个对学校图书馆深入了解并借阅、还书的平台。根据系统界面的提示信息对图书馆信息进行查询、初始化等操作 系统功能需求分析描述如下: (1)系统主菜单:进入系统和退出系统 (2)功能菜单:显示可以进行的操作 (3)查询主菜单:根据图书编号、书名、作者进行查询,并可显示所有图书信息 (4)借还书主菜单:可以进行借书和还书等操作 3.2系统的设计 3.2.1 系统的总统设计 下面从系统的整体流程的功能模块、系统界面及数据结构进行总体设计。 (1)总体思想 本系统主要设计思想是实现图书馆的功能机管理系统信息的查询、借书、还书等主要功能。系统的设计方法是结构化实际方法,系统用C语言进行开发用户可以清晰的了解图书馆内的情况。 (2)系统模块结构图 根据需求分析结果,图书管理系统可以分为三大模块:查询

图书模块、借书功能模块、还书功能模块。 系统模块结构如图: 3.2.2 系统的概要设计 ㈠系统主菜单。 显示系统的主菜单,里面有相应的功能代码,根据选择各功能代码进入不同的界面。功能主要包括:退出系统、查询图书、借书、还书。 ㈡查询图书信息 进入此菜单功能模块,输入您要查询的图书的编号、名字、作者等。 图书查询模块流程如图:

3.3 测试结果系统主界面

功能菜单 查询系统菜单

借还系统菜单 3.4 源代码 # include # include # include typedef struct link { char number[100]; char bookname[100]; char author[100]; char publish[100]; char time[100]; float price; char status[100]; struct link *next;

学生信息管理系统

全国学前教育管理信息系统 培训上机指南 一、网址、用户名及密码 1、专题网址:https://www.sodocs.net/doc/b810212855.html,/,系统由专题右上方《管理系统入口》进入。 2、用户名(另发)。 3、测试系统初始密码统一为xueqian@2014(仅在培训时为此密码),请勿在培训时修改此密码。在使用正式系统时请修改密码。 二、系统登录注意事项 1、建议电脑为XP系统的情况下使用火狐或谷歌浏览器登录系统。 2、登录系统前,须进行浏览器设置,设置方法如下:“工具”→“Internet选项”→“隐私”→“高级”→勾选“替代自动cookie处理”和“总是允许会话cookie”。 3、不要使用同一浏览器登录多个用户。 4、在输入用户名和密码时注意键盘大小写的切换。 5、登录系统时,如密码连续五次输入错误,系统会自动锁定该账号,锁定时间为15分钟,15分钟以后才能再登录系统,建议骨干学校和市州在登录时如输错4次密码时不要再进行第5次密码的输入,可用同级或上级的系统管理员账号(A开头的账号)重置密码,再进行系统登录。

三、需完成任务 各学校使用学校级系统,市州使用县、市级系统,骨干学校与市州配合完成各项流程(机构管理、幼儿管理、业务管理、一期数据管理、机构在园幼儿情况、系统管理),具体操作步骤如下(以县级学校为例): (一)机构管理 1、使用机构级账号(普通用户)登录系统,进入“机构管理”->“基本信息管理”,进行学校扩展信息的填写(基本信息由系统自动导入),此处应注意“提交”与“保存”两个按钮的区别。 2、使用区县级账号(审核用户)登录系统,进入“业务管理”->“机构数据管理” ->“基本信息审核”,审核学校提交的基本信息。 3、使用机构级账号(普通用户)登录系统,进入“机构管理”->“办学条件信息管理”,根据提示编辑办学条件基本信息与办学条件建筑信息(该页面有两个选项卡),并提交审核。 4、使用区县级账号(审核用户)登录系统,进入“业务管理”->“机构数据管理” ->“办学条件信息审核”,审核学校提交的基本信息。 5、使用机构级账号(普通用户)登录系统,进入“机构管理”->“班级信息管理”,至少创建5个以上的班级(最好有连续的年级)。

C语言程序设计课程设计-通讯录管理系统

通讯录信息管理系统设计计算机学院计算机科学与技术专业 1.课程设计的目的 学习了C语言程序设计这门课程之后,使我对程序设计有了一定的了解,为了熟练掌握C语言的语法特点、及其数据结构,提高自身编写程序的能力。通过课程设计实现理论知识与实际情况的结合,使所学知识能够在现实社会中起到一定的作用,防止所编写的程序脱离实际,让程序可以更好的发挥作用,以便减轻实际工作中所遇到的繁琐步骤,提高现实工作中的效率。此外通过课程设计提高逻辑思考能力和解决实际问题的能力。程序设计中,语句的语法和常量变量的定义都有严格的要求,有时输了一个中文标点、打错了一个字母,编译就不通过,程序无法正常运行。因此,程序设计初学阶段,学生经常会犯这样的错误,可能要通过几次乃至十多次的反复修改、调试,才能成功,但这种现象会随着学习的深入而慢慢改观。这当中就有一个严谨治学、一丝不苟的科学精神的培养,又有一个不怕失败、百折不挠品格的锻炼。 通讯录信息管理系统是生活中不可缺少的部分编写了一个通讯录信息管理系统是十分必要的。 本程序设计具有通讯信息的录入,进行保存、查找、删除等功能,操作界面简洁美观,易于操作。程序用了条件、循环、指针、结构体等知识点,综合了文件的打开和保存编写的。软件运用菜单实现交互式管理,用户轻松的按键既可实现对软件的操作,操作简单易懂,功能丰富,可以很好的满足的需要。 通过对通讯录管理系统的设计,进一步理解和掌握C语言这门课程的知识点,能够熟练的调用各种函数,把各种C语句有机的结合起来,提高自己C语言程序设计的能力,为今后解决实际问题打下良好基础。

2.设计方案论证 2.1设计思路 建立一个函数,用来添加、显示、删除、查询、修改、保存通讯录等信息,完成通讯录的功能。主函数可以调用六个子函数,分别完成添加记录、显示记录、删除记录、查询记录、修改记录、保存记录、退出系统等功能。在主函数中可以以1、2、3、4、5、6数字键分别可以执行某个功能模块。 2.2程序设计 2.2.1根据图1定义数据类型建立函数 typedef struct { char Num; //编号 char Name[10]; //姓名 char Tel[15]; //电话号码 char Email[20]; //邮箱 char age[8]; //年龄 char adds[20]; //住址 }Person; 2.2.2主函数及其流程图 定义主函数main()和一系列的功能函数,只有通过这些函数才可实现程序

通讯录管理系统课程设计报告书C语言

二〇〇八~ 二〇〇九学年第二学期 信息科学与工程学院 课程设计报告书 课程名称: C语言课程设计 班级:

学号: 姓名: 指导老师: 月九年二〇〇九 通讯录管理系统 一.需求分析 设计题目及要求: ◆建立通讯录信息,信息至少包含编号、姓名、年龄、电话、通讯地址、电子邮箱等; ◆能够提供添加、删除和修改通讯录信息的功能; ◆能够提供安不同方式查询的功能;如按姓名或年龄、电话等查询; ◆将通讯录保存在文件中; ◆能够按表格方式输出通讯录信息。 系统功能需求分析: 主要包含一下多种功能: 添加:添加通讯录记录 显示:显示通讯录记录 删除:删除通讯录记录 查询:查询通讯录记录 修改:修改通讯录记录 保存:将信息保存到文件 二.概要设计 系统功能模块图:

添加:可以添加通讯录记录,依次输入编号、姓名、年龄、电话号码、通讯地址、电子邮箱后,会提示是否继续添加。. 显示:可以以表格形式输出所有通讯录里的记录 删除:输入欲删除的那个人的名字后,会自动删除他(她)的记录内容 查询:可以选择用姓名、电话、地址三种方式查询 修改:输入欲修改的那个人的名字后,再依次输入编号、姓名、年龄、电话号码、通讯地址、电子邮箱即可完成修改 保存:,输入文件名(带后缀名)后,即可将通讯录信息保存到文件 三.详细设计 (1).通讯录: typedef struct { char score; /*编号*/ char name[10]; /*姓名*/ char num[15]; /*号码*/ char email[20]; /*邮箱*/ char age[8]; /*年龄*/ char adds[20]; /*住址*/ }Person; void main() /*主函数*/ { int n=0; for(;;) { switch(menu_select())

图书管理系统的设计(C语言)

图书管理系统设计 图书管理信息包括:图书名称、图书编号、单价、作者、存在状态、借书人姓名、性别、学号等 功能描述: 1.新进熟土基本信息的输入 2.图书基本信息的查询 3.对撤消图书信息的删除 4.为借书人办理注册 5.办理借书手续 6.办理换书手续 要求:以文件方式存储数据,系统以菜单方式工作。 这是本人大一第二学期初C语言课程设计的作品,嘿嘿,本来以为已经找不到原稿了,今天无意中竟然在QQ网络硬盘中找到了当初的teta版,发布于此,以作纪念。

C源代码如下: #include #include #include struct book{ char book_name[30]; int bianhao; double price; char author[20];

char state[20]; char name[20]; char sex[10]; int xuehao; struct book *book_next; }; struct club{ char name[20]; char sex[10]; int xuehao; char borrow[30]; struct club *club_next; }; void Print_Book(struct book *head_book);/*浏览所有图书信息*/ void Print_Club(struct club *head_club);/*浏览所有会员信息*/ struct book *Create_New_Book();/*创建新的图书库,图书编号输入为0时结束*/ struct book *Search_Book_bianhao(int bianhao,struct book *head_book); struct book *Search_Book_name(char *b_name,struct book *head_book); struct book *Search_Book_price(double price_h,double price_l,struct book *head_book); struct book *Insert_Book(struct book *head_book,struct book *stud_book);/*增加图书,逐个添加*/

学生信息管理系统(完整)

学生信息管理系统(总体设计) 1、管理系统功能模块设计 本系统需要完成的功能主要有: (1)、输入学生基本信息、所在班级、所学课程和成绩等。 (2)、学生信息的查询,包括查询学生基本信息、所在班级、已学课程和成绩等。(3)、学生信息的修改。 (4)、班级信息的输入,包括输入班级设置、年级信息等。 (5)、班级信息的查询。 (6)、班级信息的修改。 (7)、班级课程信息的输入。 (8)、班级课程信息的修改。 (9)、学生课程添加和修改。 (10)、学生成绩信息的输入。 (11)、学生成绩信息的修改。 (12)、学生成绩信息的查询。 (13)、学生成绩信息的统计。 2、功能模块设计:

3、数据库设计:

学生信息管理系统(需求分析)

1.系统开发背景分析 系统的功能取决开用户的需求。随着科技进步和信息时代的到来,教育的普及程度起来起高,学校的人数也在迅速的增长,怎样的管理好成千上万的学生,已经成为一个学校的管理者必须面对的问题。编写本报告的目的就是用最少的代价,尽可能短的时间内确定问题是否能够解决,通过对学校的一些管理软件的调研分析,发现了一些不足,所以拟做此系统,使学生信息的管理更加准确,安全和快捷。 在本次试验中包括的模块有学生信息管理、课程信息管理、成绩信息管理和班级信息管理等几项,各项管理工作涉及到的内容用下面的关系模式表示。a)学生(学号,姓名,性别,年龄,班级,电话,备注,出生日期,入学时间, 班级编号,家庭地址) b)课程(课程编号,课程名称,课程类别,学分,学时) c)班级(系,班级号,指导老师) 2.系统分析 1.抽象出当前系统的逻辑模型 画出反映当前系统工作的数据流程图。数据流程图是逻辑模型的图形表示,即使不是专业的计算机技术人员也能非常容易理解,它是一种很好的系统构造的表示方法。画数据流程图是应该从已获得的人工处理流程中去掉物理因素,只保留数据、信息处理部分。 2.系统功能分析 系统主要用于学校学生信息管理,主要任务是用计算机对学生各种信息进行日常管理,如:查询、修改、增加、删除。 3.系统目标设计 根据本校的实际情况,利用校园网而设计一套针对性和功能都比较强的学生信息管理系统,对学生信息管理系统进行科学的分类、录入、查询. 4.开发设计思想 尽量采用学校现有的软硬件环境及先进的管理系统开发方案,从而达到充分利用资源,提高系统开发的水平和应用效果的目的。系统应该符合学校学生信息管理的规定,满足学校学生日常管理的需要,达到操作过程中的直观、方便、实用、安全等要求。强调多部门合作,学生工作设计面广泛,应该考虑各部门各

个人通讯录管理系统c语言源程序优秀版)

#include /*头文件*/ #include //包含最常用的系统函数 #include //关于字符数组的函数定义的头文件#include //控制台输入输出 //定义结构体 struct tongxunlu /*定义通讯录结构体变量*/ { char xingming[20]; /*定义输入名字的数组*/ char dianhua[20]; /*定义输入电话号码的数组*/ char dizhi[40]; /*定义输入地址的数组*/ } txl[100]; //默认100个数据 int n=0;//记录数据联系人数量 FILE *fp; /*定义文件*/ //程序用到的所有函数 void zhucaidan(); /*主菜单函数*/ void zengjia(); /*增加联系人函数*/ void readfile(); /*文件中读入函数*/ void writefile(); /*文件中写入函数*/ void xiugai(); /*修改联系人函数*/ void xiugai_xingming(); /*姓名修改*/ void xiugai_dianhua(); /*电话号码修改*/ void chazhao(); /*查找联系人函数*/

void chazhao_xingming(); /*按姓名查找*/ void chazhao_dianhua(); /*按号码查找*/ void shanchu(); /*删除联系人函数*/ void shanchu_quanbu(); /*全部删除*/ void shanchu_dange(); /*单个删除*/ void xianshi(); /*号码显示*/ //程序主函数模块六 void main() /*主函数main*/ { readfile(); /*读入文件*/ while(1) /* 循环(永远进行)*/ { zhucaidan(); /*调用主菜单函数*/ } } //读取文件函数部分开始模块七 void readfile() { if((fp=fopen("c:\\通讯录.txt","r"))==NULL) /*以只读方式打开判定文件是否为空*/ { printf("\n\t\t\t 通讯录文件不存在"); /*判断结论*/ if ((fp=fopen("同通讯录.txt","w"))==NULL) /*只写方式判断*/

图书管理系统 (c语言)

程序设计方法课程设计

问题提出: 设计一个图书馆的图书管理,具体要求如下: 1.录入新采购的图书信息,做成文件book.in,要求有良好的输入界面; 2.查询各种图书的基本信息,设计出良好的查询界面; 3.按图书编号进行排序,将排好序的图书信息输出到文件book.out中。 4.统计各类图书册数、图书馆的图书总册数。 5.统计图书的借阅情况。 1.需求分析 对于图书馆的管理系统,应该满足以下的用户需求: ○1用户能够增加和删除一些图书。 ○2用户根据一些基本信息查询相应的图书,系统可以准确输出所有符合条件的图书信息。 ○3用户可以借阅和归还图书馆中的图书。 ○4系统可以对图书做出统计,包括图书总数,各类图书数目,图书的借阅情况。 2.设计分析 定义图书结构体,其成员包括书名、作者、类型、出版社、价格、是否借阅(整型,1为借出,0为未借)、编号。 输入新书时,利用结构体储存书的信息,同时将新书信息以二进制写入book.in文件中,录入结束后,将新书按输入顺序写入book.out中,并且以原来存书的最大编号为基准对新书进行编号,这样可以保证book.out文件存储的图书都是按编号进行排序的。 查找图书时,获得所查书目基本信息后,以二进制依次读取文件中的每一本图书信息,并与输入信息相比较,输出符合信息的图书。 删除图书时,通过输入的图书编号(编号可通过查找图书获得)查找相应图书,删除相应数据并保存。 借阅或归还图书时,通过图书编号(编号可通过查找图书获得)查找相应图书,修改图书的属性(是否借阅)并保存。 实现统计功能时,以二进制依次读取文件中的每一本图书信息,设置变量统计图书类型、借阅情况和图书总数,到文件结尾时,输出各个变量的值。

C语言通讯录管理系统程序代码

一、课程设计题目及要求 题目通讯录管理系统 任务:自学C语言中相关知识,设计出通讯录管理系统。要求如下所述: ◆建立通讯录信息,信息至少包含编号、姓名、年龄、电话、通讯地址、电子 邮箱等;; ◆能够提供添加、删除和修改通讯录信息的功能; ◆能够提供按姓名或电话等查询; ◆将通讯录保存在文件中; ◆能够按表格方式输出通讯录信息。 二、系统设计方案 (一)总体框架图: 通讯录管理系统:1、录入通讯录信息 2、修改通讯录信息 3、查询通讯录信息 4、浏览通讯录信息 5、增加通讯录信息 6、推出系通讯录统 (二)模块设计 模块一:头文件,变量定义,函数的声明 对系统所使用的变量进行定义,对函数进行声明 模块二:录入通讯录信息 声明函数void readfile(),说明一个文件指针FILE *fp 打开文件"student.txt" 模块三:通讯录信息的查找 声明void seek()为查找函数,通过switch(item)设定用学号查找,用姓名查找两个分支 模块四:通讯录信息的修改

声明void modify()为学生信息修改函数,通过switch(item)设定所要修改的项目模块五:通讯录信息按学号排序 声明void sort()将录入通讯录信息系按升序排列,用的是“冒泡排序法”实现排序模块六:加通讯录信息 声明void insert()插入通讯录信息,先通过判断通讯录是否存在,若否则继续输入,若是跳出,重新循环 模块七:通讯录信息 声明void del()实现通讯录信息删除,通过学号对比确定要删除的信息,然后用后一个替换掉。 模块八:示学生信息 通过display()函数输出通讯录信息 模块九;存信息 通过fp=fopen("student.txt","w");写入信息 模块十:界面菜单 通过switch(num)调用,以上各函数,实现功能 三、设计详情 1.主函数 主函数设计要求简洁,只提供部分提示语和函数的调用 【程序】

c语言程序设计报告 图书管理系统

中国地质大学本科生课程论文封面 课程名称c语言课程设计 教师姓名樊媛媛 本科生姓名 本科生学 本科生专业 所在院系 类别: 日期: 课程设计评语

注:1、无评阅人签名成绩无效; 2、必须用钢笔或圆珠笔批阅,用铅笔阅卷无效; 3、如有平时成绩,必须在上面评分表中标出,并计算入总成绩。 目录

课程设计评语 (1) 目录 (2) 1.课程论文题目 (3) 2.程序设计思路 (3) 3.功能模块图 (4) 4.数据结构设计 (4) 5.算法设计 (4) 6.程序代码 (5) 7.程序运行结果 (11) 8.编程中遇到的困难及解决方法 (14) 9.总结心得及良好建议 (15) 10.致谢 (15) 1.课程论文题目 图书管理系统 2.程序设计思路

根据要求,图书管理系统以文本文件存放在文件中,故需要提供文件的输入、输出等操作;还需要保持记录以进行删除,查询,借书,还书,退出,添加等等操作;另外还有键盘式旋转菜单以实现功能选择模块。 3.功能模块图 系统功能模块图 4.数据结构设计 先写主函数main (),然后设计个功能选项,用switch选择,然后进入不同模块,进行不同选择,实现不同功能。每个图书信息设置一个结构体,将输入信息存入文件,提供查询功能,还有删除功能以及借书还书功能。每运行一功能后都返回主界面,方便再次选择,还有设置退出模块,方便退出。 5.算法设计

先定义结构体数组struct books,然后设置主界面,主界面出现6个功能选项,分 别是输入sr() 、借书js()、还书hs()、删除sc()、退出tc()、查询cx().各模块设计如下: 输入模块sr(),先调用文件eup,对其进行读取,然后增加,再对其进行保存和调用。其中结构体只输入tsmc图书名称,tsbh图书编号,dj单价,zz作者, 然后自动生成,czzt存在状态,姓名xm,学号xh,性别xb. 查询模块cx(),有选项图书编号和图书名称,然后选择,用if选择,然后用for循环查找,当输入名称与文件中的名称相同时,便显示此信息。 删除模块就是在查找功能的图书后,选择删除,将strcpy将s[i+1]的值赋给s[i]。借出模块也是在查询的基础上,若s[i]的存在状态为已借出,则显示已借出,无法再借,若未借出,则将s[i]的存在状态czzt变为已借出,然后输入姓名,学号,性别,最后显示出已借出。 还书模块就是在查询的基础上,若s[i]的存在状态为未借出,则无法归还,若借出,则将存在状态变为未借出,然后自动将姓名,学号,性别变为初始值。 退出模块使flag=1,而在main就有bool flag 且main中已令main=0.这样就实现了退出功能。 其中若输入超过选项值后,都会显示输入错误,请重新输入。若字符错误,程序就直接出现错误了。 6.程序代码 #include #include #include #include #define M 100 struct books { char tsmc[12]; int tsbh; float dj; char zz[12]; char czzt[12]; char xm[12];

学生信息管理信息系统

管理信息系统 课程设计报告 专业:电子商务 学号: 姓名: 2011年12 月 29 日

实验内容和评分项目

学生信息管理信息系统的分析与设计 一. 总体规划: 1.系统开发的背景 学生信息档案的管理对于学校的管理者来说至关重要,学生信息是高等学校非常重要的一项数据资源,是一个教育单位不可缺少一部分。特别是近几年来,国家政策的调整,我国高等院校大规模的扩招,给高等院校的教学管理、学生管理、后勤管理等方面都带来不少的冲击。其包含的数据量大,涉及的人员面广,而且需要及时更新,故较为复杂,难以单纯地依人工管理,而且传统的人工管理方式既不易于规范化,管理效率也不高,目前我国各类高等院校中还有相当一部分学生档案管理还停留在纸介质的基础上,尤其是中、小学对学生档案的管理更是落后,这样的管理机制已经不能适应时代发展的要求,其管理方法将浪费许多人力和物力。随着科学技术的不断提高,计算机科学与技术日渐成熟,计算机应用的普及已进入人类社会生活的各个领域,并发挥着越来越重要的作用。这种传统的手工管理模式必然被以计算机为物质基础的信息管理方法所取代。 作为计算机应用的一部分,使用计算机对学生档案进行管理,有着手工管理所无法比拟的优点,如:检索迅速、查找方便、可靠性高、存储量大、保密性好、寿命长、成本低等。这些优点能够极大地提高学生档案管理的效率,也是学校向科学化、正规化管理发展的必要条件,更是各个高等院校与世界接轨的重要条件。 2.系统功能需求 学生信息管理系统是针对学校人事处的大量业务处理工作而开发的管 理软件,主要用于学校学生信息管理,总体任务是实现学生信息关系的系统化、科学化、规范化和自动化,其主要任务是用计算机对学生各种信息进行日常管理,如查询、修改、增加、删除,另外还考虑到学生选课,针对这些要求设计了学生信息管理系统。推行学校信息管理系统的应用是进一步推进学生管理规范化、电子化、控制辍学和提高义务教育水平的重要举措。 学生信息的内容包括: 1. 能够从屏幕上读取一个学生的信息并将信息存入到数据文件中。 2. 能够将指定的信息从文件中删除。 3. 能够按编号、姓名对学生的信息进行检索并将检索结果显示在屏幕上。 4. 可以统计全部学生的总成绩,及其在班上的排名。 5. 能够统计各科的平均成绩及及格率。 6. 要求有错误提示功能,例如性别只能输入男女,输入错误提示重新输入。 7. 如果检索不到相应的信息应提示用户。

c语言最全的图书管理系统程序

题目名称:图书管理系统 算法分析: 1用结构体标出信息系统的成员:图书书号,书名,作者姓名,出版社,价格 2 利用c语言的文件知识将系统的信息存放在c盘下的“project choose.txt”的文件夹下 3 定义各个子函数(1)定义输入信息函数,将图书信息按一定格式用scanf函数输入(统计M本的信息); (2)定义输出函数,每3个表一页直到最后一个; (3)定义信息查询函数。a,定义按书号查询函数,如果输入的数字等于图书编号则输出要查询的信息;b,定义按姓名查询函数,如果输入的姓名字符串等于其中一个作者姓名字符串则输出信息;c,定义按出版社名称查找函数,如果输入的字符串等于其中出版社名称,则输出该信息; e,定义查找总函数,输入一个数选择查找方式,1-4分别对应调用abc四个函数。 (4)定义删除信息函数。输入的数字作为要删除的图书编号,输出要删除的图书信息后选择是否删除,删除后将第g+1个的信息赋给第g个,输出删除后的信息表。 (5)定义信息修改函数。输入的数字等于要修改的图书编号,输出要修改的图书信息后选择是否修改,用switch,case语句选择要修改的项目,输入n,y决定是否继续直到不继续修改,输出图书信息。 (6)定义信息统计函数。输入一个字符串作为出版社,比较M 本书的出版社字符串是否等于输入的字符串,统计相等的个数n输出。 (7)定义图书编号排序函数。用冒泡排序法将M本的书的图书编号按从大到小的顺序排列后输出。 4 定义主函数。调用读取文件函数,输入数字1-5分别对应调用

修改图书信息函数,删除图书信息函数,查找图书信息函数,统计图书信息函数,图书排行信息函数,0表示退出系统。最后调用保存文件函数。结束程序。 流程设计:

c语言通讯录管理系统

C语言课程设计:通讯录管理系统

目录 一、需求分析 (2) 二、概要设计 (2) 三、详细设计 (3) 四、上机操作 (14) 五、实习心得 (19) 六、源程序 (20)

一、需求分析 具有数据的插入、修改、删除、显示和查询功能的电话簿管理程序。 (1)数据包括:人名、工作单位、电话号码和E-MAIL地址。 (2)可对记录中的姓名和电话号码进行修改。 (3)可增加和删除记录。 (4)可显示所有的保存记录。 (5)可按人名或电话号码进行查询。 [提示] 建议采用结构体数组和文件系统实现。结构体成员包括人名、工作单位、电话号码和E-MAIL地址。 根据题目的要求程序应该采用结构体数组和文件系统实现。应该有文件的操作功能;在程序中应该包括输入、显示、删除、查询、添加、修改、保存、加载和退出的功能。 二、概要设计 根据上面的分析,可以将程序系统的设计分为如下几个模块:插入、显示、删除、查询、修改、保存和退出。 通讯录管理系统 修改退出 插入显示删除查询保存

三、详细设计 1、 主函数; 主函数一般设计得比较简洁,只提供输入,处理和输出部分的函数调用。其中各功能模块用菜单方式选择。 流程图 N Y 【程序】 int main() //主函数 { Man man[500],*pman=man;; char control; int size; printf("\t\t**********************************************\n"); //窗口初始化 printf("\t\t********** 欢迎使用通讯录管理系统! ***********\n"); printf("\t\t*--------------------------------------------*\n"); printf("\t\t* 请按回车键继续! *\n"); printf("\t\t**********************************************\n"); 开始 显示一系列功能选项 输入n ,判断是否是0~6 根据n 的值调用各功能模块函数 结束

基于C语言数据结构图书管理系统

计算机科学与技术专业课程设计任务书 1 需求分析 1本演示程序中,用户从键盘输入图书信息,图书编号,名称,类别,作者,出版社,价格,购买日期。 2演示程序以用户和计算机的对话方式执行,即在运行窗口出现提示信息,有用户从键盘录入,显示结果会在显示之后。 3程序执行的命令包括:查询图书信息,删除图书信息,对所有图书进行排序,

统计各种类的图书数目。显示所有图书信息 4 测试数据:2001 离散数学 X 左孝凌上海科学出版社 18.00 2009/6/8 2002 数据结构 B 严蔚敏清华大学出版社 30.00 2010/4/1 2 程序总体设计 (1)数据结构 依据输入的数据信息和数据格式,连表结点用结构体实现。采用链表方式存储,typedef:typedef struct //定义表示日期数据的结构体数据类型 { int month; int day; int year; } DATE; typedef struct Booktype //定义表示图书信息的结构体数据类型 { char id[10]; /* 图书编号*/ char name[40]; /* 图书名称*/ char type; /* 图书类型*/ char writer[10]; /* 图书作者*/ char publisher[20]; /* 图书出版社*/ float price; /* 图书价格*/ DA TE buydate; /* 图书购买日期*/ } Btype; typedef struct Booklist /* 定义表示所有图书信息的链表数据类型*/ { Btype *bk; struct Booklist *next; } Blist; (2)模块划分

学生信息管理系统程序设计

学生信息管理系统程序设计 1、软件开发目的 该软件主要是实现对学生基本信息进行系统化的管理,首先可以对学生基本信息进行录入和存取,其次可以浏览学生的相关信息,然后可以删除和插入学生的相关信息,还有就是可按学号或按学生姓名查询此学生的相关信息。由此来系统化管理学生基本信息,并达到简易操作的目的。 2、功能分析说明图 3、各项功能说明 (1)学生基本信息的录入和保存: 在链表中的适当位置插入一个学生信息节点,一次添加一条学生信息(添加内容包含学号、姓名、年龄),如果添加的学号已经在文件中存在,则不能添加到文件中去,应显示错误提示语;如果添加成功,则显示成功提示语。添加操作完毕后,应该询问用户是否继续执行此操作。如果用户不继续,则退回到程序初始界面。 (2)显示学生信息: 此功能是显示一个学生信息节点中的信息,并在屏幕上显示出来。 (3)删除学生信息: 进入该项功能界面后,删除学生信息,一次删除一条学生信息。 (4)按学号查找学生信息: 按学号查询学生信息,要求显示文件中与用户输入的学号相匹配的学生信息,要求显示学号、姓名、年龄等字段,如果文件中没有学生信息,则显示提示语。查询操作完毕后,应该询问用户是否继续执行此操作。如果用户不继续,则退回到程序初始界面。 (5)按姓名查找学生信息: 按姓名查询学生信息,要求显示文件中与用户输入的学号相匹配的学生信息,要求显示学号、姓名、年龄等字段,如果文件中没有学生信息,则显示提示语。查询操作完毕后,应该询问用户是否继续执行此操作。如果用户不继续,则退回到程序初始界面。 (6)修改学生信息 修改学生信息中的某一项信息,一次更新一条学生信息(更新内容包含学号、姓名、年龄等字段值),如果更新的学号在文件中不存在,则不能更新,应该显示错误提示语;如果更新成功,则显示成功提示语。更新操作完毕后,应该询问用户是否继续执行此操作。如果用户不继续,则退回到程序初始界面。 (7)退出系统,结束任务。 4、软件功能的验收标准 1.有较为美观简洁大方的菜单,能保证用户方便、直观、快捷的熟悉并使用软件的各项功能。 2.有严密正确的数据验证功能和数据处理功能,能够查询、插入、修改和删除学生信息。

通讯录管理系统课程设计报告书(C语言)[1]

开放教育 课程设计报告书 课程名称:通讯录管理系统 班级:综合邮政07秋 学号: 0 姓名:王芬 指导老师:高海东

通讯录管理系统 一.需求分析 设计题目及要求: ◆建立通讯录信息,信息至少包含编号、姓名、年龄、电话、通讯地址、电子 邮箱等; ◆能够提供添加、删除和修改通讯录信息的功能; ◆能够提供安不同方式查询的功能;如按姓名或年龄、电话等查询; ◆将通讯录保存在文件中; ◆能够按表格方式输出通讯录信息。 系统功能需求分析: 主要包含一下多种功能: 添加:添加通讯录记录 显示:显示通讯录记录 删除:删除通讯录记录 查询:查询通讯录记录 修改:修改通讯录记录 保存:将信息保存到文件 二.概要设计 系统功能模块图:

添加:可以添加通讯录记录,依次输入编号、姓名、年龄、电话号码、通讯地址、电子邮箱后,会提示是否继续添加。 显示:可以以表格形式输出所有通讯录里的记录 删除:输入欲删除的那个人的名字后,会自动删除他(她)的记录内容 查询:可以选择用姓名、电话、地址三种方式查询 修改:输入欲修改的那个人的名字后,再依次输入编号、姓名、年龄、电话号码、通讯地址、电子邮箱即可完成修改 保存:,输入文件名(带后缀名)后,即可将通讯录信息保存到文件 三.详细设计 (1).通讯录: typedef struct { char score; /*编号*/ char name[10]; /*姓名*/ char num[15]; /*号码*/ char email[20]; /*邮箱*/ char age[8]; /*年龄*/ char adds[20]; /*住址*/ }Person;

C语言编写图书管理系统

文档来源为:从网络收集整理.word版本可编辑.欢迎下载支持. 分类号: 单位代码: 本科毕业设计说明书 C语言编写图书管理系统 姓名李彬 学号0114 年级2008级本科3班 专业机械设计制造及其自动化 系(院)机械工程学院 指导教师李培珍 年月日

目录 第一部分.................................................. 错误!未定义书签。职业生涯规划——十年创业路................................ 错误!未定义书签。1前言................................................... 错误!未定义书签。2自我剖析................................................ 错误!未定义书签。3环境分析................................................ 错误!未定义书签。 3.1国家环境............................................. 错误!未定义书签。 3.2社会环境............................................. 错误!未定义书签。 3.3职业环境............................................. 错误!未定义书签。 3.4分析小结............................................. 错误!未定义书签。4未来人生职业规划........................................ 错误!未定义书签。5总结................................................... 错误!未定义书签。第二部分.................................................. 错误!未定义书签。C语言编写图书管理系统.................................... 错误!未定义书签。摘要.................................................... 错误!未定义书签。Abstract.................................................. 错误!未定义书签。1需求分析................................................ 错误!未定义书签。 1.1 系统需求............................................ 错误!未定义书签。 1.2 功能分析............................................ 错误!未定义书签。2系统功能模块结构图...................................... 错误!未定义书签。 2.1 系统调用的函数...................................... 错误!未定义书签。 2.2 图书管理系统模块.................................... 错误!未定义书签。 3 图书管理系统的结构...................................... 错误!未定义书签。 3.1 主函数流程图........................................ 错误!未定义书签。 错误!未定义书签。 错误!未定义书签。 错误!未定义书签。 错误!未定义书签。 错误!未定义书签。 3.2 实体数据结构........................................ 错误!未定义书签。 错误!未定义书签。 错误!未定义书签。 错误!未定义书签。

通讯录管理系统(C语言)

说明 1、设计的目的 1)复习巩固C语言的基础知识,进一步加深对C语言编程的理解和掌握;2)利用所学知识,理论和实际结合,利用资源,采用模块化的结构,使用模仿修改自主设计相结合的方法,锻炼学生综合分析解决实际问题的编程能力;3)培养学生在项目开发中团队合作精神、创新意识及实战能力。 2、设计的任务 根据学生的实际情况,进行分组选题。主要的课程设计题目如下(学生也可自主选题): 1、图书管理系统 2、学生信息管理系统 3、学生成绩管理系统 4、学生通讯录管理系统 5、职工信息管理系统 6、设计简单的计算器 课程设计采用学生自主设计和指导老师辅导相结合的方式。 3、设计要求与设计报告 设计要求: 1、任选上述题目之一,或自选题目。 2、模块化的程序设计 3、锯齿形的程序书写格式。 4、必须通过编译连接运行 设计报告: 1、设计目的和任务 2、总体设计:包括程序设计组成框图、流程图。 3、详细设计:包括模块功能说明:函数功能、入口及出口参数说明,函数调用关系描述等。 4、调试与测试:包括调试方法,测试结果分析与讨论,测试过程中遇到的主要问题及采取的解决措施。 5、源程序清单和执行结果:清单中应有足够的注释。

设计目的和任务 (主要介绍设计的任务,为什么要设计,设计要达到什么样的目的。) 设计目的:(1)基本掌握面向过程程序设计的基本思路和方法; (2)达到熟练掌握C语言的基本知识和技能; (3)能够利用所学的基本知识和技能,解决简单的程序设计问题 程序功能:(1).学生基本信息及成绩所选科目成绩的录入。 (2).基本信息的查询(分系、班级;分科目)与修改。 (3).对每系或每班各科成绩进行分析(即求单科平均成绩、及格率和优秀率); (4).对所开课程的成绩分析(求其平均成绩,最高分和最低分); (5).对学生考试成绩进行排名; 目录 一、总体设计 (3) 二、详细设计 (4) 三、调试与测试 (5) 四、源程序清单和执行结果 (6) 五、建议和体会 (7) 六、参考文献 (8)

相关主题