C语言程序设计课程设计报告—宿舍管理系统

C语言程序设计课程设计报告—宿舍管理系统
C语言程序设计课程设计报告—宿舍管理系统

西安邮电学院

C语言课程设计报告

题目:宿舍管理系统

院系名称:计算机学院

专业名称:网络工程

班级: 1004

学生姓名:李斯良

学号(8位): 04102109(17)

指导教师:刘霞林

设计起止时间:2011年6月13日~2011年6月22日

一、课程设计目的

1..通过本次课程设计,强化上级动手能力,在理论和实践的基础上进一步巩固

《C语言程序设计》课程的学习内容,掌握工程软件设计的基本方法。

2.熟悉C语言的基本内容从而掌握C语言的基本知识以及了解C程序的基本编写

及运行;

3.了解程序的分模块编写并对程序的每个模块进行详细的设计并且能理解一般C

语言编写的程序。

4..熟悉C程序设计的开发环境及C程序的调试过程。

二、课程设计内容

用所学过的C语言知识(文件,结构体,函数,数组等)编写一个学身份学籍管理系统。使其有以下功能。

1.通过键盘输入某些学生的学生学籍管理信息。(包含学生学号、姓名、性别、年

龄、出生年月、住址、班级、专业、院系等信息)。

2.输入给定学号,显示出某位学生的学生学籍管理信息。

3.显示出全部学生的学生学籍管理信息。

4.可将某学生信息添加到文件内。

5.给定某位学生的学号,修改该学生信息。

6.给定某位学生的学号,删除该学生信息。

7.给定某个班级号,统计该班级的总人数。

8.按照学生的学号升序对学生信息进行排序。

9.用文件的方式将录入的数据进行存储,并从其中读取数据。

三、概要设计

1.功能模块图:

2.各模块详细的功能描述:

A.输入模块:调用input( )函数将学生宿舍信息依次输入到结构体数组中,结束后将保存

在制定文件中,在其他模块的函数中可以随时进行调用,结束后可以将修改后的学生宿舍信息再一次保存。

B.添加模块:如果要添加新入住学生信息可以调用append函数将新生信息插入到原有信息的末尾,在保存到文件中。

C.修改模块:修改可以通过输入要修改的学生的学号,对学生的个人信息利用switch选

择要修改的内容.修改完毕后,保存到所设定的文件中去。

D.删除模块:删除可以通过输入要删除的学生学号,对学生的所有个人信息进行删除.删

除完毕之后保存到文件中去。

E.查询模块:选择输入要查询学生的学号,并将查询的信息显示在屏幕上。

F.统计模块:输入要统计人数的班级号,然后输出此班的总人数。

G.排序模块:按学生学号用冒泡法升序排出学生的信息。

H.打印模块:输出当前文件中所有的学生住宿信息。

四、详细设计:

1.流程图:

2.

重点设计:

int read_file(STUDENTS students[]) { FILE *fp ; int i=0;

if((fp=fopen("","rt"))==NULL)

{ printf("\n\n*****库存文件不存在!请创建"); /*创建文件*/

return 0;

}

while((fread(&students[i],sizeof(STUDENTS),1,fp))==1) /*成功创建

*/

{

i++;

}

fclose(fp);

return i;

}

