学生成绩管理系统(带文件的保存的)

合集下载

学生成绩查询管理系统

学生成绩查询管理系统

目录摘要 (1)关键词 (1)前言 (2)一、系统设计相关技术介绍 (3)1.技术 (3)2.C#语言 (5)二、系统运行环境 (7)1、的调试环境 (7)2、软件要求 (8)三、系统分析 (8)1、系统总体分析 (8)2、系统需要解决的主要问题 (9)3、系统应该具备的基本功能 (9)四、系统模块简介 (10)1、系统功能模块图 (10)2、系统功能模块说明 (10)1)学生管理 (10)2)教师管理 (10)2、使用的各种流程图 (11)1)、系统使用例图 (11)2)、考生在线考试活动图 (12)五、系统数据库的介绍 (13)1、系统数据库设计思路 (13)2、主要的数据库表单(STDINFO) (13)1)学生信息数据表(stdInfo) (13)2)教师表(administrator) (14)3)成绩表(achievement) (14)六、系统功能实现 (14)1系统主界面 (14)2系统后台管理登录页面 (15)3学生界面 (16)4学生信息变更查询 (17)5系统后台管理登录主页面 (18)6学生信息添加管理 (19)七、相关代码模块 (22)结论及体会 (31)参考文献 (32)说明书评语 (33)摘要人类已进入21世纪,科学技术突飞猛进,经济知识和信息产业初见端倪,特别是信息技术和网络技术的讯速发展和广泛应用,对社会的政治,经济,军事,文化等领域产生越来越深刻.学生成绩管理系统是一个教育单位不可缺少的部分,它的内容对于学校的决策者和管理者来说都至关重要,所以学生成绩查询管理系统应该能够为用户提供充足的信息和快捷的查询手段。可以说它是完全为学生朋友服务的系统,并且适用于各所高校.本论文叙述到的学生成绩管理系统是用IIS+ASP网页编程+SQL数据库实现的.关键词考试查询系统 C# SQL2005Server前言学生成绩管理工作是高校教育工作的一项重要内容。

教务管理工作是指学校管理人员按照一定教育方针,运用先进的管理手段,组织、协调、指挥并指导各用户活动,以便高效率、高质量地完成各项教学任务,完成国家所制定的教育目标。

2019年大学学生成绩管理系统PPT课件.ppt

2019年大学学生成绩管理系统PPT课件.ppt

北京源智天下科技有限公司
1-6
联系方式:
系统分析(续)
• • • • 2、学生端功能 学生可以查看自己的基本信息。 学生可以查看自己的成绩,已修学分和不及格成绩信息 学生端可以进行远程选课,并且可以查看课表。
北京源智天下科技有限公司
1-7
联系方式:
北京源智天下科技有限公司
1-13
联系方式:
教师端主窗体设计

主窗体是指用户登录后的窗体,对于本系统来说,有两 个主窗体,学生端主窗体和教师端主窗体,主窗体采用 的是现在最流行的风格,左边是一个树状列表用于导航 ,右边采用卡片布局显示各个功能模块。
北京源智天下科技有限公司
1-14
联系方式:
教师端密码修改模块

该模块主要完成教师端修改密码的功能。
北京源智天下科技有限公司
1-15
联系方式:
新生报到模块的开发与设计

前面一节完成了密码修改模块的开发与设计,其只是一 个简单的系统功能模块,从本节开始将进入系统真正的 与成绩管理有关的模块,这一节将首先介绍新生报到模 块的开发过程
联系方式:
开发设计课程成绩录入模块

系统已经实现了选课设置的功能,但对课程成绩的管理 功能还没有实现,本节将完成课程成绩录入的功能
北京源智天下科技有限公司
1-20
联系方式:
添加课程模块的开发与设计

系统的两个比较大的模块已经完成,已经可以对选课进 行控制,并且也可以录入成绩,但此时的课程还是固定 的,或者说只能用SQL语句输入,这当然是不可以的, 用户是不可能接受的,所以本节将开发一个添加课程的 模块。

北京源智天下科技有限公司
1-26

学生成绩管理系统ER图+流程图+组织结构图-课程设计

学生成绩管理系统ER图+流程图+组织结构图-课程设计

学生成绩管理系统ER图+流程图+组织结构图-课程设计学生成绩管理系统分析与设计一、系统概述1。

1、现状分析目前在中小学中,学生的成绩管理主要以班级为单位,由各班班主任以表格的形式直接输入电脑中,故就整个学校而言对于学生成绩的管理较为分散,涉及的人员较多且不利于相关的统计工作,学生的成绩信息也得不到长久的保存。

