教务管理系统编码测试

 2025-01-18 22:24:01  阅读 517  评论 0

摘要:学生管理系统 详细设计说明书编写说明标题:详细设计说明书类别:文档密级:内部编辑软件:Microsoft Word 2000 中文版版本历史:版本 作者 日期 备注V1.01 2002/09/08 详细设计说明书V1.0.2 2003/08/30 详细设计说明书编写目的:本文档详细描述组成系统的各个软件组成部分,

学生管理系统

详细设计说明书

教务管理系统编码测试

编写说明

标题:详细设计说明书

类别:文档

密级:内部

编辑软件:Microsoft Word 2000 中文版

版本历史:

版本 作者 日期 备注

V1.01 2002/09/08 详细设计说明书

V1.0.2 2003/08/30 详细设计说明书

编写目的:

本文档详细描述组成系统的各个软件组成部分,包括每个软件模块(或类)的属性、方法、事件,各软件模块的外部接口说明,测试要点等内容。

本文档由项目组维护,供项目组使用。

第1章 引言

1.1. 项目说明

项目名称:乐山师范学院学生管理系统。

项目提出单位:乐山师范学院计算机科学系

项目开发者:乐山师范学院计算机科学系Attract工作室

项目使用部门:乐山师范学院各系科(学院)

项目建设单位:乐山师范学院计算机科学系

1.2. 项目定义

系科综合管理信息系统是为了适应现代化学校管理的需要,加快推进我校数字化校园建设、充分利用校园网,利用网络、多媒体等计算机应用技术和手段,提高办公效率、改善质量的高效管理信息系统。

学生管理系统是系科综合管理信息系统的重要组成部分。

1.3. 编写目的

本文档为“乐山师范学院系科综合管理信息系统(学生管理系统)详细设计说明书”,主要用于为实现系统的功能而进行的系统详细设计说明,详细系统各软件组成模块的实现流程、功能、接口、编译、测试要点等内容,便于对系统的编码进行指导和约束。本文档供项目组全体成员及项目组领导,单元测试人员阅读。

1.4. 参考资料

《学生管理系统_系统软件需求说明书》。

《学生管理系统_系统概要设计说明书》。

《学生管理系统_数据库设计说明书(数据库字典)》。

第3章 系统功能实现

从前面需求分析可以看出,系统功能庞杂,主要分为前台浏览器(B/S)信息发布和数据查询,后台(C/S)数据管理和处理,学生管理功能部分数据分为5类:新生相关;在校生相关;组织社团相关;毕业生相关;学生成绩综合查询相关。从使用和操作的功能上分,有三种用户:普通客户(浏览器浏览、查询);业务数据管理人员(学生工作辅导员、教务干事);系统管理员。为便于整个系统组织管理,把各个相对独立的数据或功能组织到整个大系统中来,我们把各个相对独立的功能完全独立设计,编译成独立的目标(功能)模块(single Executable),各功能模块最后被集成到一个称为虚拟桌面的控制台模块中。相应地将系统结构分为一个控制台程序和五个子系统,各子系统又分为若干各子模块。对应于每一个模块,几乎都有录入、查询、修改、删除、查看详细资料这几个功能。整个业务流程就是由这几种基本功能实现的。在这里每个模块都要用到的功能没必要在每个子模块里重复阐述,在每个子模块里只列出区别于其它子模块的功能实现。

3.1. 系统控制台模块

功能:

各子功能模块的组织和调用;

统一的登陆界面实现到数据库服务器的登陆;

显示系科主页Web的首页(主要是系科重要通知、消息等);学院通知页面;系科每周工作安排。

系统图标。

设计:

1. 登陆数据库:

输入数据库服务器名(ServerIP)、用户账号()UserID、密码(PassWord);以账号DEP_Computer0、密码DEP_Computer0登陆数据库服务器,检索系统权限表,根据权限设置相应功能模块:

①无此用户或禁止权限

Enable := False

②浏览权限