void save_file(STUDENTS students[],int sum) /*保存信息*/ { FILE *fp;

int i;

if((fp=fopen("","wb"))==NULL)

{ printf("读文件错误!\n");

return;

}

五.测试数据及运行结果:

三组正常数据:

1.

2.异常测试数据及运行结果:

1.

2.

六、调试情况,设计技巧及体会:

1. 设计过程中的体会:在刚开始还没有大体思路,觉得设计不简单。但当总体构思完成后,对各个功能的实现可以用小程序即模块形式进行实现,比如输入数据,输出数据,修改数据,删除数据等.在一个个小程序中调试,最后各个模块的功能完成比较好后,在将所有的模块都放进main()主函数中进行调试,这样可以避免由整体构思调试引起的调试障碍.但还是没有得到完美的效果,有的模块还是有问题。而且程序上看没什么问题啊?老师也帮了不少的忙吧。在此写过老师的帮助。

2.在调试过程中,F5,F10,F11,有了更深的认识,并且可以更灵活的运用。

在编写程序的过程中,有些逻辑不是很清楚,但大部分程序模块还是写出来了。

那些不清楚的就是文件方面的知识,以后要好好研究下文件了。总体来说,

这次课程设计对C语言方面的知识又重新复习了一遍,感觉还行。

3.还有就是原先有想过用密码,构思是想实现一个帐号密码配对使用的方法,但是由于文件的使用不熟练,最后还是以失败告终。同时程序只能在当前登录过程中输入进入系统,有较大的局限性。

七、参考文献

《C语言程序设计》谭浩强清华大学出版社 1999年12月

C语言程序设计(第二版)王曙燕 /主编

八.附录:

3.完全代码:

#include""

#include""

#include"" /*头文件*/

#define MAX 100

typedef struct

{ int year;

int month;

int day;

}DATE;

typedef struct

{ int num; /*学号*/

char name[20]; /*姓名*/ /*定义结构体*/

char sex[6]; /*性别*/

int age; /*年龄*/

DATE birthday; /*出生年月*/

char sushe[30]; /*宿舍号*/

char classes[10]; /*班级*/

char zhuanye[50]; /*专业*/

char chuanghao[50]; /*床号*/

}STUDENTS;

/*读取信息*/

int read_file(STUDENTS students[])

{ FILE *fp;

int i=0;

if((fp=fopen("","rt"))==NULL)

{ printf("\n\n*****库存文件不存在!请创建"); /*创建文件*/

return 0;

}

while((fread(&students[i],sizeof(STUDENTS),1,fp))==1) /*成功创建*/

{

i++;

}

fclose(fp);

return i;

}

/*保存信息*/

void save_file(STUDENTS students[],int sum)

{ FILE *fp;

int i;

if((fp=fopen("","wb"))==NULL)

{ printf("读文件错误!\n");

return;

}

for(i=0;i

if(fwrite(&students[i],sizeof(STUDENTS),1,fp)!=1)

printf("写文件错误!\n"); /*学生信息保存到文件中*/

fclose(fp);

}

/*输入模块*/

int input(STUDENTS students[])

{ int i=0,t; /*定义要输入学生的个数*/

system("cls");

printf("\n\n 录入学生个数(最多%d个)",MAX);

scanf("%d",&t);

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

do

{ um);

if(students[i].num==0) break;

printf("\n 学生姓名:");

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

printf("\n 学生性别:");

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

printf("\n 学生年龄:");

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

printf("\n 学生出生年月日:");

scanf("%d %d %d",&students[i].,&students[i].,

&students[i].;

printf("\n 学生宿舍:");

scanf("%s",students[i].sushe);

printf("\n 学生班级:");

scanf("%s",students[i].classes);

printf("\n 学生专业:");

scanf("%s",students[i].zhuanye);

printf("\n 学生床号:");

scanf("%s",students[i].chuanghao);

i++;

}while(i

save_file(students,t); /*保存输入的学生信息*/

printf("\n %d个学生信息输入完毕! \n",t);

getch();

return t; /*返回输入学生的个数值*/

}

/*输出模块*/

void output(STUDENTS students[],int sum)

{

int i;

system("cls");

printf("num name sex age year-month-day sushe classes

zhuanye chuanghao\n");

printf(" \n");

for(i=0;i

{printf("%5d %5s %5s %5d %5d %5d %5d %5s %5s %5s %5s\n",

students[i].num,students[i].name,students[i].sex,students[i].age,studen

ts[i].,

students[i].,students[i].,students[i].sushe,

students[i].classes,students[i].zhuanye,students[i].chuanghao);

printf(" \n");

}

getch();

save_file(students,sum);

}

/*添加信息模块*/

int append(STUDENTS students[],int sum)

{

int i=sum,flag=0; /*从已经输入的学生尾部添加*/

char choice ;

sum=read_file(students);

system("cls");

printf("\n\n 添加学生信息 \n");

do

{

if(i

{

printf("\n 新学生学号:");

scanf("%d",&students[i].num);

printf("\n 学生姓名:");

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

printf("\n 学生性别:"); /*输入添加学生的基本信息*/

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

printf("\n 学生年龄:");

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

printf("\n 学生出生年月日:");

scanf("%d %d %d",&students[i].,&students[i].,&students[i].;

printf("\n 学生宿舍号:");

scanf("%s",students[i].sushe);

printf("\n 学生班级:");

scanf("%s",students[i].classes);

printf("\n 学生专业:");

scanf("%s",students[i].zhuanye);

printf("\n 床号:");

scanf("%s",students[i].chuanghao);

i++;

}

printf("\n 继续添加吗?(Y/N)");

choice=getch();

if(choice=='Y'||choice=='y')

{ flag=1;

printf("\n 继续!\n"); /*是否要继续添加*/

}

else flag=0;

}while(flag==1);;

printf("\n 按任意键返回主菜单!");

getch();

save_file(students,i); /*保存添加的学生

信息到原文件*/

return i; /*返回文件中学生个数值*/

}

/*修改信息模块*/

void modify(STUDENTS students[],int sum)

{ um==modify_num)

{ printf("\n 学生信息 \n");

printf("num name sex age year-month-day address sushe zhuanye chuanghao\n");

printf(" \n");

printf("%5d %5s %5s %5d %5d %5d %5d %5s %5s %5s %5s\n",students [i].num,students[i].name,students[i].sex,students[i].age,students[i].,s tudents[i].,students[i].,students[i].sushe,students[i].classes,students [i].zhuanye,students[i].chuanghao);

printf("\n 要修改哪一项?\n");

printf("\n 1.学生学号 \n");

printf("\n 2.学生姓名 \n");

printf("\n 3.学生性别 \n");

printf("\n 4.学生年龄 \n");

printf("\n 5.学生出生年月日 \n");

printf("\n 6.学生宿舍号 \n");

printf("\n 7.学生班级 \n");

printf("\n 8.学生专业 \n");

printf("\n 9.学生床号 \n");

printf("\n 请选择(1-9):");

scanf("%d",&choice);

switch(choice)

{

case 1:printf("\n 输入修改后的学号:");

scanf("%d",&students[i].num); break;

case 2:printf("\n 输入修改后的姓名:");

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

case 3:printf("\n 输入修改后的性别:");

scanf("%s",students[i].sex); break; /*选择要修改学生的项目*/

case 4:printf("\n 输入修改后的年龄:");

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

case 5:printf("\n 输入修改后的出生年月:");

scanf("%d %d %d",&students[i].,&students[i].,

&students[i].; break;

case 6:printf("\n 输入修改后的宿舍号:");

scanf("%s",students[i].sushe); break;

case 7:printf("\n 输入修改后的班级:");

scanf("%s",students[i].classes); break;

case 8:printf("\n 输入修改后的专业:");

scanf("%s",students[i].zhuanye); break;

case 9:printf("\n 输入修改后的床号:");

scanf("%s",students[i].chuanghao); break;

}

printf("\n 学生信息表 \n");

printf("num name sex age year-month-day sushe classes zhuanye chuanghao\n");

printf(" \n");

printf("%5d %5s %5s %5d %5d %5d %5d %5s %5s %5s %5s\n",

students[i].num,students[i].name,students[i].sex,students[i].age,studen

ts[i].,

students[i].,students[i].,students[i].sushe,

students[i].classes,students[i].zhuanye,students[i].chuanghao);

break; /*输出修改后的学生信息*/

}

if(i==sum)

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

getch();

}

printf("\n\n 继续修改吗?(Y/N)");

choice=getch();

if(choice=='Y'||choice=='y')

{ flag=1;

printf("\n 继续!\n");

} /*是否要继续修改*/

else flag=0;

}while(flag==1);

printf("\n 按任意键返回主菜单!");

getch();

save_file(students,sum); /*保存

修改后的信息*/

}

/*删除信息模块*/

int del(STUDENTS students[],int sum)

{

int i,del_num;

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

scanf("%d",&del_num); /*输入要删除的学生

学号*/ for(i=0;i

{ if(del_num==students[i].num)

{for(;i

students[i].num=students[i+1].num;

printf("删除成功");

}

}

getch();

save_file(students,sum-1); /*保存删除后的学生信息到原

文件*/

return (sum-1) ;

}

/*查询信息模块*/

void inquire(STUDENTS students[],int sum)

{ FILE *fp;

int i,choice,flag,inquire_num;

sum=read_file(students); /*读文件

*/ printf("%d\n",sum);

do

{ system("cls");

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

scanf("%d",&inquire_num); /*输入

要查询的学生学号*/

for(i=0;i

if(students[i].num==inquire_num)

{ printf("\n 此学生信息为: \n");

printf("num name sex age year-month-day sushe classes zhuanye chuanghao\n");

printf(" \n");

printf("%5d %5s %5s %5d %d%d%d %5s %5s %5s %5s\n",

students[i].num,students[i].name,students[i].sex,students[i].age,studen

ts[i].,

students[i].,students[i].,students[i].sushe,

students[i].classes,students[i].zhuanye,students[i].chuanghao);

break; /*输出要查询的

学生信息*/

}

if(i==sum)

{ printf("\n 无此学生信息 \n");

getch();

}

printf("\n\n 是否继续?(Y/N)");

choice=getch();

if(choice=='Y'||choice=='y')

{ flag=1;

printf("\n 继续!\n"); /*是否要继续*/

} else flag=0;

}while(flag==1);

printf("\n 按任意键返回主菜单!");

getch();

}

/*统计信息模块*/

void count(STUDENTS students[],int sum)

{

int i,count=0;

char s[10];

printf("请输入要统计的班级的学生的班级号!");

scanf("%s",s); /*按输入的班级号统计此班的总学生人数*/

for(i=0;i

if(strcmp(s,students[i].classes)==0)

count++;

printf("%s班的总人数为%d人",s,count);

getch();

save_file(students,sum);

}

/*排行信息模块*/

void sort(STUDENTS students[],int sum)

{

int i,j,t;

system("cls");

printf("\n 学生信息排行\n");

printf("\n 按学号排行\n");

printf(" \n");

for(i=0;i

for(j=i+1;j

{ if(students[i].num>students[j].num)

{t=students[i].num;

students[i].num=students[j].num;

students[j].num=t;

}

}

printf(" \n");

printf("num name sex age year-month-day sushe classes zhuanye chuanghao\n");

for(i=0;i

printf("%5d %5s %5s %5d %d%d%d %5s %5s %5s %5s\n",

students[i].num,students[i].name,students[i].sex,students[i].age,studen

ts[i].,students[i].,students[i].,students[i].sushe,

students[i].classes,students[i].zhuanye,students[i].chuanghao); /*输出排序后的学生信息*/

数据库课程设计学生宿舍管理系统

《数据库原理》课程设计说明书 学生宿舍管理系统 学院:计算机与信息科学学院 专业:网络工程 班级:网络1402 姓名学号:吴琳琳 1420140231 姓名学号:周岐浪 1420140217 指导教师:高金华职称讲师 完成时间: 2016年12月 1、管理系统设计的背景、意义及目标 设计背景 设计意义 设计目标 2、系统开发环境 3、系统需求分析 基本功能需求

功能模块 数据字典 4、概念结构设计 概念设计 E_R模型设计 5、逻辑结构设计 将E_R图转换为关系模型 各表关系模型图 6、数据实施和维护 功能实现代码 系统实现效果 7、个人实现的功能 8、总结 1、管理系统设计的背景、意义及目标 设计背景

随着IT事业的发展,如今,我们已经全面跨入信息时代。计算机被广泛的应用于各个行业,人工战略已经转化为信息战略,如何在短时间内获取大量信息并整合信息,成为立足于时代的关键。 为了适应考生人数的急剧增长,当今社会各大高校都在进行扩招政策,学生数量的急剧增加带来信息量的成倍增长,由于信息管理的不善与疏忽,各大高校大小事故时有发生。进行正确的信息管理,对于信息及时处理和反应,能够最大程度的减少学校以及在校学生的损失,减小潜在危机。 学生宿舍是学生生活的基本单位,是同学休息与学习的地方,为了保障同学入住学生宿舍的安全性,信息的处理和管理极为重要。据了解,本校的宿舍信息管理仍然使用传统的手工方式,主要方式是基于文本、表格等纸介质的手工处理,用人工手抄对男女生信宿信息进行处理登记。数据信息处理工作量大,容易出错且不易修改;由于数据繁多,容易丢失,逐条查找记录的方式不易操作,浪费了大量的时间,效率极低。学校的宿舍管理缺乏系统,规范的信息管理手段。 建立学生宿舍管理系统,使宿舍管理工作系统化,规范化,便捷化,程序化,避免宿舍管理的随意性,提高信息处理的速度和准确性,能够及时、准确、有效的查询和修改宿舍情况。 设计的意义 高校规模的扩大,在校学生的基本情况随之层次化、多样化、复杂化,相应的,学生管理工作面临严峻的挑战。高校学生信息日渐庞大,相应的宿舍管理工作变得复杂而困难。传统的账本化工作模式,手工记录学生信息并存档,这样的人工管理方式费时、费事、费力,信息获取慢,更新滞后,查阅困难,容易出错。为了给学生提供一个安全舒适的工作、生活、学习环境,方便宿舍管理工作的同时为学生、教师提供准确实时的信息至关重要。 本校的宿舍信息管理,主要方式是基于文本、表格等纸介质的手工处理,用人工手抄对男女生信宿信息进行处理登记。数据信息处理工作量大,容易出错且不易

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

第一章 §题目描述 图书管理系统设计: 【要求】图书管理信息包括:图书名称、图书编号、单价、作者、存在状态、借书人姓名、性别、学号等。试设计一图书管理系统,使之能提供以下功能: (1)新图书基本信息的输入; (2)图书基本信息的查询; (3)对撤销图书信息的删除; (4)办理借书手续; (5)办理还书手续; 【提示】建立图书馆里信息结构体,结构体成员包括图书名称、图书编号、单价、作者、存在状态、借书人姓名、性别、学号。存在状态设为整型,可用不同数字代表借还状态。借书和还书手续要注意修改结构体的成员变量存在状态的值。 §算法设计 1.设计思想: 在整个系统编写的过程中,涉及了较多C语言知识点,对于不同的数据类型、程序控制结构、数据结构作以分析和总结,并结合这个课题进行综合的应用,在一定程度上做到了对所学知识融会贯通。由此进一步加深、巩固了所学的课程的基本理论知识,培养了综合分析问题、解决问题的能力。在设计程序时,参考了学校图书馆的图书管理系统,实现了程序的模块化、结构化。在主函数中调用各种函数,操作界面简单,易操作,人机互动性较强。 2.实现注释: 这个实用的小型图书管理系统程序以结构体数组指针操作完成,并实现文件信息的录入、修改和保存等功能,所有信息以磁盘文件方式保存,方便用户使用。本图书管理系统分为管理员和学生两个部分,其基本功能包括了对图书信息的存储、查询、添加、删除和借书、还书手续办理等。查询时可按书名、编号等方式查询,找到后输出这本书的所有信息。可查询图书的在库状态,方便用户进行借书、还书操作。在借书还书成功后图书的在库状态自动改变,并更新信息到数据库。系统中主要的数据结构就是图书名称、图书编号、单价、作者、存在状态、借书人姓名、性别、学号等。在处理过程中各项可以作为一本图书的不同属性来进行处理。 3.结构体系设计 图:主函数结构;图:新书信息录入流程;图:图书信息查询(管理员)流程;图:图书信息查询(学生)流程;图:图书信息删除流程;图:办理借书手续流程;图:办理还书手续流程; §程序设计及代码分析 1.程序设计: 下面,我大致介绍一下我的系统的主要功能和注意事项: 当运行此程序时,首先进入系统主界面,然后可以选择[1].管理员登陆(密码:123),[2].学生登陆,[0].退出系统; 选择[1]后进入管理员系统,验证密码成功后显示管理员功能菜单,按数字键选择所需服务。管理员功能菜单中,[1].新书信息录入,[2].图书信息查询,[3].图书信息删除,[4].返回主菜单,[0].退出系统;当出现“请选择”时,输入选项前的数字,输完之后按回车(下同)。首次运行系统需要先选择[1]录入库存书籍信息,图书各信息项须用空格键隔开,输入完毕后信息自动储存并更新至数据库,然后再选择其他操作。当选择[3]时会进入图书信息删除,在这里可以选择删除图书信息等操

C语言课程设计报告-游戏2048

东华理工大学C语言课程设计报告 学院:国际教育学院学院专业:电子信息工程 班级:1420606 学号:201420060638 姓名:钟天运

一、课程设计题目:游戏2048 二、课程设计要求: a)使用C语言编写2048这款游戏 b)能够正常运行,拥有游戏界面。 c)能正常进行游戏从开始到结束。 d)用户操作方便 三、设计思路: a)游戏介绍: i.2048是一款简单的数字类游戏,界面是一个 4*4的方形格子。每个格子里可以为空或者有 一个2^n的数值。 ii.用户可以输入4种指令,分别是:上下左右,游戏会根据用户的指定的方向,将格子中 的数值向对应方向进行移动,直至移动到最边 上的格子或者有其他数值占用,如果碰到等大 数值,将会进行合并。此外,成功移动后,会 在一个空格子随机生成一个2或者4 iii.游戏目标是合成2048这个数值或者更大的数值。 b)实现思路: i.可以使用二维数组来保存4*4格子中的数值 ii.指令,可以通过输入字符函数,读取用户

在键盘上的方向键,进行判断执行对应的代 码。 iii.游戏界面,可以使用简单的特殊制表符,来实现,并通过清屏函数来进行反复同位置打 印界面。 iv.需要判断游戏结束的函数,以及记录游戏分数和步骤的变量 v.当游戏结束时,能够询问用户是否重新开始。 vi.随机生成一个新数,可以调用随机函数,使用时间做种子。 c)实现难点: i.打印游戏界面,要实现灵活能根据棋盘数组里 面的数据灵活打印。 ii.执行操作时,数值的移动和合并。

四、流程图

五、C语言源代码 // 游戏2048.c #include "windows.h" #include "time.h" #include "stdio.h" #include "conio.h" #include "string.h" //宏定义常量方向键值 //const int LEFT = 75, UP = 72, RIGHT = 77, DOWN = 80; #define LEFT 75 #define UP 72 #define RIGHT 77 #define DOWN 80 const char error_str[] = "您上次输入的指令无法识别,请重新输入。"; struct board { int place[4][4]; long int stepn; long int num; //存储游戏分数 long int time; int dtk; //direction key 记录方向键,及操作方向 int over; int zeronum; }; //该函数为游戏运行函数,当只是玩游戏的时候。进入该函数,游戏控制函数。int main() { //place数组为棋盘,其中为零代表空,-1代表不能合并的牌,其他2的倍数值为本身含义,初始化为全0。 struct board board1, board_backup; int newgame(struct board *, int), show(struct board *), operate(struct board *); char str[100] = "首次运行游戏"; //用于记录系统返回给用户的信息,例如:上一步执行向左合并,按键有误等 newgame(&board1, 0); //调用函数为新局初始化,第二个

管理信息系统课程设计报告

管理信息系统课程 设计报告 设计题目:库存管理管理信息系统专业:工商管理 年级班级: 姓名: 指导教师: 小组成员: 指导教师评阅: 指导教师(签字)成绩: 二O一一年月日

摘要: 本系统是以计算机软件技术为基础,利用VisualFoxpro编程技术进行编程设计的软件系统。采用系统结构化开发方法,设计过程主要部分:企业背景调查、需求分析与可行性研究、企业业务流程图绘制、数据结构与数据库设计、数据字典编制、数据流程图绘制,系统总体结构设计。完成信息的显示代码设计输入/输出设计、模块功能与处理过程设计、系统维护、信息系统安全设计、系统实施、系统运行管理制度、网络系统方案设计。包括输入、输出、查找、配送等功能。此系统具有检索迅速、查找方便、可靠性高、存储量大、保密性好、寿命长的优点是一个成本低的现代管理信息系统。最后通仿真验证企业物资管理信息系统对输入信号进行完整解调。 关键词:结构化开发方法;物资管理 Abstract: This paper, based on Computer software technology,and used VisualFoxpro programming technology survey ,Design a software system,which by Structured Approach and design process. Consists of several parts---the company background requirement analysis, and Feasibility study, Enterprise Business flowcharting, and system architecture Design. Complete information is displayed code design,Input / Output Design Module function and Process design,System Maintenance,Design of Information Systems Security,System implementation,System operation management system,Network System Design。 Features: Input、The output、find、distribution. Advantages: quick search, Search for convenient, And high reliability, Large storage capacity, Security and good, Long service life,low cost Management Information System. Finally, the simulation results from verify that Letter Material Management Information systems can make a complete demodulation of the input signals. Key Words:Structured Approach;Materials Management

宿舍管理系统C课程设计

宿舍管理系统C课程设 计 公司内部档案编码:[OPPTR-OPPT28-OPPTL98-OPPNN08]

课程设计 题目:宿舍管理系统 学院河南应用技术职业学院 专业信息工程系 姓名 XXXXXX 学号 XXXXXXXXXXX 指导教师 XXXXXX 完成时间 2017-XX-XX

摘要 随着电脑的普及与使用,后勤的宿舍管理也一改传统的人工管理,更加信息化,时代化,节省人力物力,提高效率。由此,我开发此学生宿舍管理软件。 学生宿舍管理系统用于日常宿舍管理,主要实现了查询宿舍信息和人员信息、修改宿舍信息和人员信息、删除宿舍信息和人员信息、添加宿舍信息和人员信息、数据备份、数据恢复等功能。 学生宿舍管理系统的开发是基于Windows操作系统,采用SQL Server 2008作为后台数据库,使用C#作为开发工具,利用其提供的各种面向对象的开发工具,制作的能领所有人都非常满意的系统。 关键词:宿舍;管理系统;C#;数据库。

目录 引言 (1) 第一章项目简介 (2) 项目背景 (2) 研究目的 (2) 第二章系统需求 (3) 系统概述 (3) 系统功能 (3) 参与者列表 (4) 系统运行环境 (5) 第三章数据库设计 (6) ACCSS数据库 (6) 数据表 (6) 第四章系统实现与测试 (8) 用户登录 (8) 用户注册 (9) 用户主界面 (10)

用户查询 (10) 用户添加 (11) 用户修改 (12) 用户删除 (13) 用户账号管理 (14) 第五章总结 (15) 致谢 (16) 参考文献 (17)

引言 随着计算机技术的发展和互连网时代的到来,计算机早已涉及到我们生活的各个方面,人们对于计算机的应用不再是简单的文字处理和最初的科学计算,更多的利用计算机来进行管理从而减轻我们的工作。而对于学校,Internet技术持续迅猛的发展,也给传统的办学提出了新的模式。但一直以来,学校使用传统人工的方式进行管理,这种管理方式存在着许多缺点,如:效率低、保密性差,另外时间一长,将产生大量的文件和数据,这对于查找、更新和维护带来了不少的困难。为了提高工作效率,提高整个学校的学生信息管理水平,我们开发了这套学生信息管理系统,通过它,我们可以帮助学校、老师方便,快捷的掌握学生的情况,实现学生信息的系统化、规范化、自动化、达到提高学生信息管理效率的目的。而且此系统功能强、稳定性好、操作简单、维护方便。 第 3页 /共 21页

c语言课程设计报告书--学生成绩管理

C 语言程序设计报告 课题:学生成绩管理 时间:

一、需求分析 任务要求: 自学C语言中有关链表及外部文件的内容,设计出学生成绩管理。具体要求如下: 1.主要功能: (1)能按学期、按班级完成对学生成绩的录入、修改 (2)能按班级统计学生的成绩,求学生的总分及平均分,并能根据学生的平均成绩进行排序 (3)能查询学生成绩,不及格科目及学生名单 (4)能按班级输出学生的成绩单 系统功能需求分析: 1、定义一个结构体类型,成员包括学期、班级、各科成绩、建立链表,定义该结构体类型的指针,用于指向各结点; 2、分别建立具有添输入、修改、查询、总分及平均分、排序等功能的子函数,完成相应功能,对程序实现模块化。 二、概要设计 系统总体设计框架: 对程序进行模块化,建立输入、修改、查询、查找和显示功能的子函数,各子函数中运用链表存储数据。 系统功能模块图:

三、详细设计 主要功能模块的算法设计思路如下: 1、输入信息函数 (1)定义指向结构体变量的指针; (2)移动指针,找到插入结点; (3)在要插入的结点输入信息; (4)返回头指针。 2、修改信息 (1)定义指向结构体变量的指针; (2)用指针检验链表中是否有记录,若没记录,出现报错,然后要求重新输入; (3)根据要修改的编号查找对应结点; (4)修改信息;

(5)修改成功。 3、排序函数 (1)定义所要排序的班级和链表的头指针为形参; (2)调用排序函数,把班级和链表的头指针赋给形参; (3)在子函数中进行排序; (4)输出排序结果。 4、显示学生成绩信息(void Disp(Link l)) (1)选择想要查询的项目(学生各科成绩、不及格科目、班级成员);(2)用指针检验是否有记录; (3)若无记录,输出提示信息,返回主函数; 若有记录,移动指针,依次输出记录; 5、查询班级成绩信息(void Find(Link l)) (1)选择所要查询的班级; (2)输入班级: (3)在链表中寻找相应结点; (4)输出结点信息。 以上各个函数的流程图如下:

c语言课程设计报告学生成绩信息管理系统源代码

实验报告 一、问题陈述及其需求分析 (一)问题陈述 学生信息管理系统是对学生信息的基本管理,其中包括以下及模块: (1)增加一个学生的信息(需输入要增加学生的所有信息); (2)统计本班学生总人数及男女生人数。 (3)分别按照学号查找学生的信息;若找到则输出该学生全部信息,否则输出查找不到的提示信息。 (4)按学号对所有学生信息排序,并输出结果; (5)删除一个学生的信息(需指定要删除学生的学号);同时显示删除后的结果。( 二) 功能需求分析 学生信息管理系统设计 学生信息包括:学号,姓名,性别,出生年月,电话 使之提供以下功能: 1、系统以菜单方式工作 2、建立链表并显示 3、插入新的学生信息 4、删除某学号的学生信息 5、查找某学号的学生信息 6、对学生信息排序 7、统计学生人数 8、输出学生信息 二总体设计 (一)模块 依据程序的数据结构,描述该程序的层次结构,如下图:

1、建立链表并显示 void createlist(struct stucode **r); 2、插入新的学生信息 void insert(struct stucode **r); 3、删除某学号的学生信息 void del(struct stucode **r); 4、查找某学号的学生信息 void search1(struct stucode *r); 5、对学生信息排序 void sort(struct stucode **r); 6、统计学生人数 void search2(struct stucode *r); 7、输出学生信息 void out(struct stucode *r); 1 建立链表并显示 2 添加学生信息 3 删除学生信息 息 4 按学号查找学生信 5 对学生信息排序 6统计学生人数 7输出学员信息 8 学生信息写入文件 0退出 main() 菜单函数

教务管理系统课程设计报告

教务管理系统课程设计 报告 文件排版存档编号:[UYTR-OUPT28-KBNTL98-UYNN208]

教务综合管理系统设计报告 专业:软件工程 成员:车振军陆建伟 徐蕾杨思倩 指导老师:徐明 日期:2016-6-15 一、引言 目的 为了保证项目小组能够按时完成小组任务及目标,便于项目小组成员更好地了解项目情况,使项目小组开展的各个过程合理有序,因此确定各个项目模块的开发情况和主要的负责人,供各项目模块的负责人阅读,做到及时协调,按步有序进行项目的开发,减少开发中的不必要损失。 预期的读者是设计人员、开发人员、项目管理人员、测试人员和用户。 背景 高校教务管理工作是高等教育中的一个极为重要的环节,是整个院校管理的核心和基础。面对种类繁多的数据和报表,手工处理方式已经很难跟上现代化管理的步伐,随着计算机及通讯技术的飞速发展,高等教育对教务管理工作提出了更高的要求。尽快改变传统的管理模式,运用现代化手段进行科学管理,已经成为整个教育系统亟待解决的课题之一。 教务管理系统是一个大型复杂的计算机网络信息系统,满足各类高校现在和将来对信息资源采集、存储、处理、组织、管理和利用的需求,实现信息资源的

高度集成与共享,实现信息资源的集中管理和统一调度。为各级决策管理部门提出准确、及时的相关信息和快捷、方便、科学的决策分析处理系统;为信息交流、教务管理提供一个高效快捷的电子化手段;最终达到进一步提高各级领导科学决策水平,提高各院系、各部门管理人员管理水平与办公效率,减轻工作负担的目的。 教务管理系统面向管理员、教师和全校学生,实现学生管理、教师管理、课程管理、成绩处理。 定义 MySQL MySQL是一个关系型数据库管理系统,由瑞典MySQL AB 公司开发,目前属于 Oracle 旗下公司。MySQL是一种关联数据库管理系统,关联数据库将数据保存在不同的表中,而不是将所有数据放在一个大仓库内,这样就增加了速度并提高了灵活性。 MySQL所使用的 SQL 语言是用于访问数据库的最常用标准化语言。MySQL 软件采用了双授权政策,它分为社区版和商业版,由于其体积小、速度快、总体拥有成本低,尤其是开放源码这一特点,一般中小型网站的开发都选择 MySQL 作为网站数据库。 MyEclipse MyEclipse,是在eclipse 基础上加上自己的插件开发而成的功能强大的企业级集成开发环境,主要用于Java、Java EE以及移动应用的开发。MyEclipse 的功能非常强大,支持也十分广泛,尤其是对各种开源产品的支持相当不错。二、需求分析

学生宿舍管理系统课程设计报告

学生宿舍管理信息系统

目录 第一章系统概述 (1) 1.1项目研究的背景与内容 (1) 1.1.1项目研究的背景 (1) 1.1.2项目研究的内容 (1) 1.2项目研究的要求与意义 (1) 1.2.1项目研究的要求 (1) 1.2.2项目研究的意义 (2) 第二章系统分析 (3) 2.1可行性分析(初步调查) (3) 2.1.1管理上的可行性 (3) 2.1.2经济上的可行性 (3) 2.1.3技术上的可行性 (3) 2.2详细调查与分析 (3) 2.2.1管理业务调查 (3) 2.2.1.1组织流程图 (3) 2.2.1.2管理业务流程调查 (4) 2.2.2数据流程调查 (7) 2.2.2.1数据流程图 (7) 2.2.2.2数据字典 (9) 第三章系统设计 (13) 3.1总体设计 (13) 3.1.1功能结构图设计 (13) 3.1.2功能模块设计 (13) 3.2详细设计 (20) 3.2.1代码设计 (20) 3.2.2数据库设计 (20) 3.3计算机处理过程设计 (24) 3.3.1输出设计 (24)

3.3.2输入设计 (25) 结束语 (26) 参考文献 (27)

第一章系统概述 1.1项目研究的背景与内容 1.1.1项目研究的背景 学生宿舍管理系统对于一个学校来说是必不可少的组成部分。目前好多学校还停留在宿舍管理人员手工记录数据的最初阶段,手工记录对于规模小的学校来说还勉强可以接受,但对于学生信息量比较庞大,需要记录存档的数据比较多的高校来说,人工记录是相当麻烦的。而且当查找某条记录时,由于数据量庞大,还只能靠人工去一条条的查找,这样不但麻烦还浪费了许多时间,效率也比较低。当今社会是飞速进步的世界,原始的记录方式已经被社会所淘汰了,计算机化管理正是适应时代的产物。随着学生人数的增多,高校学生宿舍管理的信息量日益庞大,基于此,开发一个“学生宿舍管理系统”来提高宿舍的管理效率,改善管理方式,使其与现代信息化的趋势接轨是很有必要的。 1.1.2项目研究的内容 此学生宿舍管理信息系统主要包括:住宿登记、维修处理、寝室调动、请假管理、夜归管理、查寝管理。通过对宿舍活动各环节产生的数据进行处理,将为上级管理层提供一系列有关宿舍情况的动态信息,使宿舍管理工作规范化、制度化、程序化,促进了宿舍管理的基础水平,避免了业务管理的随意性,提高信息处理的速度和准确性。 1.2项目研究的要求与意义 1.2.1项目研究的要求 1.可以查询及更新学生的基本信息,时时了解学生的生活情况; 2.可以记录及查询每日学生的夜归情况; 3.可以记录及查询每日学生的请假情况; 4.可以记录宿舍楼每日贵重物品的出入,防止物品的丢失; 5.可以记录及查询每间宿舍的报修业务。

c语言课程设计报告书

课程设计报告书 所属课程:c语言 项目:库函数模拟系统 指导老师:邹姝稚 班级:软件1401 姓名:江闯 学号:141403107 分数:

1.任务描述: 本系统开发的代码模拟了下列库函数的功能: (1).模拟gets和puts的功能:能接收一个字符串,将其写入ASCII文件,并且可以读出显示。 (2).在不使用字符串库函数的条件下,编程实现字符串的拷贝,连接,求长,倒置功能。 (3).字符串加密功能:将一段明文建立到一个ASCII文件中,按加密的算法加密后写入密文文件,最终实现将明文和密文文件都显示出来。 (4).编程实现字符串与对应数字的相互转换功能。 2.总体设计: 模块调用图: 图1

函数调用图: 图2 函数功能: (1)函数gp( ):模拟gets和puts的功能 (2)函数kaobei( ):实现字符串的拷贝 (3)函数lianjie( ):实现字符串的连接 (4)函数qiuchang( ):实现字符串的求长 (5)函数daozhi( ):实现字符串的倒置 (6)函数jiami( ):实现字符串的加密功能,最后将明文和密文文件都显示出来 (7)函数zhuanhuan1( ):将数字字符串转换为对应的数字 (8)函数zhuanhuan2( ):将数字转换为对应的数字字符串 3.详细设计: (1).模仿gets和puts功能: gets和puts功能与scanf和printf函数的功能相似,但是也不是完全相同,本系统模拟功能的程序总共运用了两次函数调用技术,模拟gets运用了一次,模拟puts运用了一次。 (2)..字符串的拷贝功能: 字符串的拷贝功能程序设计源于strcpy的功能,其中运用了字符串数组和指针的相关技术,还运用了一组while语句,实现语句的循环,从而将一个字符串拷贝到一个空数组中。

c语言课程设计报告

C语言程序设计B 课程设计报告 设计题目:学生成绩管理系统年级班级: 学号: 姓名: 指导教师: 2020 年 6 月 18 日

目录 一、设计目的 (3) 二、课程设计内容和要求 (4) 三、总体设计 (5) 四、主要步骤 (12) 五、功能实现 (13) 六、功能测试 (64) 七、评价程序 (83) 八、课程设计体会 (84)

一、设计目的 程序设计能力是当代理工类大学生的必备能力,当学生学习了C语言之后,编程能力远远不能达到开发实际应用程序的要求,特备是对其中的指针、结构体、链表和文件部分的理解和应用都比较弱。 程序设计的目的是通过对面向过程的学习,将C语言的主要知识点进行综合,针对提高学生C语言程序设计能力,强化编写较大的应用软件能力,熟练运用已掌握的知识解决实际需要解决的问题,以达到更加熟知指针、链表、结构体、文件读取、标准库的使用。 主要目的为以下几点: 1、熟练掌握面向过程(结构化)程序设计基本知识; 2、综合运用所学知识解决实际问题; 3、受到面向过程(结构化)程序设计的基本训练; 4、体会面向过程(结构化)开发程序的过程。

二、课程设计内容和要求 1.课程设计内容: 学生通过使用C语言进行编写算法,开发学生成绩管理系统,以实现对学生成绩的管理。 2.课程设计要求 1)具有菜单,可以在菜单上进行选择; 2)能实现学生数据录入、修改、删除、查询; 3)能实现数据排序; 4)有数据输出功能; 5)有数据读取与存储功能; 6)一个学生的数据(称为:每条记录)包含姓名、学号、语文、数 学、英语、总分、名次等信息; 7)以结构方式存储每条记录; 8)多条记录以链表方式存储到内存; 9)随时可将全部数据存储到磁盘文件中,方便下次从磁盘读取数据。

