(2020年7月整理)奖学金计算系统源代码.doc
学生奖学金与助学金管理系统设计方案

学生奖学金与助学金管理系统设计方案一、引言随着教育事业的发展和学生数量的增加,学生奖学金与助学金管理工作面临着诸多挑战。
传统的手工操作已经无法满足快速、准确、高效的管理需求。
因此,开发一款学生奖学金与助学金管理系统具有重要意义。
本文将设计一套全新的学生奖学金与助学金管理系统,旨在提高管理效率、减少工作量,并确保公正、透明的分配方式。
二、系统功能设计1. 学生信息管理功能该功能模块主要用于录入、存储和管理学生的基本信息,包括学生姓名、学号、院系、专业等。
同时,该模块也应提供查询、修改和删除学生信息的功能,以保证学生信息的准确性和完整性。
2. 奖学金评审功能该功能模块用于奖学金评审的整个过程管理,包括评审申请材料的提交、评委评审过程的记录和奖学金最终评定结果的生成。
系统应支持附件上传功能,以便学生能够提交所需的申请材料。
同时,评审过程中的评委应能够便捷地进行评审操作,并提供评审意见。
最终,系统根据评审结果自动生成奖学金名单。
3. 助学金申请功能该功能模块用于学生助学金的申请管理。
学生可以通过系统提交助学金申请,填写个人申请表并上传相关附件。
申请过程中,系统应支持自动生成申请表、自动检查申请材料的完整性,并提供状态跟踪功能,让学生和管理员都能随时查看进度。
4. 统计与报表功能系统应具备统计与报表功能,方便管理员对奖学金与助学金申请情况进行综合统计和分析。
管理员可以根据需要,生成各类报表,如奖学金评审报表、助学金申请统计报表等,以便更好地了解学生申请情况并进行资金分配决策。
5. 系统安全与权限管理功能为确保数据的安全性和系统的稳定运行,系统应具备安全与权限管理功能。
管理员应具备创建、管理用户账号的权限,可以对不同的角色进行权限分配。
同时,系统应具备日志记录功能,以便追踪用户操作,保障数据的完整性和可追溯性。
6. 系统界面设计系统界面设计应简洁清晰,便于用户操作和理解。
界面布局应合理,元素排版整齐美观,颜色搭配和谐,以提升用户体验。
奖学金评定管理系统(Java)

奖学金评定管理系统班级:电商0804班组长:张毅0805230441组员:***0805230438左继攀0805230439崔永超0805230403谷飞0805230410目录第一章概论 (3)(一)开发奖学金评定管理系统的目的和意义 (3)(二)系统设计相关原理 (3)(1)Java简介 (3)(2)开发工具简介 (5)(3)系统使用数据库简介 (5)第二章系统规划 (6)(一)系统开发的需求分析 (6)(1)系统的性能需求 (6)(2)系统的功能需求 (7)(二)可行性分析 (7)(1)技术性分析 (7)(2)经济性分析 (8)(3)系统运行可行性 (8)第三章项目开发计划 (8)(一)项目开发组织机构的设置和人员的安排 (8)(1)小组成员: (8)(2)系统开发计划 (8)(二)项目开发经费的概算 (9)由于考虑到此项目为课程设计,所以不考虑项目开发经费。
(9)(三)项目所需的硬件和软件资源等 (9)第四章系统分析 (9)(一)系统业务流程分析 (9)(1)学生信息管理模块 (9)(2)学生学科成绩查询管理模块 (10)(3)德育成绩信息查询管理模块 (10)(4)奖学金综合查询管理模块 (10)(二)系统数据流程分析 (10)(1)奖学金管理评定系统 (11)(2)奖学金管理评定系统第一层 (11)(3)奖学金管理评定系统的展开 (11)(三)系统功能分析 (12)(四)数据字典 (12)(1)数据元素条目 (12)(2)数据结构条目 (15)(3)数据流条目 (17)(4)数据存储条目 (18)(5)处理过程条目 (19)(五)数据加工处理的描述 (19)(六)管理信息系统流程设计图 (20)第五章系统总体设计 (20)(一)功能结构设计 (20)1(1)登录模块 (20)(2)奖学金管理模块 (20)(3)学生基本信息操作模块 (20)(4)学生学科成绩操作模块 (21)(5)德育信息成绩操作模块 (21)(6)奖学金基本查询模块 (21)(二)系统信息处理流程设计 (21)(三)输出设计(主要是指打印输出设计) (21)(四)代码设计(见附录) (24)(五)设计说明书 (24)(1)模块结构图 (25)(2)登录模块 (25)(3)奖学金管理模块 (25)(4)学生基本信息模块 (26)(5)学生学科成绩模块 (26)(6)德育成绩模块 (26)(7)奖学金综合模块 (27)第六章系统实施 (27)(一)程序框图 (27)(1)登录界面 (27)(2)查询信息 (27)(3)删除信息 (28)(二)源代码(见附录) (28)(三)系统模拟数据 (28)(四)测试用例 (30)(五)系统使用说明书 (34)(1)系统环境 (34)1)系统运行的硬件环境: (34)2)系统运行的软件环境: (34)(2)系统安装 (35)(3)功能简介 (35)(4)操作步骤 (35)第七章总结 (38)第八章附录 (39)(一)登录界面 (39)(二)管理界面 (42)(三)学生基本信息界面 (44)(四)学生学科成绩界面 (48)(五)学生德育成绩 (51)(六)奖学金评定系统综合管理界面 (55)(八)学生基本信息修改: (62)2第一章概论(一)开发奖学金评定管理系统的目的和意义奖学金管理工作是高校学生管理工作的重要组成部分。
C语言实现学生奖学金评定系统