现行系统业务流程图如下:1。

2、系统目标总体目标:实现学校对所有班级、学生的成绩信息进行系统的管理,便于操作,便于查询。

具体目标:1、管理员能够方便地对信息进行添加、编辑、删除、查询等操作。

2、教务人员可以方便地查询所需的成绩信息,并得到相应的统计报表。

3、简化现有系统的流程,使之更加便捷、高效。

1。

3、系统开发方法客户端采用Visual ,后台采用SQL server 2000。

1。

4、开发计划1、初步调查:以询问、查询资料的形式,对学校现行的学生成绩管理方式进行调查,确定现行方式所存在的问题以及相关需求并进行分析。

2、可行性分析:根据初步调查的情况,从技术上、经济上、管理上进行开发的可能性和必要性分析。

3、详细调查:详细了解情况并绘制组织结构图和业务流程图.4、系统的设计:根据对所调查情况的分析,进行系统的各种设计。

二、系统分析2.1、系统需求分析功能需求简述:为了掌握学生的各门课程的成绩情况,将信息保存在一个本地的数据库中,并通过一定的统计功能,实现对全部学生成绩的统计分析,满足教务人员对成绩信息的管理和查询需求,提供一个电子化的成绩管理平台. 系统目标:对于本系统,我们需要实现以下一些基本功能:1、掌握每位学生每一门课程的成绩信息,并记录在数据库中.2、可以按不同的方式对成绩进行管理(1)、按课程,对学习每门课程的每位学生进行添加、删除和修改。

(2)、按学生,对每位学生学习的每门课程的成绩进行添加、删除和修改。

3、可以针对不同的需求,提供相关的报表打印功能. 2。

2、业务流程分析2。

学生成绩管理系统课程设计报告c++

学生成绩管理系统课程设计报告c++

学生成绩管理系统课程设计报告前言一、系统的设计需求1、整个系统均用C语言实现;2、利用指针、链表来实现学生成绩的数据结构设计;3、系统具有输入、显示、删除、排序、退出基本功能;4、系统的各个功能模块都用函数的形式来实现;5、可以将学生信息全部显示出来出来。

二、系统的功能模块划分每一条记录包括一个学生的姓名、成绩。

同时1、输入功能:一次可以完成一个学生成绩记录的输入。

2、显示功能:完成全部学生记录的显示。

3、删除功能:对指定学生的成绩进行删除.4、排序功能:按学生从大到小进行排序。

5、修改功能:对学生的成绩进行修改。

三、系统的整体设计1。