超市管理系统课程设计报告

超市管理系统课程 设计报告 1 2020年4月19日

交通运输工程学院 Visual Foxpro 课程设计报告 设计名称:<超市进货供货管理系统> 系 (院): 交通运输工程学院 专业班级: 学号: 姓名: 指导老师: 设计时间: 6月

目录 课程设计任务书 (1) 一、前言 1、课程设计的目的和意义 2、系统功能设计 3、创立项目管理文件 二、 VFP课程设计说明书 1、系统概述 2、系统总体设计 3、数据库设计 4、系统的具体设计过程 5、调试运行退出 6、结束语 7、主程序代码 8、参考文献 3 2020年4月19日

一、前言 1、课程设计的目的和意义 当今,人类正在步入一个以智力资源的占有和配置,知识生 产、分配和使用为最重要因素的知识经济时代,为了适应知识经济时代发展的需要,大力推动信息产业的发展,我们经过对货物信息 管理系统的设计,来提高货物的操作能力,及对理论知识的实践能力,从而提高货物的基本素质,使其能更好的满足社会需求。 超市进货供货管理系统是一个简单实用的系统,它是超市进行货物管理的好帮手。此软件功能齐全,设计合理,使用方便,适合小型超市对繁杂的商品信息信息进行统筹管理,具有严格的系统使用权限管理,具有完善的管理功能,强大的查询功能。 我们进行本次课程设计的主要目的是经过上机实践操作,熟练掌握数据库的设计、表单的设计、表单与数据库的连接、SQL语 言的使用和了解它的功能:数据定义、数据操纵、数据控制,以及 简单VF程序的编写。基本实现货物信息的管理,包括系统的登 录、货物信息的录入、货物信息的浏览、货物信息的查询、货物 信息的修改和货物信息的删除,并对Visual FoxPro6.0的各种功 能有进一步的了解,为我们更进一步深入的学习奠定基础,并在实 践中提高我们的实际应用能力,为我们以后的学习和工作提供方便,使我们更容易融入当今社会,顺应知识经济发展的趋势。 4 2020年4月19日