Enable := True

修改 UserID := Dep_Computer1

修改 PassWord := 1111111111111

③修改权限

Enable := True

修改 UserID := Dep_Computer2

修改 PassWord := 222222222222

2. 采用Win31下程序组、程序项的原理组织各执行模块:

登陆服务器

新生录取数据、入学报道管理

学生信息(在校)管理

学生社团管理

毕业生信息管理

学生成绩综合查询与统计

各程序组、程序项的显示分别可以是分层/树状/大图标/小图标等方式;各程序项或菜单项的名称命名为相应功能模块的目标代码文件名。

3.可执行功能模块的调用执行:通过程序项或菜单项名称获取可执行目标代码文件名,应用API函数CreateProcess开始执行。

跪求c语言教务管理系统源代码

#include <stdio.h>

struct Student

{

int num

char name[20]

float score[3]

float avg

}stus[30]

void Add()//填加学员

void List()//学员详细列表

void Asc()//显示后三名学员

void Desc()//显示前三名学员

void Display()

void main()

{

int s

while(1)

{

printf("学员管理系统:n")

printf("1、增加学员n")

printf("2、学员详细列表n")

printf("3、显示前三名n")

printf("4、显示后三名n")

printf("5、显示平均成绩n")

printf("6、退出n")

printf("请选择:")

scanf("%d",&s)

switch(s)

{

case 1:

Add()

break

case 2:

List()

break

case 3:

Desc()

Display()

break

case 4:

Asc()

Display()

break

case 5:

Display()

break

case 6:

return

break

default:

printf("选择错误!n")

break

}

}

}

void Add()

{

int i,k

float sum

char c

for(i=0i<30i++)

{

printf("请输入第%d个学员信息:n",i+1)

printf("学号:")

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

printf("姓名:")

fflush(stdin)

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

printf("请输入三门课的成绩:n")

sum=0

for(k=0k<3k++)

{

printf("%d:",k+1)

scanf("%f",&stus[i].score[k])

sum+=stus[i].score[k]

}

stus[i].avg=sum/3

printf("是否继续?")

fflush(stdin)

scanf("%c",&c)

if(c=='n' || c=='N')

return

}

}

void List()

{

int i,j=0

printf("学号t姓名t成绩1t成绩2t成绩3t平均n")

for(i=0i<30i++)

{

if(stus[i].num!=0)

{

printf("%dt%st%.2ft%.2ft%.2ft%.2fn",stus[i].num,stus[i].name,stus[i].score[0],stus[i].score[1],stus[i].score[2],stus[i].avg)

}

}

}

void Asc()

{

int i,j

struct Student c

for(i=0i<30i++)

{ for(j=0j<29-ij++)

if(stus[j].avg<stus[j+1].avg)

{

c=stus[j]

stus[j]=stus[j+1]

stus[j+1]=c

}

}

}

void Desc()

{

int i,j

struct Student c

for(i=0i<30i++)

{ for(j=0j<29-ij++)

if(stus[j].avg>stus[j+1].avg)

{

c=stus[j]

stus[j]=stus[j+1]

stus[j+1]=c

}

}

}

void Display()

{

int i,d=0

printf("学号t姓名t平均n")

for(i=0i<30i++)

{

if(stus[i].num!=0)

{

printf("%dt%st%.2fn",stus[i].num,stus[i].name,stus[i].avg)

d++

}

if(d==3)

break

}

}

看看我写的这个!

怎样用C语言编写教务管理系统

#include <stdio.h>

#include <string.h>

#include <windows.h>

struct student

{

long int num

char name[20]

int age

char sex[4]

char b[30]

char p[15]

}

int n=0

struct student stu[100]

struct student *p

void lr()

void ll()

void cx()

void xg()

void sc()

void main()