数据结构设计:A、输入功能的设计:void insert_func(void){char s_temp[4];ptr=(struct student *) malloc(sizeof(struct student));printf(” Student name :");gets(ptr—〉name);// gets从标准输入设备读取字符串// printf(” Student score:");gets(s_temp);ptr->score = atoi(s_temp);//把字符串转化为整数//B、删除功能的设计:void delete_func(void)//现在进入删除操作//{char del_name[20];printf(" Delete student name:");gets(del_name);prev = head;current = head-〉next;while ((current != NULL)&& (strcmp(current-〉name , del_name)!=0))//用到了strcmp 比较字符串{prev = current;current = current->next;}if (current != NULL){prev—〉next = current—〉next;free(current);//释放当前位置//printf(" %s student record deleted\n”,del_name);//输出被删除的姓名//}elseprintf(” Student %s not found\n",del_name);//否则此学生不存在//C、排序功能的设计:void sort_func(void)//插入数据//{prev = head;//把头指针所指的值付给prev//current = head—〉next;//把头指针的下一个指针值付给当前指针所指的位置// while ((current != NULL)&&(current—〉score 〉ptr—〉score)){prev = current;current = current->next;}ptr-〉next = current;prev—〉next = ptr;D、修改功能的设计:void modify_func(void){char n_temp[20],s_temp[4];//定义字符类型//printf(” Modify student name:”);gets(n_temp);//这样输入姓名current=head—>next;while ((current != NULL)&& (strcmp(current->name , n_temp)!=0)){prev = current;current = current-〉next;}if (current != NULL){printf(” **************************\n");printf(” Student name :%s\n”,current-〉name);printf(” Student score:%d\n”,current—>score);printf(” **************************\n");printf(" Please enter new score:”);gets(s_temp);current—〉score = atoi(s_temp);printf(" %s student record modified\n”,n_temp);}//输出被修改的成绩//elseprintf(” Student %s not found\n”,n_temp);//否则此学生不存在//anykey_func();E、显示功能的设计:void display_func(void)//定义显示//{int count=0;system(”cls”);if(head—〉next == NULL)//如果头指针所指数为空//{printf(” No student record\n”);//则输出学生记录为空//}else//否则输出学生姓名和成绩//{printf(” NAME SCORE\n”);printf(” —--——--—————-—-—-——-—-——-——\n”);current=head->next;while(current != NULL){printf(” %-20s %3d\n", current—〉name, current—〉score);count++;current=current—〉next;if(count % 20 == 0)getch();}printf(” --——————-—————————--—-—-—--\n”);printf(" Total %d record(s) found\n”, count);2.功能模块的具体设计整个系统除了主函数外,另外还有8个函数,实现5大功能:输入功能、显示功能、排序功能、删除功能、修改功能。

VFP实验--学生成绩管理系统

VFP实验--学生成绩管理系统

实验一建立项目管理器、建立数据库和表、输入部分数据一、实验目的1.熟悉V isual Foxpro 项目管理器的使用;2.熟悉数据库的概念和V isual Foxpro 数据表的概念;3.掌握数据表的建立方法,数据直接输入的方法;4.熟练掌握表文件的打开、浏览、关闭。

二、实验内容;1.建立项目管理器“学生成绩管理系统”2.建立数据库“成绩库”,并创建4个与学生成绩管理系统工作密切相关的数据表“班级号名”、“学生”、“学生选课”、“课程”;3.直接为“班级号名”、“课程”两个数据表输入数据。

三、实验步骤(一)Visual Foxpro 基本操作1. Visual Foxpro 的启动开始→程序→ Visual Foxpro 6.0,或:双击桌面V isual Foxpro 6.0 快捷方式图标。

2. Visual Foxpro 的退出在V isual Foxpro 的命令窗口中键入q uit 或选V isual Foxpro 菜单中文件→退出。

13.工作目录及表单区域的设置·在机房的学生数据盘(例如D:盘)上建一目录,命名为“成绩管理”。

·进入V isual Foxpro,选菜单中的工具→选项→“文件位置”选项卡,找到“默认目录”,如图1-1。

图1-1 选择默认目录·点击“修改”按钮,进入图1-2,再单击按钮,按图1-2 设置后,单击“确定”按钮。

·单击“表单”选项卡,将“最大设计区”选为 1024×768。

·单击“设置为默认值”按钮,再单击“确定”按钮。

注意:如果学生机房安装了还原卡,则每次上机或重新启动后都要重新进行以上第3步“工作目录及表单区域的设置。

”(二)项目管理器和数据库的建立21.项目管理器(1)什么是项目管理器项目管理器是V isual Foxpro 开发应用系统的综合性平台,在这里可以建立数据库、表单、菜单、程序、编译等。

python超详细实现完整学生成绩管理系统

python超详细实现完整学生成绩管理系统

python超详细实现完整学⽣成绩管理系统⽬录学⽣成绩管理系统简介源代码students.txtmain.pyLogin.pydb.pyMenuPage.pyview.py学⽣成绩管理系统简介⼀个带有登录界⾯具有增减改查功能的学⽣成绩管理系统(⾯向对象思想,利⽤tkinter库进⾏制作,利⽤.txt⽂件进⾏存储数据)源代码仅供学习参考,最好还是⾃⼰多敲多练习(实践是检验真理的唯⼀标准) students.txt⽤于存储数据main.pyfrom tkinter import *from Login import *import tkinter as tkroot = ()root.title('欢迎进⼊学⽣成绩管理系统')LoginPage(root)root.mainloop()Login.pyfrom tkinter import *from tkinter.messagebox import *from MenuPage import *class LoginPage(object):def __init__(self, master=None):self.root = master # 定义内部变量rootself.root.geometry('%dx%d' % (300, 180)) # 设置窗⼝⼤⼩ername = StringVar()self.password = StringVar()self.createPage()def createPage(self):self.page = Frame(self.root) # 创建Frameself.page.pack()Label(self.page).grid(row=0, stick=W)Label(self.page, text='账户: ').grid(row=1, stick=W, pady=10)Entry(self.page, textvariable=ername).grid(row=1, column=1, stick=E)Label(self.page, text='密码: ').grid(row=2, stick=W, pady=10)Entry(self.page, textvariable=self.password, show='*').grid(row=2, column=1, stick=E) Button(self.page, text='登陆', command=self.loginCheck).grid(row=3, stick=W, pady=10) Button(self.page, text='退出', command=self.page.quit).grid(row=3, column=1, stick=E) def loginCheck(self):name = ername.get()password = self.password.get()if name == 'hacker707' and password == 'admin':self.page.destroy()MenuPage(self.root)else:showinfo(title='错误', message='账号或密码错误!')db.pyimport jsonclass StudentDB(object):def __init__(self):self.students = []self._load_students_data()def insert(self, student):self.students.append(student)print(self.students)def all(self):return self.studentsdef delete_by_name(self, name): # 删除数据for student in self.students:if name == student["name"]:self.students.remove(student)breakelse:return Falsereturn True# 查询def search_by_name(self, name):for student in self.students:if name == student["name"]:return student # 姓名+成绩else:return False# 修改def update(self, stu): # 修改数据name = stu["name"]for student in self.students:if name == student["name"]:student.update(stu)return Trueelse:return False# 加载⽂件def _load_students_data(self):with open("students.txt", "r", encoding="utf-8") as f:text = f.read()if text:self.students = json.loads(text)# 保存数据def save_data(self):with open("students.txt", 'w', encoding="utf-8") as f:text = json.dumps(self.students, ensure_ascii=False)f.write(text)db = StudentDB()MenuPage.pyimport tkinter as tkfrom view import *class MenuPage(object):def __init__(self, master=None):self.root = masterself.root.geometry('%dx%d' % (600, 400))self.create_page()self.input_page = InputFrame(self.root)self.query_page = QuerryFrame(self.root)self.delete_page = DeleteFrame(self.root)self.update_page = UpdateFrame(self.root)self.about_page = AboutFrame(self.root)self.input_page.pack()def create_page(self):# 创建菜单对象menubar = tk.Menu(self.root)# add_command 添加menubar.add_command(label="录⼊", command=self.input_data) # label menubar.add_command(label="查询", command=self.query_data) # label menubar.add_command(label="删除", command=self.delete_data) # label menubar.add_command(label="修改", command=self.update_data) # label menubar.add_command(label="关于", command=self.about_data) # label # 设置菜单栏self.root.config(menu=menubar)# 切换界⾯def input_data(self):self.input_page.pack()self.update_page.pack_forget()self.delete_page.pack_forget()self.about_page.pack_forget()self.query_page.pack_forget()def query_data(self):self.input_page.pack_forget()self.query_page.pack()self.update_page.pack_forget()self.delete_page.pack_forget()self.about_page.pack_forget()def update_data(self):self.input_page.pack_forget()self.update_page.pack()self.delete_page.pack_forget()self.about_page.pack_forget()self.query_page.pack_forget()def delete_data(self):self.input_page.pack_forget()self.update_page.pack_forget()self.delete_page.pack()self.about_page.pack_forget()self.query_page.pack_forget()def about_data(self):self.input_page.pack_forget()self.update_page.pack_forget()self.delete_page.pack_forget()self.about_page.pack()self.query_page.pack_forget()view.pyimport tkinter as tkfrom db import dbfrom tkinter import ttk# 录⼊类class InputFrame(tk.Frame):def __init__(self, master=None):super().__init__(master)self.root = master = tk.StringVar()self.math = tk.StringVar()self.chinese = tk.StringVar()self.english = tk.StringVar()self.status = tk.StringVar()self.create_page()def create_page(self):bel(self).grid(row=0, stick=tk.W, pady=10)bel(self, text="姓名:").grid(row=1, stick=tk.W, pady=10)# 单⾏⽂本框 entry,textvariable绑定变量tk.Entry(self, textvariable=).grid(row=1, column=1, stick=tk.E)bel(self, text="数学:").grid(row=2, stick=tk.W, pady=10)# 单⾏⽂本框 entry,textvariable绑定变量tk.Entry(self, textvariable=self.math).grid(row=2, column=1, stick=tk.E)bel(self, text="语⽂:").grid(row=3, stick=tk.W, pady=10)# 单⾏⽂本框 entry,textvariable绑定变量tk.Entry(self, textvariable=self.chinese).grid(row=3, column=1, stick=tk.E)bel(self, text="英语:").grid(row=4, stick=tk.W, pady=10)# 单⾏⽂本框 entry,textvariable绑定变量tk.Entry(self, textvariable=self.english).grid(row=4, column=1, stick=tk.E)tk.Button(self, text="录⼊", command=self.recode_student).grid(row=5, column=1, stick=tk.E, pady=10) bel(self, textvariable=self.status).grid(row=6, column=1, stick=tk.E, pady=10)# 录⼊成绩def recode_student(self):student = {"name": .get(),"math": self.math.get(),"chinese": self.chinese.get(),"english": self.english.get(),} # ⼀个学⽣的成绩db.insert(student)# get()得到值# set()设置值self.status.set("插⼊数据成功!")self._clear_data()db.save_data()# 清空⽂本数据def _clear_data(self):.set("")self.math.set("")self.chinese.set("")self.english.set("")# 查询类class QuerryFrame(tk.Frame):def __init__(self, master=None):super().__init__(master)self.root = masterself.create_page()# 创建查询界⾯def create_page(self):self.create_tree_view()self.show_data_frame()# grid()tk.Button(self, text="刷新数据", command=self.show_data_frame).pack(anchor=tk.E, pady=5) # Treeviewdef create_tree_view(self):# 表头columns = ("name", "chinese", "math", "english")self.tree_view = ttk.Treeview(self, show='headings', columns=columns)self.tree_view.column("name", width=80, anchor='center')self.tree_view.column("chinese", width=80, anchor='center')self.tree_view.column("math", width=80, anchor='center')self.tree_view.column("english", width=80, anchor='center')self.tree_view.heading("name", text='姓名')self.tree_view.heading("chinese", text='语⽂')self.tree_view.heading("math", text='数学')self.tree_view.heading("english", text='英语')self.tree_view.pack()# 显⽰数据def show_data_frame(self):# 删除原节点 map(int,值)for i in map(self.tree_view.delete, self.tree_view.get_children("")):pass# 拿到列表⾥⾯所有值、students[]students = db.all()# 同时拿到索引跟value值for index, stu in enumerate(students):self.tree_view.insert('', index, values=(stu["name"], stu["chinese"], stu["math"], stu["english"]))class DeleteFrame(tk.Frame):def __init__(self, master=None):super().__init__(master)bel(self, text='删除数据').pack()self.status = tk.StringVar()self.de_name = tk.StringVar() # 获取删除学⽣的姓名self.create_page()# 创建界⾯def create_page(self):bel(self, text="根据姓名删除信息").pack(anchor=tk.W, padx=20)e1 = tk.Entry(self, textvariable=self.de_name)e1.pack(side=tk.LEFT, padx=20, pady=5)tk.Button(self, text='删除', command=self._delete).pack(side=tk.RIGHT)bel(self, textvariable=self.status).pack()# 删除def _delete(self):name = self.de_name.get()print(name)result = db.delete_by_name(name)if result:self.status.set(f'{name}已经被删')self.de_name.set("")else:self.status.set(f'{name}不存在')class UpdateFrame(tk.Frame):def __init__(self, master=None):super().__init__(master)self.root = masterbel(self, text='修改界⾯').pack()self.change_frame = tk.Frame(self)self.change_frame.pack() = tk.StringVar()self.math = tk.StringVar()self.chinese = tk.StringVar()self.english = tk.StringVar()self.status = tk.StringVar()self.create_page()def create_page(self):bel(self.change_frame).grid(row=0, stick=tk.W, pady=10)bel(self.change_frame, text="姓名:").grid(row=1, stick=tk.W, pady=10)# 单⾏⽂本框 entry,textvariable绑定变量tk.Entry(self.change_frame, textvariable=).grid(row=1, column=1, stick=tk.E)bel(self.change_frame, text="数学:").grid(row=2, stick=tk.W, pady=10)# 单⾏⽂本框 entry,textvariable绑定变量tk.Entry(self.change_frame, textvariable=self.math).grid(row=2, column=1, stick=tk.E)bel(self.change_frame, text="语⽂:").grid(row=3, stick=tk.W, pady=10)# 单⾏⽂本框 entry,textvariable绑定变量tk.Entry(self.change_frame, textvariable=self.chinese).grid(row=3, column=1, stick=tk.E)bel(self.change_frame, text="英语:").grid(row=4, stick=tk.W, pady=10)# 单⾏⽂本框 entry,textvariable绑定变量tk.Entry(self.change_frame, textvariable=self.english).grid(row=4, column=1, stick=tk.E)# 按钮tk.Button(self.change_frame, text='查询', command=self._search).grid(row=6, column=0, stick=tk.W, pady=10) tk.Button(self.change_frame, text='修改', command=self._change).grid(row=6, column=1, stick=tk.E, pady=10) bel(self.change_frame, textvariable=self.status).grid(row=7, column=1, stick=tk.E, pady=10)# 查询def _search(self):name = .get()student = db.search_by_name(name)if student:self.math.set(student["math"])self.chinese.set(student["chinese"])self.english.set(student["english"])self.status.set(f'查询到{name}同学的信息')else:self.status.set(f'没有查询到{name}同学的信息')# 更改成绩def _change(self):name = .get()math = self.math.get()chinese = self.chinese.get()english = self.english.get()stu = {"name": name,"math": math,"chinese": chinese,"english": english,}r = db.update(stu)if r:self.status.set(f"{name}同学的信息更新完毕")else:self.status.set(f"{name}同学的信息更新失败")class AboutFrame(tk.Frame):def __init__(self, master=None):super().__init__(master)self.root = masterself.create_page()def create_page(self):bel(self, text="关于本作品(⼈⽣苦短,我⽤python)").pack(anchor=tk.W)以上就是使⽤python实现学⽣成绩管理系统,如果有改进的建议,欢迎在评论区留⾔奥~这篇⽂章参加了csdn的活动,还请⼤家多多三连⽀持⼀下博主,你们的⽀持就是我创作的动⼒到此这篇关于python超详细实现完整学⽣成绩管理系统的⽂章就介绍到这了,更多相关python 学⽣成绩管理系统内容请搜索以前的⽂章或继续浏览下⾯的相关⽂章希望⼤家以后多多⽀持!。

学生成绩管理系统软件结构图

学生成绩管理系统
一、软件功能层次图
根据需求分析得出学生成绩管理系统功能结构图.如图1所示:
图1学生成绩管理系统功能结构图
二、软件体系结构
学生成绩管理系统是对学生成绩信息的管理和维护,是以数据为中心的体系结构,依靠数据联通各个部分,使之协调工作。

图2是学生成绩管理系统对应的体系结构示意图
图2学生成绩管理系统的体系结构示意图
根据需求分析根据系统安全性的需求,增加了用户身份验证环节。

对关联图进行细化和修改,根据该系统的数据关系,整理出了图3所示的数据流图。

本数据流图采用了事务分析的方法。

图3 学生成绩管理系统数据流图
从软件的整体布局考虑增加了系统初始化模块和菜单显示模块,用以完成系统运行环境的搭建,图4是对图3的数据流图进行分析和分解得到的软件结构图。

图4学生成绩管理系统软件结构图
三、教师服务子系统
1、功能描述
教师首先输入账号和密码登录系统,系统验证教师身份的有效性,无效则提示原因,有效则进入管理界面.教师可以通过学生学号插入或查询学生的信息和成绩,也可以对成绩进行排序处理,可以整体宏观的比较学生成绩,分析学生成绩。

2、模块结构
根据功能和数据流图可以得出教师服务子系统的软件结构图,如图5所示
图5教师服务系统软件结构图
四、学生服务子系统
1、功能描述
学生首先输入账号和密码登录系统,系统验证学生身份的有效性,无效则提示原因,有效则进入管理界面。

学生可以通过学号插入或查询学生的信息和成绩,也可以对成绩进行排序处理,可以整体宏观的了解自己的成绩
2、模块结构
根据功能和数据流图可以得出学生服务子系统的软件结构图,如图6所示
图6学生服务系统软件结构图。

C++课程设计(学生成绩管理系统·)

武汉工程大学计算机科学与工程学院综合设计报告设计名称:软件基础综合设计设计题目: 小型学生成绩管理系统学生学号: 1305120107专业班级:2013计算机科学与技术01班学生姓名:何经纬学生成绩:指导教师(职称): 邹君(讲师)完成时间:2015.4.7~2015。

5.15武汉工程大学计算机科学与工程学院制说明:1、报告中的第一、二、三项由指导教师在综合设计开始前填写并发给每个学生;四、五两项(中英文摘要)由学生在完成综合设计后填写。

2、学生成绩由指导教师根据学生的设计情况给出各项分值及总评成绩.3、指导教师评语一栏由指导教师就学生在整个综合设计期间的表现、设计完成情况、报告的质量及答辩等方面,给出客观、全面的评价.4、所有学生必须参加综合设计的答辩环节。

凡不参加答辩者,其成绩一律按不及格处理。

答辩小组成员应由2人及以上教师组成。

5、报告正文字数一般应不少于5000字,也可由指导教师根据本门综合设计的情况另行规定。

6、平时表现成绩低于6分的学生,其综合设计成绩按不及格处理。

7、此表格式为武汉工程大学计算机科学与工程学院提供的基本格式(适用于学院各类综合设计),各教研室可根据本门综合设计的特点及内容做适当的调整,并上报学院批准.答辩记录表成绩评定表学生姓名:何经纬学号: 1305120107 班级: 2013计算机科学与技术01目录摘要 (I)Abstract (II)第一章课题背景 (1)1.1 课题概述 (1)1。

2 主要问题及技术要求 (1)1。

3 主要工作内容 (2)1。

4 报告布局 (3)第二章需求与设计分析 (4)2。

1 需求分析 (4)2。

2 功能分析 (4)2.3 结构分析 (5)第三章详细设计 (8)3.1 系统详细设计 (8)第四章结果及分析 (18)4。

1 设计结果 (18)4.2 输入异常测试用例 (23)4。

3 设计分析 (24)总结 (25)致谢 (26)参考文献 (27)摘要随着科学技术的发展,计算机在工业方面和日常生活中发挥着越来越重要的作用。

学生档案管理系统使用说明及操作方法

学生档案管理系统使用说明及操作方法学生档案管理系统,是获省级优秀科研成果一等奖的项目之一。

是实现学校管理科学化、标准化、现代化不可缺少的软件之一。

学生档案管理系统分单机版和网络版。

学生档案管理系统,是国家知识产权保护产品,登记号:2006SRO8527。

一、软件简介1、菜单:有基本设置、输入数据、查询及打印、统计四个菜单。

2、功能:学生档案管理。

单项信息或全项信息查询;范围或分类查询;高级查询。

打印或随机打印诸多信息资料和报表。

用扫描仪、数码相机、摄像头将学生相片以JPG的格式存盘,可单人录入、还可按班级或年级批量导入相片。

记事栏目可录入约200个文字,专供在校期间的学业情况及奖惩登录。

清库功能。

保存数据功能。

恢复数据功能。

毕业升级功能。

压缩数据库功能。

统计功能。

Excel数据批量导入和导出功能。

学生档案管理系统、多功能自动分班系统、考试成绩分析评价系统、考场编排系统,数据共享。

可批量导入数据和照片。

二、操作方法1、基本设置菜单。

进入系统,点击“基本设置”菜单,进入“基本设置”对话框。

有“初始化设置、其它设置、打印选项”三个选项。

⑴初始化设置。

分三步进行:①设置学校类型:点击对应的单选按钮。

一个类型学校只设置1次。

②设置年部数目:学校有多少个年部,就选对应的数字数,单击“设置”钮。

③设置班级数目:每个年部有多少个班级,就选对应的数字数,单击“设置”钮。

一个年部设置1次,有多少个年部就设置多少次。

⑵其它设置。

有五项功能,供选择。

①清库功能:能清空库内的所有内容。

在使用本软件期间,此键不能乱用。

清库之前要先保存数据,不然会造成数据全部丢失的后果。

②保存数据功能。

即备份数据,可直接将库内数据保存到硬盘中。

点击“保存数据”键,选择盘区(C、D、E、……),起文件名,就把数据保存起来了。

③恢复数据功能。

就是将保存的数据调回来,在系统中重新运行。

④毕业升级功能。

“毕业升级功能”键一学年使用1次。

单击此键,进入“另存为”对话框,把库中所有的数据保存起来,供历史查询用。

基于JAVA的学生成绩管理系统的设计与实现(含源文件)

基于JAVA的学生成绩管理系统的设计与实现摘要:本文按照目前流行的B/S体系结构模式,结合现有的学生成绩管理系统的现状,采用SQL Server 2000数据库和JAVA技术,设计开发了学生成绩管理系统系统,本系统分为前台页面和后台管理两大部分,主要实现成绩查询、成绩删除、成绩添加、成绩修改四大主体功能。

在细节方面,着重考虑了用户添加成绩、成绩查询两方面的简易操作,力求为客户带来方便。

关键词:B/S模式;JA V A;SQL ServerAbstract:This according to the popular B / S architecture model, combined with the current status of student achievement management system using SQL Server 2000 database and JAVA technology, design and development of student achievement management system, the system is divided into front page and back office management two parts, the main accomplishment query results to delete, add scores, results modify the four main functions. In detail, the focus to consider the user to add results, performance query both easy to operate, and strive to bring convenience for customers.Key words:B/S mode;JA V A;SQL Server近年来,随着高校的扩招,运用常规的方法对学生成绩的管理变得越来越困难,因此学校迫切的需要一种高效的系统来帮助其管理学生的成绩。

  1. 1、下载文档前请自行甄别文档内容的完整性,平台不提供额外的编辑、内容补充、找答案等附加服务。
  2. 2、"仅部分预览"的文档,不可在线预览部分如存在完整性等问题,可反馈申请退款(可完整预览的文档不适用该条件!)。
  3. 3、如文档侵犯您的权益,请联系客服反馈,我们会尽快为您处理(人工客服工作时间:9:00-18:30)。

#include<stdio.h>
#include<stdlib.h>
#include<conio.h>
#define SIZE 4
struct student
{
char name[10];
char come[10];
char sex[10];
char politics[10];
char interest[15];
int num[10];
int con;
int score[3];
float ave;
}stu[SIZE],work;
void main()
{
void Welcome();
void rang();
void delet();
FILE *fp1,*fp2,*fp3;int i,j,sum;
for(i=0;i<SIZE;i++)
{
printf("\n***************************************\n"); printf("\ninput score of student %d: \n",i+1);
printf("name:");
scanf("%s",stu[i].name);
printf("come:");
scanf("%s",stu[i].come);
printf("sex:");
scanf("%s",stu[i].sex);
printf("politics:");
scanf("%s",stu[i].politics);
printf("interest:");
scanf("%s",stu[i].interest);
printf("NO.:");
scanf("%s",stu[i].num);
sum=0;
for(j=0;j<3;j++)
{
printf("score %d: ",j+1);
scanf("%d",&stu[i].score[j]);
sum+=stu[i].score[j];}
stu[i].ave=sum/5.0;
}
fp1=fopen("x.txt","wb");
for(i=0;i<SIZE;i++)
if(fwrite(&stu[i],sizeof(struct student),1,fp1)!=1)
{
printf("file write error\n");
}
fclose(fp1);
fp1=fopen("x.txt","rb");
printf("the orginal data is\n");
for(i=0;i<SIZE;i++)
{
fread(&stu[i],sizeof(struct student),1,fp1);
printf("%-10s %-10s %-5s %-15s %-15s %3s %7d %7d %7d %7d %7d %8.2f\n",
stu[i].name,stu[i].come,stu[i].sex,stu[i].politics,stu[i].interest,stu[i].num,
stu[i].score[0],stu[i].score[1],stu[i].score[2],stu[i].score[3],stu[i].score[4],stu[i].ave);
}
rang();
fp2=fopen("x1.txt","rb");
printf("the score as follow\n");
for(i=0;i<SIZE;i++)
{
fread(&stu[i],sizeof(struct student),1,fp1);
printf("%-10s%-10s %-5s %-15s %-15s %3s %7d %7d %7d %7d %7d %8.2f\n",stu[i].name,stu[i].nu m,
stu[i].politics,stu[i].interest,
stu[i].score[0],stu[i].score[1],stu[i].score[2],stu[i].score[3],stu[i].score[4],stu[i].ave);
}
fclose(fp2);
delet();
fp3=fopen("x1.txt","rb");
fclose(fp3);
}
void Welcome()
{
system("clr");
printf("Welcome to use this project");
printf("please input: ");
}
void rang()
{
FILE *fp1,*fp2;
int i,j;
if ((fp1=fopen("x.txt","rb"))==NULL)
{
printf("This file can not open\n");
exit(0);
}
if((fp2=fopen("x1.txt","wb"))==NULL)
{
printf("The file write error\n");
exit(0);
}
for(i=0;i<SIZE;i++)
if(fread(&stu[i],sizeof(struct student),1,fp1)!=1) {
printf("file read error\n");
exit(0);
}
for(i=0;i<SIZE;i++)
{
for(j=i+1;j<SIZE;j++)
if(stu[i].ave<stu[j].ave)
{
work=stu[i];stu[i]=stu[j];stu[j]=work;
}
fwrite(&stu[i],sizeof(struct student),1,fp2);
}
fclose(fp1);
fclose(fp2);
}
void delet()
{
FILE *fp;
int i,j,n;
if((fp=fopen("x1.txt","rb"))==NULL)
{
printf("can not open file\n");
exit(0);
}
printf("\n");
fclose(fp);
n=i;
for(i=0;i<n;i++)
{
for(j=0;j<5;j++)
{
if(stu[i].score[j]<60) stu[i].con++;
}
}
if((fp=fopen("x1.txt","wb"))==NULL)
{
printf("can not open file\n");
exit(0);
}
printf("the data accorded with the demond is\n");
for(i=0;i<n;i++)
{
if(stu[i].con<4)
{
if(fwrite(&stu[i],sizeof(struct student),1,fp)!=1)
printf("error/n");
printf("%-10s%-10s%-5s%-15s%-15s%3s%7d%7d%7d%7d%7d %8.2f\n",
stu[i].name,stu[i].come,stu[i].sex,stu[i].politics,stu[i].interest,stu[i].num,
stu[i].score[0],stu[i].score[1],stu[i].score[2],stu[i].score[3],stu[i].score[4],stu[i].ave);
}
}
fclose(fp);
}。

相关文档
最新文档