宿舍管理系统课程设计

课程管理系统课程设计说明书 摘要:宿舍管理系统是一个学校不可缺少的部分,它的内容对于管理者和学生来说都至关重要,所以宿舍管理系统应该能够为管理者提供充足的信息和快捷的查询手段。本文介绍了宿舍管理系统的整个开发过程,阐述了宿舍管理系统的设计背景,对整个系统进行了需求分析、功能分析以及总体设计、详细设计和系统实施的全过程。过程采用VB作为开发工具,SQL Server 2014作为数据库管理工具。 关键词:宿舍管理、VB、SQL Server 2014

目录 第1章序言 (1) 1.1课程设计的目的 (1) 1.2宿舍管理系统的设计背景 (1) 1.3宿舍管理系统的基本内容 (2) 第2章课程管理系统的系统分析 (2) 2.1宿舍管理系统的需求分析 (2) 2.2宿舍管理系统的可行性分析 (2) 2.3系统功能分析 (3) 第3章课程管理系统的总体设计 (4) 3.1构造系统的逻辑模型 (4) 3.2软件系统结构的设计 (4) 3.3宿舍管理系统的系统流程图 (5) 3.4宿舍管理系统的数据流图 (6) 3.5宿舍管理系统的概念结构设计 (7)

3.6宿舍管理系统的数据字典 (8) 3.7宿舍管理系统的物理结构设计 (9) 第4章宿舍管理系统的详细设计 (10) 4.1课程管理系统SQL数据库建立 (10) 4.1.1数据库的创建 (10) 4.1.2表的创建及信息导入 (11) 4.2课程管理系统界面设计 (14) 4.2.1登陆界面 (14) 4.2.2主界面 (15) 4.2.3宿舍信息维护 (16) 4.2.4宿舍信息查询界面 (18) 4.2.5宿舍信息统计界面 (19) 第5章总结 (20) 参考文献 (21) 附录程序部分代码 (22) 1信息维护界面部分代码 (22) 2添加界面部分代码 (23)

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