C语⾔实现学⽣奖学⾦评定系统本⽂实例为⼤家分享了C语⾔实现学⽣奖学⾦评定系统的具体代码,供⼤家参考,具体内容如下说明:学⽣综合积分由⽂化积分和德育积分构成,⽂化积分是所有门课程成绩总和除以课程门数(平均分),德育积分是参加各类活动的积分,学⽣综合积分=⽂化积分×70%+德育积分×30%。
按照学⽣综合积分排名,获得⼀等奖学⾦1名学⽣,获得⼆等奖学⾦2名学⽣,获得三等奖学⾦3名学⽣,项⽬要求输⼊班级学⽣成绩信息,输出获得奖学⾦的学⽣名单。
已知学⽣成绩信息包括学号、姓名、英语成绩、⽹络成绩、C语⾔成绩、数据库成绩、⽂化积分、德育积分和综合积分,运⾏结果如图所⽰。
实例分析与实现⾸先,按照学⽣成绩信息的组成定义结构体,输⼊各门课程成绩和德育积分,根据已知的公式,求出⽂化积分和综合积分;然后,按照学⽣综合积分从⾼到低进⾏排名,并输出排名结果;最后,输出下标为0的学⽣获得⼀等奖学⾦,下标为1和2的学⽣获得⼆等奖学⾦,下标为3、4、5的学⽣获得三等奖学⾦。
具体算法如下。
①定义结构体类型student。
②利⽤定义的结构体类型定义⼀个⼗名学⽣的数组。
③利⽤for循环输⼊⼗名学⽣的各门课成绩,计算学⽣⽂化积分和综合积分。
④利⽤for循环嵌套对学⽣的成绩按总积分由⾼到低进⾏排序。
⑤打印总积分从⾼到低的排序结果、获得奖学⾦学⽣名单。
⑥实现输出每门课程不及格学⽣名单。
#include <stdio.h>#include <windows.h>#include<string.h>#define NUM 10 //修改NUM就可以加学⽣数量struct student_scores{//定义学⽣属性int ID;//学号char name[20];//姓名float english;//英语float net;//⽹络float c_;//c语⾔float sql_;//数据库float ave;//⽂化积分float deyu;//德育德育积分是参加各类活动的积分float zonghe;//综合};//学⽣综合积分由⽂化积分和德育积分构成,⽂化积分是所有门课程成绩总和除以课程门数(平均分),//德育积分是参加各类活动的积分,学⽣综合积分=⽂化积分×70%+德育积分×30%。
奖学金管理信息系统操作手册(学生版)

奖学金管理信息系统操作手册(学生版)一、系统设置1、浏览器相关要求、设置只能使用360安全浏览器或谷歌浏览器。
注意:360安全浏览器必须切换到极速模式,模式选择可以点击闪电图标设置,如下图:二、学生申请1、申请网址:http://116.236.218.71:8080/infomssh/login_online.jsp2、注册(往年已注册学生今年也要重新注册,按“初次使用”界面登录)根据右侧文字提示,鼠标放于“初次使用”上,页面自动跳转为注册页面,按照流程进行资料完善(密码由学生自己设置)。
注册完成后,自动登录进系统。
3、登录输入用户名(即身份证号码)和密码(注册时学生自己设置的),登录系统。
然后会出现界面要选择学生的辅导员,在对应的“辅导员”下拉栏中选择对应的辅导员即可。
4、填写申请信息(以国家奖学金为例)(1)登录后,点击【国家奖学金】→【学生申请】,进行三奖在线申请。
(2)在线填写申请信息。
(3)查看申请记录。
三、常见问题解答1、学生在申请时,一个人可以同时申请多个奖项吗?进入国家奖学金申请模块修改、补充学籍信息填写主要获奖情况,获奖日期必须早于申请日期,不能填写本年度正在申请的奖项(如三大奖学金、专业奖学金等)。
三大奖学金的获奖年份不能是申请年份,且获奖月份只能是“11月”。
申请理由必须以第一人称填写,注意字数要求。
辅导员未审核前,保存按钮一直存在,当辅导员审核通过后,按钮会消失。
答:不可以。
国家奖学金、国家励志奖学金和上海市奖学金,三奖中只可申请一个奖项。
2、学生递交申请后,发现申请表内容有错别字等问题,如何进行修改?答:可联系辅导员,院系级或校级用户可以直接对学生申请表进行修改,无需退回学生。
3、什么时候打印申请表?答:在学校审核通过之前,打印的都是样表,表头带有“样表”两个字的;当学校审核通过后,流程状态为“高校审核通过”,方可打印正式申请表。
4、一个浏览器能不能同时登陆两个账号?答:不能,其中一个账号一定要正常退出,也就是点击右上角的退出按钮才能登录下一个帐号。
奖学金管理系统