{

int z

printf("+---------------------------+n")

printf("| 欢迎使用学生信息管理系统 |n")

printf("+---------------------------+n")

printf("提示:为保证您的操作得到保存,请按正常顺序退出系统^_^n")

do

{

printf("nttt--------------------------------n")

printf("ttt+主菜单|n")

printf("ttt--------------------------------n")

printf("ttt+[1]----录入学生信息 |n")

printf("ttt+[2]----浏览学生信息 |n")

printf("ttt+[3]----查询学生信息 |n")

printf("ttt+[4]----删除学生信息 |n")

printf("ttt+[5]----修改学生信息 |n")

printf("ttt+[0]----退出系统 |n")

printf("ttt--------------------------------n")

printf("请输入您的选择:")

scanf("%d", &z)

system("color 2f")

switch(z)

{

case 0 :break

case 1 :lr()break

case 2 :ll()break

case 3 :cx()break

case 4 :sc()break

case 5 :xg()break

default:printf("n无效选项!")

}

}

while(z!= 0)

}

void lr()

{

int y

if(n==0)

p=stu

do

{

printf("--------------------n")

printf("请输入学生的学号:")

scanf("%ld",&p->num)

printf("请输入学生的姓名:")

scanf("%s",p->name)

printf("请输入学生的年龄:")

scanf("%d",&p->age)

printf("请输入学生的性别:")

scanf("%s",p->sex)

printf("请输入学生的地址:")

scanf("%s",p->b)

printf("请输入学生的电话:")

scanf("%s",p->p)

n++

p++

printf("n1.继续输入.n0.输入完毕.n")

printf("请选择:")

scanf("%d",&y)

}

while(y==1)

printf("提示:输入完毕!你一共输入%d个n",n)

}

void ll()

{

int i,j

if(n!=0)

{ printf("学生总数:%dn", n)

printf("学号t姓名t年龄t性别t地址tt电话n")

printf("-----------------------------------------------------n")

for(i=0i<ni++)

printf("%ldt%st%dt%st%stt%sn",stu[i].num,stu[i].name,stu[i].age,stu[i].sex,stu[i].b,stu[i].p)

}

else printf("提示:无学生数据,请输入数据!")

}

void cx()

{

int c

int w,i,j=0

char name[20]

if(n!=0)

{

do{printf("n")

printf("+--------------------+n")

printf("| 按学号查询 请按 1 |n")

printf("| 按姓名查询 请按 2 |n")

printf("| 取消请按 0 |n")

printf("+--------------------+n")

printf("请输入您的选择:")

scanf("%d", &c)

switch(c)

{

case 0:break

case 1:

printf("请输入学生的学号")

scanf("%ld", &w)

printf("n")

for(i=0i<ni++)

if(stu[i].num==w)

{

printf("n学号t姓名t年龄t性别t地址tt电话n")

printf("%ldt%st%dt%st%stt%sn",stu[i].num,stu[i].name,stu[i].age,stu[i].sex,stu[i].b,stu[i].p)

j=1

}

if(j==0)

printf("提示:没有该学生记录,请核对!")

break

case 2:

printf("请输入学生的姓名:")

scanf("%s", name)

printf("n")

for(i=0i<ni++)

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

{

printf("n学号t姓名t年龄t性别t地址tt电话n")

j=1

printf("%ldt%st%dt%st%stt%sn",stu[i].num,stu[i].name,stu[i].age,stu[i].sex,stu[i].b,stu[i].p)

}

if(j==0)

printf("提示:没有该学生记录,请核对!")

break

default:

printf("n提示:无效选项!")

break

}

}while(c!= 0)

}else printf("提示:无学生数据,请输入数据!")

return

}

void xg()