C语言课程设计 图书管理系统 Books Management System 学生姓名张朝柱 学院名称徐州工程学院学号140 班级13计转本 专业名称计算机科学与技术 指导教师李子龙 2016年5月10日

一、需求分析 为了满足图书管理的要求,通过计算机技术给图书管理人员和读者借、还书带来便利。使用c语言编写了图书管理系统。本系统主要实现图书信息管理的功能,通过此系统可对图书馆库存图书信息进行管理和维护操作。实现了图书馆内管理的一般功能,包括查询、借书、还书、添加、删除、修改图书信息等。所设计的系统以菜单方式工作,为用户提供清晰的使用提示,依据用户的选择来进行各种处理,并且在此过程中能够尽可能的兼容用户使用过程中可能出现的异常情况。图书信息包括编号、书名、作者、数量、在库状态等。图书信息的录入和显示要求有一定的规范格式,录入的图书信息用文件形式保存,并可以对其进行浏览、查询、借阅、还书等基本操作。整个程序实现顺序表操作,对图书信息的操作逐个地进行,一个图书信息的更改不应影响其他的图书记录。 二、算法设计: 1.设计思想: 整个系统制造的而过程中,涉及了较多C语言知识点,对于不同的数据类型、程序控制结构、数据结构作以分析和总结,并结合这个课题进行综合的应用,在一定程度上做到了对所学知识融会贯通。进一步加深、巩固了所学的专业的基本理论知识,培养了综合分析问题、解决问题的能力。在设计程序时,实现了程序的模块化、结构化。在主函数中调用各种子函数,操作界面简单,易操作。 2,设计表示: (1)、整个系统除了主函数外,另外还有各种功能子函数,利用无限次循环语句while()和选择语句swithch()实现各个子函数的调用,系统根据输入的数字选项来调用相应的函数,以实现相应的功能。主要实现了图书的录入、存储、查询、借书、还书、显示库存等功能。 (2)、void Book_Entering(struct SqList &SL);这是一个录入图书信息的函数,它主要实现了顺序表的创建,并且在创建过程中从文件读取信息到顺序表中,以用于后面其他函数的操作。它引用了一个顺序表SL。其他函数调用时只需传入顺序表头即可。 (3)、int main(void);这五个函数时整个图书管理系统的全部菜单函数,Book_Entering();为系统主界面,进入时可选择进入程序和退出程序。menu1();为进入程序时显示的功能菜单,在此菜单可以选择录入、保存图书信息,也可选择进入其他子系统。Book_Inquire();此菜单为进入图书管理系统的菜单,在此可以选择添加、删除、修改图书等操作。cxmenu();为查询系统的菜单,在此可以选择按书名、编号、作者等方式进行查询图书。jhmenu();为借书还书的子菜单,在此可以选择借书还书操作。操作完成后按提示信息进行文件的保存操作。 (4)、void Book_Inquire(struct SqList &SL);这个函数为顺序表的输出函数,把顺序表的头传给函数后,可输出整个顺序表的所有信息。、