目录摘要 (1)1绪论 (2)1.1奖学金管理系统的介绍 (2)1.2课题研究背景 (2)1.3课题研究目的 (2)1.4课题研究的意义 (2)2.系统开发环境 (4)2.1系统开发环境和运行环境 (4)2.2开发工具介绍 (4)2.2.1 技术概述 (4)2.2.2 Access 数据库简介 (7)2.2.3 B/S构架简介 (8)3 需求分析 (10)3.1功能需求 (10)3.2 性能要求 (10)3.3总体需求 (11)4 系统设计 (12)4.1系统模块设计 (12)4.2数据库分析和设计 (13)4.2.1数据库分析 (13)4.2.2 业务流分析 (14)4.2.3数据表分析 (14)4.2.4 数据库概念设计 (15)4.2.5 数据库逻辑结构设计 (17)4.2.6数据库连接 (19)5功能实现与系统测试 (20)5.1功能实现 (20)5.1.1系统登录模块的实现 (20)5.1.2 用户注册模块的实现 (22)5.2软件测试 (24)5.2.1测试方法 (24)5.2.2测试结果记录 (25)5.3 网站发布 (26)5.4设计结论 (27)参考文献 (28)致谢 (29)奖学金管理系统设计与实现摘要:本系统是基于个人网页设计为基础的一个奖学金管理系统,采用的是+ACCESS技术结合的模式的信息管理平台,研究基于B/S模式的在线管理的实现。
该管理系统主要通过Microsoft Visual studio 2008进行前台设计,而利用页面访问Access 数据库实现网站的设计与研发。
进而实现用户注册,用户权限登录及管理用户、信息等功能。
改变传统的奖学金管理方式,可以大大减轻各部门的工作量,方便奖学金评选的真实性和公开性。
使奖学金管理工作能够更加多样、灵活、高效,极大的适应日益变化的社会。
关键词:奖学金管理;;ACCESS;B/S模式1绪论随着计算机技术的发展和互联网时代的到来,我们已经进入了信息时代,在这数字化的时代里,学校的教学管理受到了极大的挑战。
奖学金评定系统源代码