{

long int num

int i,j,c

if(n!=0)

{

printf("请输入您要修改的学生的学号:")

scanf("%ld", &num)

printf("n")

for(i=0i<ni++)

if(stu[i].num==num)

j=i

do{

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")

printf("请输入您的选择:")

scanf("%d", &c)

printf("n")

switch(c)

{

case 0:break

case 1:printf("请输入新姓名:")

scanf("%s",stu[j].name)

break

case 2:printf("请输入新年龄:")

scanf("%d",&stu[j].age)

break

case 3:printf("请输入新性别:")

scanf("%s",stu[j].sex)

break

case 4:printf("请输入新学号:")

scanf("%ld",&stu[j].num)

break

case 5:printf("请输入新地址:")

scanf("%s",stu[j].b)

break

case 6:printf("请输入新电话:")

scanf("%s",stu[j].p)

break

default:

printf("n无效选项!")

break

}

}while(c!= 0)

}else printf("提示:无学生数据,请输入数据!")

}

void sc()

{

long int num

int i,j,e

if(n!=0)

{

printf("学号t姓名t年龄t性别t地址tt电话n")

printf("-----------------------------------------------------n")

for(i=0i<ni++)

printf("%ldt%st%dt%st%stt%sn",stu[i].num,stu[i].name,stu[i].age,stu[i].sex,stu[i].b,stu[i].p)

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

scanf("%ld", &num)

printf("n")

for(i=0i<ni++)

if(num==stu[i].num)

j=i

if(j!=(n-1))

{

for(e=i-1e<ne++,j++)

{

stu[j].num=stu[j+1].num

strcpy(stu[j].name,stu[j+1].name)

strcpy(stu[j].sex,stu[j+1].sex)

stu[j].age=stu[j+1].age

strcpy(stu[j].b,stu[j+1].b)

strcpy(stu[j].p,stu[j+1].p)

n--p--

}

}else {n--p--}

printf("提示:删除完毕!")

}elseprintf("提示:无学生数据,请输入数据!")

}

如何做一个完整的教务管理系统?

大体上有两个部分把

1 存储信息的数据库部分

2 管理信息的程序部分

将学生信息,老师信息,通讯录的信息设计成数据库中的表

将各种信息之间的关系转化成程序逻辑

先明白自己到底要什么功能,也就是明确需求。然后找一个自己熟悉的语言和数据库,然后开始概要设计和详细设计,然后建表编码。 如果你要的东西比较简单,而且单人使用,建议你可以看看Access,他不仅是数据库可以存储数据,也可以用他本身编写一个完整的系统,也很方便,他本身就提供很多控件和窗体之类的 只要您有兴趣,这是非常简单的(用Access开发),学起来不难,我记得我是在高中的时候学的这个,不需要什么理论知识,自己动手做一下就什么都明白了 如果你想采用别的开发工具来开发,那么建议你看看Delphi和VB,比较容易上手,另外给你一些源代码参考一下: http://www.delphiun.com/search.asp?keyword=%BD%CC%CE%F1%B9%DC%C0%ED&sea_type=down

以上就是关于如何测试一个学生管理系统——写测试用例·全部的内容,如果了解更多相关内容,可以关注,你们的支持是我们更新的动力!

版权声明:我们致力于保护作者版权,注重分享,被刊用文章【教务管理系统编码测试】因无法核实真实出处,未能及时与作者取得联系,或有版权异议的,请联系管理员,我们会立即处理! 部分文章是来自自研大数据AI进行生成,内容摘自(百度百科,百度知道,头条百科,中国民法典,刑法,牛津词典,新华词典,汉语词典,国家院校,科普平台)等数据,内容仅供学习参考,不准确地方联系删除处理!;

原文链接:https://www.yxiso.com/zhishi/1040607.html

发表评论:

关于我们
院校搜的目标不仅是为用户提供数据和信息,更是成为每一位学子梦想实现的桥梁。我们相信,通过准确的信息与专业的指导,每一位学子都能找到属于自己的教育之路,迈向成功的未来。助力每一个梦想,实现更美好的未来!
联系方式
电话:
地址:广东省中山市
Email:beimuxi@protonmail.com

Copyright © 2022 院校搜 Inc. 保留所有权利。 Powered by BEIMUCMS 3.0.3

页面耗时0.1119秒, 内存占用2.02 MB, 访问数据库22次

陕ICP备14005772号-15