C语言课程设计报告-模板

C语言课程设计报告 班级:16 物联网 一、题目说明 (1)读取输入信息,能正确进行数字运算

(2)拥有记忆功能,可查询最近几次计算结果并继续进行数字运算。 二、基本功能实现 (1)能实现两个数之间的加减,乘,除,乘方,开方等运算。 (2)实现记忆功能,可保留近十位结果,可用#键查看。(3)*键作为清0键,清除当前屏幕上的值为0表示重新开三、设计流程(可以画流程图,可以直接写说明)

四、代码 #include #include #include #include double yunsuan(double a, char operate, double b); //处理数值之间的运算void PutRes(double array[], double res, int *i); //保存该次运算结果 int main() { char str[40]; double a = 0; double b = 0; double res = 0; double history[10] = {0,0,0}; char opt; int i = 0; printf("欢迎进入计算功能(eg: 1 \n+ 1 ; '#':查询历史结果; 'q':退出程序)·\n"); while(1){

fgets(str,40,stdin); //将从键盘的一整行标准输入保存在字符串str中 if(sscanf(str,"%lf", &a) == 1){ //将str以长浮点型的格式放入a中,如果返回值为1,说明输入的是数值, scanf("%c %lf", &opt, &b); //获取操作符的值和另外一个操作数的值 res = yunsuan(a,opt,b); //调用yunsuan()函数计算,并将结果给res printf("%lf %c %lf = %lf\n\n",a, opt, b, res); PutRes(history, res, &i); //调用函数PutRes()将本次结果保存到数组history中(i用引用传递) // printf("%d\n", i); }else if(sscanf(str,"%c",&opt) == 1){ //将str以字符型的格式放入opt中,如果返回值为1,说明输入的是字符 if(opt == '#'){ //如果opt为‘#’,则显示history 中的数值 int j = 0; for(j = 0; j < i; ++j){ //i为history中存放的数值个数 printf(" %lf ", history[j]); } printf("\n");