import java.awt.*;import java.awt.event.*;import java.sql.*;import javax.swing.event.*;import javax.swing.*;public class mainFrame extends JFrame implements ActionListener{JPanel p;JLabel pic=new JLabel(new ImageIcon("G:\\奖学金评定系统\\校门.jpg"));JSplitPane top;JSplitPane left;JPanel labelLeft,labelRight;JButton jb1,jb2,jb3,jb4,jchushihua,help,jgeshihua;JComboBox jcom1,jcom2,jcom3,jcom4;JLabel jlab1,jlab2,jlab3,jlab4;JPanel jp1,jp2,jp3,jp4;JTextField jt,jtt;JPanel mark;mainFrame(){super("haha");Dimension screen=Toolkit.getDefaultToolkit().getScreenSize();this.setBounds((screen.width-1000)/2,(screen.height-610)/2,1000,610);//窗口居中Container c=this.getContentPane();labelLeft=new JPanel(); // 左边面板labelRight=new JPanel(); //右边面板labelLeft.setLayout(new GridLayout(8,3,0,0));jp1=new JPanel(); //信息入库jlab1=new JLabel(new ImageIcon("G:\\奖学金评定系统\\信息入库.jpg"));jcom1=new JComboBox(new String[]{"基本信息入库","分数入库"});jcom1.setFont(new Font("黑体",Font.CENTER_BASELINE,20));jb1=new JButton("确定");jb1.addActionListener(this);jb1.setSize(53,40);jp1.add(jlab1);jp1.add(jcom1);jp1.add(jb1);labelLeft.add(jp1);jp2=new JPanel();// 查找信息jlab2=new JLabel(new ImageIcon("G:\\奖学金评定系统\\信息查找.jpg"));jcom2=new JComboBox(new String[]{"姓名","学号"});jcom2.setFont(new Font("黑体",Font.CENTER_BASELINE,20));jt=new JTextField(6);jt.setFont((new Font("黑体",Font.CENTER_BASELINE,20)));jb2=new JButton("确定");jb2.addActionListener(this);jp2.add(jlab2);jp2.add(jcom2);jp2.add(jt);jp2.add(jb2);labelLeft.add(jp2);jp3=new JPanel();jlab3=new JLabel(new ImageIcon("G:\\奖学金评定系统\\统计结果.jpg"));//统计结果jcom3=new JComboBox(new String[]{"5","10","15","20","全部"});jcom3.setFont(new Font("黑体",Font.CENTER_BASELINE,20));jb3=new JButton("确定");jb3.addActionListener(this);jp3.add(jlab3);jp3.add(jcom3);jp3.add(jb3);labelLeft.add(jp3);jp4=new JPanel(); //删除信息jlab4=new JLabel(new ImageIcon("G:\\奖学金评定系统\\删除信息.jpg"));jcom4=new JComboBox(new String[]{"学号","姓名"});jcom4.setFont(new Font("黑体",Font.CENTER_BASELINE,20));jb4=new JButton("确定");jb4.addActionListener(this);jb4.setSize(53,40);jtt=new JTextField(6);jtt.setFont((new Font("黑体",Font.CENTER_BASELINE,18)));jp4.add(jlab4);jp4.add(jcom4);jp4.add(jtt);jp4.add(jb4);labelLeft.add(jp4);mark=new JPanel();jchushihua=new JButton("系统初始化"); //系统初始化事件jchushihua.addActionListener(this);help=new JButton("帮助"); //帮助按钮事件help.addActionListener(this);jgeshihua=new JButton("系统格式化"); //系统格式化事件jgeshihua.setSize(40,40);jgeshihua.addActionListener(this);jgeshihua.setFont(new Font("黑体",Font.CENTER_BASELINE,16));help.setSize(40,40);jchushihua.setSize(40,40);help.setFont(new Font("黑体",Font.CENTER_BASELINE,16));jchushihua.setFont(new Font("黑体",Font.CENTER_BASELINE,16));mark.add(help);mark.add(jchushihua);mark.add(jgeshihua);labelLeft.add(mark);labelLeft.add(new JLabel(new ImageIcon("G:\\奖学金评定系统\\系统.jpg")));labelLeft.add(new JLabel(new ImageIcon("G:\\奖学金评定系统\\班级.jpg")));labelRight.add(new JLabel(new ImageIcon("G:\\奖学金评定系统\\厚德.jpg")));//右边面板加入组件left=new JSplitPane(JSplitPane.HORIZONTAL_SPLIT,labelLeft,labelRight);//左右面板加入到主面板left.setDividerLocation(350);left.setDividerSize(1);top=new JSplitPane(JSplitPane.VERTICAL_SPLIT,pic,left);//主面板在次分为上下面板top.setDividerLocation(69);top.setDividerSize(0);c.add(top);this.setResizable(false);this.setDefaultCloseOperation(3);this.setVisible(true);}public void actionPerformed (ActionEvent e){Object c=e.getSource();if(c==jb1){ // 添加信息if(jcom1.getSelectedIndex()==0){new basicImformation();}new creditImformation();}}elseif(c==jb2){ // 。
(完整word版)学生成绩管理系统源代码

#include <stdio.h>#include <stdlib.h>#include <string.h>#include <dos.h>#include<ctype.h>#include<conio.h>#include<stddef.h>#include<time.h>#define PRINT1 textcolor(12); cprintf("\r 请按任意键返回主菜单\n\r");textcolor(10); getch();clrscr(); break;int shoudsave=0;struct student /* 学生信息结构体定义*/{char num[10],name[20],cla[4];int score1,score2,score3,total,ave;};typedef struct node{struct student data;struct node *next;}Node,*L;void print1(){cprintf("\r======================================================================= =========");}void print2(){cprintf("\n\r 1.输入学生成绩信息在这里你可以按照提示输入学生的班级,学号,姓名及各科成绩.\n");cprintf("\n\r 2.注销学生成绩信息在这里你可以按照学号或姓名将某名学生的信息从本系统中删除.\n");cprintf("\n\r 3.查询学生成绩信息在这里你可以按照学号或姓名查询某一名学生的信息.\n");cprintf("\n\r 4.修改学生成绩信息在这里你可以按照提示修改某一名学生的学号,姓名及各科成绩.");cprintf("\n\r 5.学生成绩信息排序在这里你可以看到所有学生的各科成绩.\n"); cprintf("\n\r 6.学生成绩信息统计在这里本系统将为你显示所有科目的最高分及最低分所得学生.\n");cprintf("\n\r 7.显示学生成绩信息在这里你可以看到系统中所有学生的信息.\n"); cprintf("\n\r 8.保存学生成绩信息在这里你可以将学生你信息保存到内存中.\n"); cprintf("\n\r 9.帮助学生成绩信息在这里你可以获得帮助信息.\n");cprintf("\n\r 0.退出系统在这里选择是否保存后,你可以安全的退出本系统.\n\n\r ");}void menu(){cprintf("\n\r\xc9\xcd\xcd\xcd\xcd\xcd\xcd\xcd\xcd\xcd\xcd\xcd\xcd\xcd\xcd\xcd\xcd\xcd\xcd\xc d\xcd\xcd\xcd\xcd\xcd\xcd\xcd\xcd\xcd\xcd\xcd\xcd\xcd\xcd\xcd\xcd\xcd\xcb\xcd\xcd\xcd\xcd\ xcd\xcd\xcd\xcd\xcd\xcd\xcd\xcd\xcd\xcd\xcd\xcd\xcd\xcd\xcd\xcd\xcd\xcd\xcd\xcd\xcd\xcd\xc d\xcd\xcd\xcd\xcd\xcd\xcd\xcd\xcd\xcd\xcd\xcd\xcd\xcd\xcd\xbb");cprintf("\r\xba 学生信息导入\xba 学生信息处理\xba");cprintf("\r\xba____________________________________\xba___________________________ _______________\xba");cprintf("\r\xba 1-->输入学生成绩信息\xba 6-->学生成绩信息统计\xba");cprintf("\r\xba 2-->注销学生成绩信息\xba 7-->显示学生成绩信息\xba");cprintf("\r\xba 3-->查询学生成绩信息\xba 8-->保存学生成绩信息\xba");cprintf("\r\xba 4-->修改学生成绩信息\xba 9-->帮助学生成绩信息\xba");cprintf("\r\xba 5-->学生成绩信息排序\xba 0-->退出系统\xba");cprintf("\r\xc8\xcd\xcd\xcd\xcd\xcd\xcd\xcd\xcd\xcd\xcd\xcd\xcd\xcd\xcd\xcd\xcd\xcd\xcd\xcd\ xcd\xcd\xcd\xcd\xcd\xcd\xcd\xcd\xcd\xcd\xcd\xcd\xcd\xcd\xcd\xcd\xcd\xca\xcd\xcd\xcd\xcd\xc d\xcd\xcd\xcd\xcd\xcd\xcd\xcd\xcd\xcd\xcd\xcd\xcd\xcd\xcd\xcd\xcd\xcd\xcd\xcd\xcd\xcd\xcd\ xcd\xcd\xcd\xcd\xcd\xcd\xcd\xcd\xcd\xcd\xcd\xcd\xcd\xcd\xbc");}void wrong(){cprintf("\n\r输入错误!请验证后重新输入.\n");}void notfind(){cprintf("\n\r该学生信息不存在!请验证后重新输入.\n");}void printc() /* 此函数用于输出中文格式*/{cprintf("\r学号姓名班级英语数学C语言总分平均分\n ");}void printe(Node *p) /* 此函数用于输出英文格式*/{cprintf("\r%-4s%-4s%4s%5d%5d%8d%5d%7d\n\r",p->data.num,p->,p->data.cla,p->dat a.score3,p->data.score2,p->data.score1,p->data.total,p->data.ave);}Node* Locate(L l,char findinfo[],char nameornum[]) /* 该函数用于定位连表中符合要求的接点,并返回该指针*/{Node *r;if(strcmp(nameornum,"num")==0)/* 按学号查询*/{r=l->next;while(r!=NULL){if(strcmp(r->data.num,findinfo)==0)return r;r=r->next;}}else if(strcmp(nameornum,"name")==0) /* 按姓名查询*/{r=l->next;while(r!=NULL){if(strcmp(r->,findinfo)==0)return r;r=r->next;}}return 0;}void input(L l) /* 增加学生*/{Node *p,*r,*s;char num[10];r=l;s=l->next;while(r->next!=NULL)r=r->next;/* 将指针置于最末尾*/while(1){ cprintf("\r如果输入完毕,请按任意键返回主菜单\n");cprintf("\r如果你还想输入,请按y(yes)继续\n\r");scanf("%s",num);if(strcmp(num,"y")==0){ cprintf("请你输入学号:");scanf("%s",num); } else break;while(s){if(strcmp(s->data.num,num)==0){printf("\t学号为'%s'的学生已经存在,若要修改请你选择'4 修改'!\n",num);print1();printc();printe(s);print1();printf("\n");getch();return;}s=s->next;}p=(Node *)malloc(sizeof(Node));strcpy(p->data.num,num);cprintf("\r请你输入姓名:");scanf("%s",p->);getchar();cprintf("\r请你输入班级:");scanf("%s",p->data.cla);getchar();cprintf("\r请你输入c语言成绩(0-100):");scanf("%d",&p->data.score1);getchar();cprintf("\r请你输入数学成绩(0-100):");scanf("%d",&p->data.score2);getchar();cprintf("\r请你输入英语成绩(0-100):");scanf("%d",&p->data.score3);getchar();p->data.total=p->data.score3+p->data.score1+p->data.score2;p->data.ave=p->data.total / 3; /* 信息输入已经完成*/p->next=NULL;r=p;shoudsave=1;}}void query(L l) /* 查询学生信息*/{int select;char findinfo[20];Node *p;if(!l->next){cprintf("\n 没有信息可以查询!\n");return;}cprintf("\n1==>按学号查找\n\r2==>按姓名查找\n\r");scanf("%d",&select);if(select==1) /* 学号*/{cprintf("\r请你输入要查找的学号:");scanf("%s",findinfo);p=Locate(l,findinfo,"num");if(p){cprintf(" 查找结果\n\r");print1();printc();printe(p);print1();}elsenotfind();}else if(select==2) /* 姓名*/{cprintf("\r请你输入要查找的姓名:");scanf("%s",findinfo);p=Locate(l,findinfo,"name");if(p){cprintf(" 查找结果\n\r");print1();printc();print1();}elsenotfind();}elsewrong();}void Delete(L l) /* 删除学生信息*/{int select;Node *p,*r;char findinfo[20];if(!l->next){cprintf("\n 没有信息可以删除!\n");return;}cprintf("\n1==>按学号删除\n\r2==>按姓名删除\n\r");scanf("%d",&select);if(select==1){cprintf("\r请你输入要删除的学号:");scanf("%s",findinfo);p=Locate(l,findinfo,"num");if(p){r=l;while(r->next!=p)r=r->next;r->next=p->next;free(p);cprintf("\n\r该学生已经成功删除!\n");shoudsave=1;}elsenotfind();}else if(select==2){cprintf("\r请你输入要删除的姓名:");scanf("%s",findinfo);p=Locate(l,findinfo,"name");if(p){r=l;while(r->next!=p)r=r->next;r->next=p->next;free(p);cprintf("\n\r该学生已经成功删除!\n");shoudsave=1;}elsenotfind();}else wrong();}void modify(L l) /*修改学生信息*/{Node *p;char findinfo[20];if(!l->next){cprintf("\n\r没有信息可以修改!\n");return;}cprintf("\r请你输入要修改的学生学号:");scanf("%s",findinfo);p=Locate(l,findinfo,"num");if(p){cprintf("\r请你输入新学号(原来是%s):",p->data.num);scanf("%s",p->data.num);cprintf("\r请你输入新姓名(原来是%s):",p->);scanf("%s",p->);getchar();cprintf("\r请你输入新班级(原来是%s):",p->data.cla);scanf("%s",p->data.cla);cprintf("\r请你输入新的c语言成绩(原来是%d分):",p->data.score1);scanf("%d",&p->data.score1);getchar();cprintf("\r请你输入新的数学成绩(原来是%d分):",p->data.score2);scanf("%d",&p->data.score2);getchar();cprintf("\r请你输入新的英语成绩(原来是%d分):",p->data.score3);scanf("%d",&p->data.score3);p->data.total=p->data.score3+p->data.score1+p->data.score2;p->data.ave=p->data.total/3;cprintf("\n\r信息修改成功!\n");shoudsave=1;}elsenotfind();}void display(L l){/*显示全部学生信息*/int count=0;Node *p;p=l->next;if(!p){cprintf("\n\r 没有信息可以显示!\n");return;}cprintf(" 显示结果");print1();printc();while(p){ if(count%5==0) getch();printe(p);p=p->next;count++;}print1();cprintf("\n");}void Statistic(L l) /*统计学生信息*/{Node *pm_max,*pe_max,*pc_max,*pt_max,*pa_max; /* 用于指向分数最高的接点*/ Node *pm_min,*pe_min,*pc_min,*pt_min,*pa_min;Node *r=l->next;if(!r){cprintf("\n\r 没有信息可以统计!\n");return ;}pm_max=pe_max=pc_max=pt_max=pa_max=pm_min=pe_min=pc_min=pt_min=pa_min=r; while(r!=NULL){if(r->data.score1>=pc_max->data.score1)pc_max=r;if(r->data.score1<=pc_min->data.score1)pc_min=r;if(r->data.score2>=pm_max->data.score2)pm_max=r;if(r->data.score2<=pm_min->data.score2)pm_min=r;if(r->data.score3>=pe_max->data.score3)pe_max=r;if(r->data.score3<=pe_min->data.score3)pe_min=r;if(r->data.total>=pt_max->data.total)pt_max=r;if(r->data.total<=pt_min->data.total)pt_min=r;if(r->data.ave>=pa_max->data.ave)pa_max=r;if(r->data.ave<=pa_min->data.ave)pa_min=r;r=r->next;}cprintf("====================================统计结果====================================\n");cprintf("\r总分最高者: %-16s %d分\n",pt_max->,pt_max->data.total); cprintf("\r平均分最高者: %-16s %d分\n",pa_max->,pa_max->data.ave); cprintf("\r英语最高者: %-16s %d分\n",pe_max->,pe_max->data.score3); cprintf("\r数学最高者: %-16s %d分\n",pm_max->,pm_max->data.score2); cprintf("\rc语言最高者: %-16s %d分\n\r",pc_max->,pc_max->data.score1); cprintf("\r总分最低者: %-16s %d分\n",pt_min->,pt_min->data.total); cprintf("\r平均分最低者: %-16s %d分\n",pa_min->,pa_min->data.ave); cprintf("\r英语最低者: %-16s %d分\n",pe_min->,pe_min->data.score3); cprintf("\r数学最低者: %-16s %d分\n",pm_min->,pm_min->data.score2); cprintf("\rc语言最低者: %-16s %d分\n\r",pc_min->,pc_min->data.score1); print1();}void Sort(L l){L ll;Node *p,*rr,*s;ll=(L)malloc(sizeof(Node)); /* 用于做新的连表*/ll->next=NULL;if(l->next==NULL){cprintf("\n\r 没有信息可以排序!\n");return ;}p=l->next;while(p){s=(Node*)malloc(sizeof(Node)); /* 新建接点用于保存信息*/s->data=p->data;s->next=NULL;rr=ll;while(rr->next!=NULL && rr->next->data.total>=p->data.total)rr=rr->next;if(rr->next==NULL)rr->next=s;else{s->next=rr->next;rr->next=s;}p=p->next;}free(l);l->next=ll->next;cprintf("\n\r 排序已经完成!\n");}void Save(L l) /* */{FILE* fp;Node *p;int flag=1,count=0;fp=fopen("c:\\student","wb");if(fp==NULL){cprintf("\n\r 重新打开文件时发生错误!\n");exit(1);}p=l->next;while(p){if(fwrite(p,sizeof(Node),1,fp)==1){p=p->next;count++;}else{flag=0;break;}}if(flag){cprintf("\n\r 文件保存成功.(有%d条信息已经保存.)\n\r",count);shoudsave=0;}fclose(fp);}void main() /* */{L l; /* 链表*/FILE *fp; /* 文件指针*/int count=0 ,i,menu_select; /*菜单选择*/char ch ,creat;Node *p,*r;time_t it;clrscr();textmode(C80);window(1,1,80,25);textbackground(1); clrscr();textcolor(10);printf("\r 学生成绩管理系统");printf("\r -------扬州大学信息工程学院软件0902班") ;printf("\r 设计人员:李天鹏");l=(Node*)malloc(sizeof(Node));l->next=NULL;r=l;fp=fopen("c:\\student","rb");if(fp==NULL){cprintf("\n\r 该文件还未存在,是否需要创建?(y/n,Y/N)\n\r");scanf("%c",&creat);if(creat=='y'||creat=='Y'){fp=fopen("c:\\student","wb");}elseexit(0);}gotoxy(9,11); textcolor(12);cprintf("\n\r 文件已经打开,系统正在导入信息");for(i=0;i<6;i++){ cprintf(".");sleep(1);}textcolor(10);gotoxy(9,11); cprintf("\n ");while(!feof(fp)){p=(Node*)malloc(sizeof(Node));if(fread(p,sizeof(Node),1,fp)) /* 将文件的内容放入接点中*/{p->next=NULL;r->next=p;r=p; /* 将该接点挂入连中*/count++;}}fclose(fp);/* 关闭文件*/gotoxy(1,3);cprintf("\n\r信息导入完毕,系统共导入%d条信息",count);sleep(1);while(1){ menu();textcolor(12);cprintf("\r现在时间: "); it=time(NULL);cprintf(ctime(&it));cprintf("\r左边数字对应功能选择,请按0--9选择操作:\n\r");textcolor(10) ;scanf("%d",&menu_select);if(menu_select==0){if(shoudsave==1){ getchar(); textcolor(128+12);cprintf("\n\r 信息已经改动,是否将改动保存到文件中(y/n Y/N)?\n\r"); scanf("%c",&ch);if(ch=='y'||ch=='Y')Save(l);}cprintf("\n\r 你已经成功退出学生成绩信息系统,欢迎下次继续使用!\n"); break;}switch(menu_select){case 1: clrscr(); input(l); clrscr(); break; /* 输入学生*/case 2: clrscr(); Delete(l); PRINT1 /* 删除学生*/case 3: clrscr(); query(l); PRINT1 /* 查询学生*/case 4: clrscr(); modify(l); PRINT1 /* 修改学生*/case 5: clrscr(); Sort(l); PRINT1case 6: clrscr(); Statistic(l); PRINT1case 7: clrscr(); display(l); PRINT1case 8: clrscr(); Save(l); PRINT1 /* 保存学生*/case 9: clrscr(); cprintf(" ==========帮助信息==========\n");print2(); PRINT1 ;default: wrong(); getchar(); break;}}}。
奖学金评定系统源代码.pptx

//帮助按钮事件 //系统格式化事件
jgeshihua.addActionListener(this); jgeshihua.setFont(new Font("黑体",Font.CENTER_BASELINE,16));
jp4=new JPanel();
//删除信息
jlab4=new JLabel(new ImageIcon("G:\\奖学金评定系统\\删除信息.jpg"));
jcom4=new JComboBox(new String[]{" 学 号 "," 姓 名 "});
jcom4.setFont(new Font(" 黑 体 ",Font.CENTER_BASELINE,20));
JPanel();
1
jcom2.setFont(new Font("黑体",Font.CENTER_BASELINE,20)); jt=new JTextField(6); jt.setFont((new Font("黑体",Font.CENTER_BASELINE,20))); jb2=new JButton("确定"); jb2.addActionListener(this); jp2.add(jlab2); jp2.add(jcom2); jp2.add(jt); jp2.add(jb2); labelLeft.add(jp2);
jp1=new JPanel();
//信
息入库 jlab1=new JLabel(new ImageIcon("G:\\奖学金评定系统\\信息入库.jpg")); jcom1=new JComboBox(new String[]{"基本信息入库","分数入库"});
- 1、下载文档前请自行甄别文档内容的完整性,平台不提供额外的编辑、内容补充、找答案等附加服务。
- 2、"仅部分预览"的文档,不可在线预览部分如存在完整性等问题,可反馈申请退款(可完整预览的文档不适用该条件!)。
- 3、如文档侵犯您的权益,请联系客服反馈,我们会尽快为您处理(人工客服工作时间:9:00-18:30)。
cout << "┃********* 3查询个人奖学金*********┃" << endl;
cout << "┃********* 4修改个人成绩*********┃" << endl;
cout << "┃********* 5退出*********┃" << endl;
b = (first_grade.English * 3.5 + first_grade.Math * 4 + first_grade.practise * 1.5 + first_grade.Sport * 2) * 0.5 / 10.5;
GPA = a + b;
if (GPA >= 90)
money = 3000;
{
cout << "┃------------------------------------┃" << endl;
cout << "┃*********奖学金评定*********┃" << endl;
cout << "┃********* 1初始化学生信息*********┃" << endl;
cin >> a >> b >> c >> d;
stu[n].first_grade.Math = a;
stu[n].first_grade.English = b;
stu[n].first_grade.Sport = c;
stu[n].first_grade.practise = d;
{
sum = a + b + c + d;
return a + b + c + d;
}
float final::grade(float a, float b, float c, float d)
{
sum = a + b + c + d;
return a + b + c + d;
}
class student //学生类
cin >> stu[n].name >> stu[n].number >> stu[n].sex >> stu[n].major;
cout << "请选择输入" << stu[n].name << "的成绩" << endl;
cout << "请输入该生上半年成绩--请按--数学英语体育实践的顺序输入,否则默认为0" << endl;
cout << "┃------------------------------------┃" << endl;
}
int guanli::gameprint1() //打印函数
{
int a;
cout << "继续操作请按1,退出请按0" << endl;
cin >> a;
return a;
}
void guanli::chushi(student *stu) //初始化学生信息函数
{
public:
float pingding();
string name; //姓名
string number; //学号
string major;//专业
char sex[5]; //性别
int money; //奖学金数额
float GPA; //学分绩
midterm first_grade; //上半年考试成绩
};
class midterm : public exam
{
public:
float grade(float a = 0, float b = 0, float c = 0, float d = 0);
};
float midterm::grade(float a, float b, float c, float d)
static int n = 0;
class exam //成绩类
{
public:
float Math;
float English;
float Sport;
float practise;
float sum;
};
class final : public exam
{
public:
float grade(float a = 0, float b = 0, float c = 0, float d = 0);
奖学金计算系统
要求:
输入为某个学评定规则,输出各等奖学金的获奖名单和人数
#include<iostream>
#include<math.h>
#include<string>
#include<fstream>
using namespace std;
final second_grade; //下半年考试成绩
};
float student::pingding()
{
float a, b;
a = (second_grade.Math * 4 + second_grade.English * 3 + second_grade.Sport * 2 + second_grade.practise * 1.5) * 0.5 / 10.5;
void fun1(student *stu);
void paihang(student *stu);
void find(student *stu);
void amend(student *stu);
void chushi(student *stu);
};
void guanli::print() //打印界面函数
{
int i;
for (i = 0; i < n; i++)
stu[i].pingding();
}
void guanli::fun1(student *stu) //录入学生信息函数
{
float a, b, c, d, i;//数学,英语,体育,实践,总成绩
cout << "输入学生姓名,学号,性别,专业" << endl;
else if (GPA >= 80 && GPA < 90)
money = 1500;
else if (GPA >= 75 && GPA < 80)
money = 750;
else
money = 0;
return GPA;;
}
class guanli
{
public:
void print();
int gameprint1();