个人信息管理系统-课程设计报告

《数据库系统概论》 课程设计报告 题目:个人信息管理系统 专业:网络工程 班级: 姓名: 指导教师: 成绩: 计算机学院 2017年12月8日

目录 一课程设计的目的与意义 (2) 1.1课程设计的目的 (2) 1.2 课程设计的意义 (3) 二需求分析 (4) 2.1 用户需求 (4) 2.2 系统需要实现的功能和操作如下 (5) 2.3 功能需求分析: (5) 三数据库概念模型设计 (7) 四数据库逻辑模型设计 (12) 4.1 一般逻辑模型设计: (12) 4.2 具体逻辑模型设计: (13) 五数据库物理设计与数据库保护设计 (17) 5.1 设计表间关系 (17) 5.2 物理设计 (18) 5.3 保护设计 (19) 六数据库建立 (20) 七课程设计心得与体会 (25) 八参考资料 (26)

一课程设计的目的与意义 1.1课程设计的目的 数据库课程设计是数据库系统原理实践环节的极为重要的部分,其目的是: (1)培养学生能够应用数据库系统原理在需求分析的基础上对系统进行概念设计,学会设计局部ER图,全局ER图; (2)培养学生能够应用数据库系统在概念设计的基础上应用关系规范化理论对系统进行逻辑设计,学会在ER图基础上设 计出易于查询和操作的合理的规范化关系模型; (3)培养学生能够应用SQL语言对所设计的规范化关系模型进行物理设计,并且能够应用事务处理,存储过程,触发器以 保证数据库系统的数据完整性,安全性,一致性,保证数据 共享和防止数据冲突; (4)培养学生理论与实际相结合的能力,使之能够熟练掌握一种数据库系统(如SQL SERVER)的使用,培养学生开发创新 能力; (5)通过设计实际的数据库系统应用课题,使学生进一步熟悉数据库管理系统的操作技术,提高学生独立分析问题,解决问 题,查阅资料以及自学的能力,以适应计算机产业日新月异

学生宿舍管理系统数据库设计说明

信息工程学院 oracle数据库课程设计 学生宿舍管理系统数据库设计 姓名: 2005544532 春江 专业:计算机科学与技术 指导老师:海霞 完成日期: 2008.6.26

摘要 学生宿舍管理系统是应对学生宿舍管理的现代化、网络化,逐步摆脱当前学生宿舍管理的人工管理方式,提高学生宿舍管理效率而开发的,它包括宿舍学生基本信息管理、楼道工人基本信息管理、宿舍楼基本信息管理、宿舍基本信息管理、宿舍事故基本信息管理、宿舍楼物品出入基本信息管理、宿舍楼保卫处基本信息管理、宿舍配备物品及处理管理等八大功能模块,并提供了对各功能模块的查询和更新功能,且这两种功能基本上是通过存储过程来实现的,其中宿舍学生基本信息管理、宿舍基本信息管理是系统开发的重点。 该系统开发由系统需求分析阶段、概念设计阶段、逻辑设计阶段、数据库实施阶段、系统调试和测试阶段、参考文献、附录等阶段组成。 关键字:学生宿舍管理,宿舍管理现代化,宿舍管理网络化,人工管理,功能模块,存储过程

目录 1. 系统需求分析阶段 (1) 1.1 引言 (1) 1.2 目标与任务 (1) 1.2.1 需求分析阶段的目标 (1) 1.2.2 需求分析阶段的任务 (1) 1.2.3 需求分析阶段成果 (2) 2. 概念设计阶段 (11) 2.1 引言 (11) 2.2 概念模型设计 (12) 2.3 新系统流程 (13) 3.逻辑设计阶段 (14) 3.1逻辑设计的任务和目标 (14) 3.2数据组织 (14) 3.2.1将E-R图转换为关系模型 (14) 3.2.2模型优化 (15) 3.2.3数据库模式定义 (16) 3.2.4用户子模式设计 (16) 3.3数据处理 (16) 4.物理设计阶段 (17) 4.1物理设计阶段的目标与任务 (17) 4.2数据存储方面 (17) 4.3系统功能模块 (17) 4.3.1 楼道工人基本的信息查询和更新模块 (18) 4.3.2 宿舍楼基本信息的查询和更新模块 (18) 4.3.3 宿舍基本信息的查询和更新模块 (19) 4.3.4 学生基本信息的查询和更新模块 (20) 4.3.5 宿舍物品的查询和更新模块 (20) 4.3.6 宿舍事故的查询和更新模块 (21) 4.3.7 宿舍物品处理的查询和更新模块 (21) 4.3.8 宿舍保卫处基本信息的查询和更新模块 (22) 5.数据库实施阶段 (22) 5.1建立数据库、数据表、视图、索引 (22) 5.1.1 建立数据库 (22) 5.1.2 建立数据表 (22) 5.1.3 建立视图 (26) 5.1.4 建立索引 (28)

c语言语言课程设计报告

上海应用技术学院 课程设计 2011~ 2012学年第二学期 设计题目成绩记录簿 院(系)计算机科学与信息工程学院 专业计算机应用技术 班级 11104114 学号 1110411414 学生姓名蒋佳琴 设计时间 2012.06.25 -2012.07.06 指导教师马智娴 提交日期 2012.07.06

上海应用技术学院课程设计任务书 指导教师(签名):马智娴教研室主任(签名):马智娴2012年6 月25日2012年6月25日

目录 1 设计目的 (5) 2 功能描述 (5) 2.1模块功能 (5) 2.2流程图 (6) 3 总体设计 (13) 3.1 功能模块设计 (13) 3.2 数据结构设计 (13) 3.3 函数功能描述 (13) 4 程序实现 (14) 4.2 运行结果 (25) 5课程设计总结 (28)

成绩记录簿 1. 设计要求: 基本功能 a) 添加成绩 b) 删除成绩 c) 查询学生成绩 d) 查询班级成绩 e) 退出 拓展功能 a) 写入文件 b) 读取文件 创新(自拟)功能: 程序实现的其它功能由个人自拟。 2. 设计要求具体说明 基本功能: 成绩记录簿中记录以下数据: 学号、姓名、课程编号、课程名称、成绩、学分,所有成绩都以百分制计分; 输入信息时要检查数据项学号、课程编号、成绩、学分的合法性,学号:8位数字;课程编号:5位数字;成绩:0 ~ 100 之间的整数,学分: 1~ 5之间的实型数。 添加成绩:需要输入学生的学号或姓名、课程编号及成绩,如已有该门课程成绩给出提示; 查询(班级或个人)成绩: a) 查询个人成绩:以学号或姓名作为关键字,可查询一个学生的所有成绩,和已完成 的总学分。 b) 查询班级成绩:以课程编号为关键字,成绩表后面要统计平均分、及格率及全班同 学不同课程在不同分数段分布的人数及百分比。 拓展功能: a) 程序启动时先从文件读入数据,如果文件中没有数据则给出提示; b) 每次修改的数据写入文件。 3. 提示 定义合适的结构体类型,使用链表或数组的方式组织数据。

相关文档
最新文档