学生管理系统main方法

时间:2019-05-13 18:14:47下载本文作者:会员上传
简介:写写帮文库小编为你整理了多篇相关的《学生管理系统main方法》,但愿对你工作学习有帮助,当然你在写写帮文库还可以找到更多《学生管理系统main方法》。

第一篇:学生管理系统main方法

package com.qq;

import java.util.*;

public class Main {

public static void main(String[] age){

Student[] stus = new Student[100];

Scanner input = new Scanner(System.in);int choice;

int index = 0;

System.out.println(“欢迎使用学生系统n”);

while(true){

System.out.println(“1.添加学生信息”);System.out.println(“2.删除学生信息”);System.out.println(“3.修改学生信息”);System.out.println(“4.查询学生信息”);System.out.println(“5.显示学生列表”);System.out.println(“6.退出学生系统n”);

choice = input.nextInt();

switch(choice){

case 1:

System.out.println(“请添加学生信息n”);Student stu = new Student();

System.out.println(“请添加学号n”);stu.setSid(input.nextInt());

System.out.println(“请添加名字n”);stu.setName(input.next());

System.out.println(“请添加年龄n”);stu.setAge(input.nextInt());

stus[index] = stu;

index++;

System.out.println(“添加成功n”);break;

case 2:

System.out.println(“开始删除学生信息”);System.out.println(“输入要删除的学号”);int did = input.nextInt();

for(int i = 0;i < index;i++){if(stus[i].getSid()== did){dindex = i;break;} } if(dindex ==-1)System.out.println(“没有n”);else {for(int i = dindex;i < index;i++){stus[i] = stus[i + 1];}index--;System.out.println(“删除成功n”);} break;case 3:System.out.println(“开始修改学生信息”);System.out.println(“请输入需要修改学生信息的学号”);int amendid = input.nextInt();int aindex =-1;for(int i = 0;i < stus.length;i++){if(stus[i].getSid()== amendid){aindex = i;break;}}if(aindex ==-1){System.out.println(“没有n”);} else {while(true){System.out.println(“1.修改 学 号”);System.out.println(“2.修改 姓 名”);System.out.println(“3.修改 年 龄”);System.out.println(“4.返回主菜单n”);int t = input.nextInt();if(t == 4)break;switch(t){case 1:System.out.println(“输入新学号”);

} } break;System.out.println(“学号修该成功n”);break;case 2:System.out.println(“输入新名字”);stus[aindex].setName(input.next());System.out.println(“名字修改成功n”);break;case 3:System.out.println(“输入新年龄”);stus[aindex].setAge(input.nextInt());System.out.println(“年龄修改成功n”);break;default:System.out.println(“输入有误n”);break;} case 4:System.out.println(“开始查询学生信息”);System.out.println(“请输入查询学号”);int qindex =-1;int qid = input.nextInt();for(int i = 0;i < index;i++){if(stus[i].getSid()== qid){qindex = i;break;}}if(qindex ==-1){System.out.println(“没有n”);} else {System.out.println(“该学生信息如下:”);System.out.println(“学号t姓名t年龄”);System.out.println(stus[qindex]);}break;case 5:System.out.println(“列表显示全部学生信息”);System.out.println(“学号t姓名t年龄”);

for(int i = 0;i < index;i++){

}

}

}

System.out.println(stus[i]);}break;case 6:System.out.println(“谢谢使用!”);System.exit(0);default:System.out.println(“选择错误!n”);break;}

第二篇:学生管理系统

import java.awt.*;import java.awt.event.*;import java.sql.*;import java.util.*;import javax.swing.*;

public class Xsglxt extends JFrame implements ActionListener { JPanel mb1,mb2;JLabel bq1;JTextField wbk1;JButton an1,an2,an3,an4;JTable bg1;

JScrollPane gd1;Xsxx xsxx2;

public static void main(String[] args)

{

Xsglxt xs=new Xsglxt();}

public Xsglxt(){

mb1=new JPanel();

bq1=new JLabel(“请输入姓名”);

wbk1=new JTextField(10);

an1=new JButton(“查询”);

an1.addActionListener(this);

an1.setActionCommand(“chaxun”);

mb1.add(bq1);mb1.add(wbk1);mb1.add(an1);

mb2=new JPanel();

an2=new JButton(“添加”);

an2.addActionListener(this);

an2.setActionCommand(“tianjia”);

an3=new JButton(“修改”);

an3.addActionListener(this);

an3.setActionCommand(“xiugai”);

an4=new JButton(“删除”);

an4.addActionListener(this);

an4.setActionCommand(“shanchu”);

mb2.add(an2);mb2.add(an3);mb2.add(an4);

xsxx2=new Xsxx();

bg1=new JTable(xsxx2);gd1=new JScrollPane(bg1);

this.add(gd1);this.add(mb1,“North”);this.add(mb2,“South”);

this.setTitle(“学生管理系统”);this.setSize(500,400);this.setLocation(201,181);this.setResizable(false);this.setDefaultCloseOperation(JFrame.EXIT_ON_CLOSE);this.setVisible(true);

} public void actionPerformed(ActionEvent e){ if(e.getActionCommand().equals(“chaxun”)){

String xingming=this.wbk1.getText().trim();

String sql=“select * from xuesheng where xingming='”+xingming+“'”;

xsxx2=new Xsxx(sql);

bg1.setModel(xsxx2);} else if(e.getActionCommand().equals(“tianjia”)){

Tianjia tj=new Tianjia(this,“添加学生信息”,true);

xsxx2=new Xsxx();

bg1.setModel(xsxx2);

} else if(e.getActionCommand().equals(“xiugai”)){

int ii=this.bg1.getSelectedRow();

if(ii==-1)

{

JOptionPane.showMessageDialog(this,“请选中要修改的行”);

return;

}

new Xiugai(this,“修改学生信息”,true,xsxx2,ii);

xsxx2=new Xsxx();

bg1.setModel(xsxx2);}

else if(e.getActionCommand().equals(“shanchu”))

{

int ii=this.bg1.getSelectedRow();

if(ii==-1)

{

JOptionPane.showMessageDialog(this,“请选中要删除的行”);

return;

}

String st=(String)xsxx2.getValueAt(ii,0);

PreparedStatement ps=null;

Connection ct=null;

ResultSet rs=null;

Statement sm=null;

try {

Class.forName(“sun.jdbc.odbc.JdbcOdbcDriver”);

ct=DriverManager.getConnection(“jdbc:odbc:sql server”,“sa”,“ydyd4488321”);

ps=ct.prepareStatement(“delete from xuesheng where xuehao=?”);

ps.setString(1,st);

ps.executeUpdate();

} catch(Exception e2){}

finally

{

try {

if(rs!=null)

{

rs.close();

}

if(ps!=null)

{

ps.close();

}

if(ct!=null)

{

ct.close();

}

} catch(Exception e3){}

}

xsxx2=new Xsxx();

bg1.setModel(xsxx2);

} } }

第三篇:学生管理处理方法

学生管理中常见事件处理方法建议

(个人建议,仅供参考)

一、学生个人财物丢失;

【基本原则】财物找回的可能性极小,最重要的工作是安抚学生心理。

【禁忌】直接让学生找领导解决。班主任先过问、关心,系部和领导再关心,这样才能让学生感受到关心和温暖。如果让学生直接找领导,学生会反感班主任的漠然,最后领导又解决不好,学生会失望至极,从而产生诸多不良情绪。

【基本流程】

1、第一时间赶到现场,安抚学生心理,做好基本的调查。对于财物损失特别严重或案件特别恶劣的,可选择报警。

2、财物较严重的失窃事件,要以书面报告系部和学生处。

3、做好学生的提醒教育工作,让他们提高警惕和安全意识,东西不要放窗户边,身上和寝室都不要留大量现金和贵重物品,睡觉锁好门。

4、因后勤维修保障不到位造成财物丢失的,要提供证据上报相关领导予以责任追求。

二、物品损坏后的维修;

【基本原则】按程序上报,要留下每次上报的证据,以便后期划清责任。

【禁忌】病急乱求医,找无关部门申述。

【基本流程】

1、上报后勤服务中心,按要求填写维修单。将上报的情况记录下来,记清楚什么时候、什么东西坏了,什么时候填了维修单?

2、两天后,如果东西没有得到维修,再去催一次,并再次记下。

3、再过两天,如果仍然没有解决,以报告形式报总务处,报告中写明什么时间报修,没有得到及时维修,什么时候再次催促,仍然没有得到维修,希望总务处领导予以督促。(报告一式两份,复印一份存档)

4、如果仍然没有得到维修,将相关情况报杨校长。

5、如果丢失财物或其他安全责任事故与后勤维修不到位有关,要拿着直接证据,找上级领导追究相关责任人。

6、突发事件,如停电、停水等,要及时联系电工、水工及后勤服务中心的负责人。班主任(辅导员)有责任将相关联系号码告之班上学生。

三、学生失去联系;

【基本原则】学生失去联系后,班主任(辅导员)要表现出关心和着急,此时不要强调学生过去的过错,更不要提事后要处理学生、开除学生,千万不要激怒家长。一切问题等找到学生后再作处理。

【禁忌】此时与家长争吵、冲突。

【基本流程】

1、第一时间报告家长。

2、班主任和班级学生通过各种渠道开始寻找。

3、每隔半天或一天将寻找的情况通报家长,并积极询问家长那边寻找的情况,并询问家长要不要报警。

4、征求家长同意后,24小时后,班主任陪同家长直接去派出所报案。

5、学生找到后,根据实际情况,与系办公室一起做好善后工作。

四、学生打架或发生矛盾;

【基本原则】避开学生的情绪期。当时学生正在气头上,班主任(辅导员)要冷

静,不要强调对错,不要急于批评,以半聊天的态度跟他谈,先取得事情真相。

【禁忌】事情没做调查就严厉批评学生或过时才调查。

【基本流程】

1、第一时间将当事人及可以佐证的人员找到办公室。

2、做当事人心理安抚工作,为冲突双方消气。

3、尽可能通过各种渠道调查真相,要求当事人及佐证人员必须留书面材料并签名。班主任(辅导员)跟学生强调,对于隐瞒真相的同学将加重惩处力度。

4、调查全部结束后,班主任(辅导员)决定进行相应的批评教育,决定是否约家长来校面谈。(如果要约家长前来,事先不要告诉学生,跟家长提前打好招呼,家长到校后再找学生过来)

5、班主任(辅导员)将相关事实书面形式报告系里,由系里给出处分建议并报学生处。

6、根据具体情况,将处分情况通知或送达学生家长。

7、在批评教育的过程中,要做好学生的心理稳定工作,注意批评的方式和程度,不能过激。

五、学生常规违纪的处理;

【基本原则】坚持先调查、后处理。

【禁忌】过早说出处理意见。

【基本流程】

1、班主任先“礼”:班主任此时还是以“哄”为主,让他们主动交代违纪事实,并写出材料;班主任此时要站在学生立场,承诺处理时帮他们说话。

2、系里后“兵”:根据调查的情况,按照规定给出拟处分建议报学生处或教务处;

此时,班主任为学生做人情,帮助其求情。

3、处理结果及时通知或送达学生家长。

4、以合理的方式做好学生处理后的教育工作和善后工作。

六、怎么劝退犯大错的问题学生;

【基本原则】劝退是“持久战”,其根本让家长和学生在时间的洗礼中心平气和地接受学校退学。

【禁忌】操之过急,甚至以过激的手段威胁学生退学。

【基本流程】

1、尽可能提早找家长过来,以合理的方式表明学校劝其退学的态度,要注重强调退学对其本人有利;(记住:本次劝退是假劝,只为了表明一种态度)

2、本次家长一般都不会接受退学,班主任磨蹭一会后便假装让步,并站到家长一边共同教育孩子。(常见的办法是与家长配合,家长唱黑脸,班主任唱白脸,共同给学生施加压力,这种配合是取得家长信任的过程。)

3、取得家长信任后,班主任要求家长写下保证书,保证下次再犯将无条件退学。(班主任在过程中应表现出以一种无奈和痛惜,而不要表现出愤怒和不屑)

4、学生再次犯错误,就以保证书要求其正式退学。(如果家长此时实在不愿意,可再放一次机会,直至将其磨回家)

第四篇:学生管理系统学生链表

#include #include #include

typedef struct student { int num;char name[10];char passwd[6];int age;int class;int math;int clan;int chinese;int mingci;struct student *next;}STU,*pstu;

pstu stu_numsort(pstu head);pstu stu_sumsort(pstu head);pstu stu_mathsort(pstu head);pstu stu_chisort(pstu head);pstu stu_clansort(pstu head);pstu stu_searchbynum(pstu head,int num);pstu stu_searchbyname(pstu head,char name[]);pstu stu_searchbyclass(pstu head,int class);pstu stu_create(){

pstu head=NULL;pstu s=NULL;int num;char name[10];char passwd[6];int age;int class;int math;int clan;int chinese;int mingci;printf(“请输入任意一个数非0的数继续 :”);scanf(“%d”,&num);while(num!=0){

s=(pstu)malloc(sizeof(STU));

if(s==NULL)

{

printf(“nmalloc errorn”);

return NULL;

}

printf(“输入学生学号:”);

scanf(“%d”,&s->num);

printf(“请输入学生姓名:”);

scanf(“%s”,s->name);

printf(“请输入登陆密码:”);//学生权限(error)

scanf(“%s”,s->passwd);

printf(“请输入学生年龄:”);

scanf(“%d”,&s->age);

printf(“请输入学生班级:”);

scanf(“%d”,&s->class);

printf(“请输入数学成绩:”);

scanf(“%d”,&s->math);

printf(“请输入c语言成绩:”);

scanf(“%d”,&s->clan);

printf(“请输入语文成绩:”);

scanf(“%d”,&s->chinese);

printf(“enter next studentn”);

if(head==NULL)

{

s->next=NULL;

head=s;

}

else

{

s->next=NULL;

s->next=head;

head=s;

}

scanf(“%d”,&num);} return head;} //保存

void stu_write(pstu head){ int flag=0;FILE *fp=NULL;pstu p=head;fp=fopen(“num”,“w”);if(fp==NULL){

printf(“open errorn”);

return;} while(p!=NULL){

flag=fwrite(p,sizeof(STU),1,fp);

if(flag!=1)

{

printf(“write errorn”);

return;

}

p->next;} fclose(fp);} //读函数

pstu stu_read(){ FILE *fp=NULL;pstu head=NULL;pstu s=NULL;fp=fopen(“num”,“r”);s=(pstu)malloc(sizeof(STU));while(fread(s,sizeof(STU),1,fp)==1){

if(head==NULL)

{

s->next=NULL;

head=s;

}

else

{

s->next=NULL;

s->next=head;

head=s;

}

s=(pstu)malloc(sizeof(STU));} fclose(fp);return head;} //删除学生信息(学号)pstu stu_del(pstu head,int num){ pstu p=head;pstu q=NULL;printf(“输入删除的学号:”);scanf(“%d”,&num);if(head->num==num){

head=head->next;} else {

while(p->next!=NULL)

{

if(p->next->num==num)

{

q=p->next;

p->next=q->next;

free(q);

q=NULL;

break;

}

p=p->next;

} } return head;}

pstu stu_searchbynum();//按学号修改学生信息

void stu_changebynum(pstu head){ pstu p=head;int num;char name[10];char passwd[6];int age;int class;int math,chinese,clan;int n;printf(“请输入查找的学号:”);scanf(“%d”,&num);while(p!=NULL){

if(p->num==num)

{

printf(“学号t姓名t密码t年龄t班级t数学tc语言t语文t名次n”);

printf(“%dt%st%st%dt%dt%dt%dt%dt%dn”,p->num,p->name,p->passwd,p->age,p->class,p->math,p->clan,p->chinese,p->mingci);

break;

}

p=p->next;}

printf(“请选择需要修改的学生信息:n”);printf(“-------------------------n”);printf(“1:姓名n”);printf(“2:密码n”);printf(“3:年龄n”);printf(“4:班级n”);printf(“5:数学成绩n”);printf(“6:c成绩n”);printf(“7:语文成绩n”);printf(“0:退出”);printf(“---------------------------n”);printf(“请输入需要修改的信息:”);scanf(“%d”,&n);switch(n){

case 0:

return;

case 1:

printf(“请输入新的姓名:”);

scanf(“%s”,p->name);

break;

case 2:

printf(“请输入新的密码:”);

scanf(“%s”,p->passwd);

break;

case 3:

printf(“请输入新的年龄:”);

scanf(“%d”,&p->age);

break;

case 4:

printf(“请输入新的班级:”);

scanf(“%d”,&p->class);

break;

case 5:

printf(“请输入新的数学成绩:”);

scanf(“%d”,&p->math);

break;

case 6:

printf(“请输入新的c语言成绩:”);

scanf(“%d”,&p->clan);

break;

case 7:

printf(“请输入新的语文成绩:”);

scanf(“%d”,&p->chinese);

break;

default:

printf(“n无效选项n”);

break;} printf(“修改成功!n”);printf(“学号t姓名t密码t年龄t班级t数学tc语言t语文t名次n”);

printf(“%dt%st%st%dt%dt%dt%dt%dt%dn”,p->num,p->name,p->passwd,p->age,p->class,p->math,p->clan,p->chinese,p->mingci);} //按学生姓名修改

void stu_changebyname(pstu head){ pstu p=head;int num;char name[10];char passwd[6];int age;int class;int math,chinese,clan;int n;printf(“请输入查找的姓名:”);scanf(“%s”,name);while(p!=NULL){

if(strcmp(p->name,name)==0)

{

printf(“学号t姓名t密码t年龄t班级t数学tc语言t语文t名次n”);

printf(“%dt%st%st%dt%dt%dt%dt%dt%dn”,p->num,p->name,p->passwd,p->age,p->class,p->math,p->clan,p->chinese,p->mingci);

break;} p=p->next;} printf(“请选择需要修改的学生信息:n”);printf(“-------------------------n”);printf(“1:学号n”);printf(“2:密码n”);printf(“3:年龄n”);printf(“4:班级n”);printf(“5:数学成绩n”);printf(“6:c成绩n”);printf(“7:语文成绩n”);printf(“0:退出”);printf(“---------------------------n”);printf(“请输入需要修改的信息:”);scanf(“%d”,&n);switch(n){ case 0:

return;case 1:

printf(“请输入新的学号:”);

scanf(“%d”,&p->num);

break;case 2:

printf(“请输入新的密码:”);

scanf(“%s”,p->passwd);

break;case 3:

printf(“请输入新的年龄:”);

scanf(“%d”,&p->age);

break;case 4:

printf(“请输入新的班级:”);

scanf(“%d”,&p->class);

break;case 5:

printf(“请输入新的数学成绩:”);

scanf(“%d”,&p->math);

break;case 6:

printf(“请输入新的c语言成绩:”);

scanf(“%d”,&p->clan);

break;

case 7:

printf(“请输入新的语文成绩:”);

scanf(“%d”,&p->chinese);

break;

default:

printf(“n无效选项n”);

break;} printf(“修改成功!n”);printf(“学号t姓名t密码t年龄t班级t数学tc语言t语文t名次n”);

printf(“%dt%st%st%dt%dt%dt%dt%dt%dn”,p->num,p->name,p->passwd,p->age,p->class,p->math,p->clan,p->chinese,p->mingci);

} void change_printf(pstu head){ pstu p=head;int n;printf(“请选择修改学生信息的方式:n”);printf(“-------n”);printf(“1:按学生学号修改n”);printf(“2:按学生姓名修改n”);printf(“0:退出n”);printf(“---------n”);scanf(“%d”,&n);switch(n){

case 1:

stu_changebynum(head);

printf(“显示全部学生信息:”);

break;

case 2:

stu_changebyname(head);

printf(“显示全部学生信息:”);

break;

case 3:

return;} } //查找学生信息

void search_printf(pstu head){ pstu p=head;int n;int num;char name[10];int class;printf(“请选择查找学生信息的方式:n”);printf(“-------n”);printf(“1:按学生学号查找n”);printf(“2:按学生姓名查找n”);printf(“3:按班级群体查找n”);printf(“0:退出n”);printf(“---------n”);scanf(“%d”,&n);switch(n){

case 1:

stu_searchbynum(head,num);

break;

case 2:

stu_searchbyname(head,name);

break;

case 3:

stu_searchbyclass(head,class);

break;

case 0:

return;} } //1:学号查找

pstu stu_searchbynum(pstu head,int num){ pstu p=head;printf(“请输入查找的学号:”);scanf(“%d”,&num);while(p!=NULL){

if(p->num==num)

break;

p=p->next;} return p;} //2:按姓名查找 pstu stu_searchbyname(pstu head,char name[]){ pstu p=head;printf(“请输入要查找的姓名:”);scanf(“%s”,name);while(p!=NULL){

if(strcmp(name,p->name)==0)

break;

p=p->next;} return p;} //班级群体查找

pstu stu_searchbyclass(pstu head,int class){ pstu p=head;printf(“请输入要查找的班级:”);scanf(“%d”,&class);while(p!=NULL){

if(p->class==class)

break;

p=p->next;} return p;}

//显示所有学生信息列表

void sort_printf(pstu head){ pstu p=head;int n;printf(“请选择显示学生信息的方式:n”);printf(“-----n”);printf(“1:按学号顺序显示n”);printf(“2:按名次显示n”);printf(“3:按数学成绩显示n”);printf(“4:按c语言成绩显示n”);printf(“5:按语文成绩显示n”);printf(“--------n”);printf(“请输入你要选择的操作:”);scanf(“%d”,&n);switch(n){

case 1:

stu_numsort(head);

printf(“显示学生信息n”);

break;

case 2:

stu_sumsort(head);

printf(“显示学生信息n”);

break;

case 3:

stu_mathsort(head);

printf(“显示学生信息n”);

break;

case 4:

stu_clansort(head);

printf(“显示学生信息n”);

break;

case 5:

stu_chisort(head);

printf(“显示学生信息n”);

break;

case 6:

return;

default:

printf(“输入错误n”);

break;} }

int stu_len(pstu head){ pstu p=head;int len=0;while(p!=NULL){

len++;

p=p->next;} return len;} //1:按学号顺序显示

pstu getnummax(pstu head){ pstu pmax=head;if(head==NULL){

return NULL;} pstu p=head->next;while(p!=NULL){

if(pmax->num

num)

{

pmax=p;

}

p=p->next;} return pmax;} pstu removefromold(pstu head,pstu pmax){ pstu p=head;if(head==pmax){

head=head->next;} else {

while(p!=NULL)

{

if(p->next==pmax)

{

p->next=pmax->next;

break;

}

}

p=p->next;} return head;} pstu add(pstu pnew,pstu pmax){ pmax->next=pnew;pnew=pmax;return pnew;} pstu stu_numsort(pstu head){ pstu pold=head;pstu pmax=NULL;pstu pnew=NULL;while(pold!=NULL){

pmax=getnummax(pold);

pold=removefromold(pold,pmax);

pnew=add(pnew,pmax);} return pnew;} //按名次显示

pstu getsummin(pstu head){ pstu pmin=head;if(head==NULL){

return NULL;} pstu p=head->next;while(p!=NULL){

if(pmin->math+pmin->clan+pmin->chinese>p->math+p->clan+p->chinese)

{

pmin=p;

}

p=p->next;} return pmin;} pstu removefromtold(pstu head,pstu pmin){ pstu p=head;if(head==pmin){

head=head->next;} else {

while(p!=NULL)

{

if(p->next==pmin)

p->next=pmin->next;

break;

}

p=p->next;} return head;} pstu addt(pstu pnew,pstu pmin){ pmin->next=pnew;pnew=pmin;return pnew;} pstu stu_sumsort(pstu head){ pstu pold=head;pstu pmin=NULL;pstu pnew=NULL;int i=stu_len(head);while(pold!=NULL){

pmin=getsummin(pold);

pold=removefromtold(pold,pmin);

pnew=addt(pnew,pmin);

pnew->mingci=i--;} return pnew;} //按数学成绩显示

pstu getmathmin(pstu head){ pstu pmin=head;if(head==NULL){

return NULL;} pstu p=head->next;while(p!=NULL){

if(pmin->math>p->math)

{

pmin=p;

}

p=p->next;} return pmin;} pstu stu_mathsort(pstu head){ int i=stu_len(head);pstu pold=head;pstu pmin=NULL;pstu pnew=NULL;while(pold!=NULL){

pmin=getmathmin(pold);

pold=removefromold(pold,pmin);

pnew=add(pnew,pmin);

pnew->mingci=i--;} return pnew;} //按c语言成绩显示

pstu getclanmin(pstu head){ pstu pmin=head;if(head==NULL){

return NULL;} pstu p=head->next;while(p!=NULL){

if(pmin->clan>p->clan)

{

pmin=p;

}

p=p->next;} return pmin;} pstu stu_clansort(pstu head){ int i=stu_len(head);pstu pold=head;pstu pmin=NULL;pstu pnew=NULL;while(pold!=NULL){

pmin=getclanmin(pold);

pold=removefromtold(pold,pmin);

pnew=addt(pnew,pmin);

pnew->mingci=i--;} return pnew;} //按语文成绩显示

pstu getchimin(pstu head){ pstu pmin=head;if(head==NULL){

return NULL;} pstu p=head->next;while(p!=NULL){

if(pmin->chinese>p->chinese)

{

pmin=p;

}

p=p->next;} return pmin;} pstu stu_chisort(pstu head){ int i=stu_len(head);pstu pold=head;pstu pmin=NULL;pstu pnew=NULL;while(pold!=NULL){

pmin=getchimin(pold);

pold=removefromtold(pold,pmin);

pnew=addt(pnew,pmin);

pnew->mingci=i--;} return pnew;} void stu_printf(pstu head){ pstu tmp=head;printf(“学号t姓名t密码t年龄t班级t数学tc语言t语文t名次n”);while(tmp!=NULL){

printf(“%dt%st%st%dt%dt%dt%dt%dt%dn”,tmp->num,tmp->name,tmp->passwd,tmp->age,tmp->class,tmp->math,tmp->clan,tmp->chinese,tmp->mingci);

tmp=tmp->next;} printf(“n”);} void stun_printf(pstu head){ pstu tmp=head;printf(“学号t姓名t密码t年龄t班级t数学tc语言t语文t名次n”);while(tmp!=NULL){

printf(“%dt%st%st%dt%dt%dt%dt%dt%dn”,tmp->num,tmp->name,tmp->passwd,tmp->age,tmp->class,tmp->math,tmp->clan,tmp->chinese,tmp->mingci);

break;} printf(“n”);}

//2: int main(){ // int m;int num;int class;int len;char name[10];pstu head=stu_create();stu_printf(head);len=stu_len(head);// pstu p=stu_del(head, num);// stu_printf(p);/* pstu k=stu_searchbynum(head,num);if(k!=NULL)

stun_printf(k);else

printf(“no find”);

pstu l=stu_searchbyname(head,name);

// // // // // //

// // // // // //

} if(l!=NULL)stun_printf(l);else printf(“no find”);pstu h=stu_searchbyclass(head,class);if(h!=NULL)stun_printf(h);else printf(“no find”);*/ stu_changebynum(head);printf(“显示全部学生信息:”);stu_printf(head);stu_changebyname(head);printf(“显示全部学生信息:”);stu_printf(head);search_printf(head);stun_printf(head);change_printf(head);stu_printf(head);pstu p1=stu_numsort(head);stu_printf(p1);pstu p2=stu_sumsort(head);stu_printf(p2);pstu p3=stu_mathsort(head);stu_printf(p3);sort_printf(head);stu_printf(head);

第五篇:学生管理系统论文

学生管理系统的设计

杨世坤 计算机科学与技术系 09级 0940141022

摘要:在 VB2008 环境下,通过连接 Access2000 数据库,建立了一个学生管理系统。在这个系统里,可以实现学生学生的学号,姓名,性别,民族,年级,出生年月,系别,家庭住址等各种信息的录入,精确查找,模糊查找,更新,删除等操作。从程序的界面设计到源代码,都做了详尽的说明,适合初学者快速掌握信息管理系统开发的步骤。关键词:VB;数据库;管理系统;access;查询

Abstract: It is designed for the establishment of student information managementsystem in vb6.0 by connecting Access2000 database.This system can realize Information Processing including data entry, query, update, delete and so on.The Information means the student's number,name,age, contact.From the interface design to the source code, it has shown a detailed description, which suitable for beginners tomaster the designing of system quickly.Key words: vb;database;system of management;access;query 1 引言

随着学校办学规模的扩大,学生数量急剧增加,有关学生各种信息的数量也在成倍增长。面对庞大的信息量,利用计算机信息管理系统对学生的学号,姓名,性别,民族,年级,出生年月,系别,家庭住址等综合信息进行管理经成为一种必然趋势。我根据学校特点,通过开发学生信息管理系统,可以做到信息的规范管理、科学统计和快速查询,从而解决大量繁琐的工作,实现学生信息管理的办公无纸化和高效化。功能需求分析

学生管理系统采用 Visual Basic 2008 作为开发工具,后台数据库采用 Assecc2000。系统开发的总体任务是实现学生信息管理的条理化,系统化。用户通过界面,完成对学生的学号,姓名,性别,民族,年级,出生年月,系别,家庭住址等信息的管理。可以对学生信息方便的实现输入,删除,修改,模糊查询,精确查询,在浏览记录时可以切换上一条,下一条,第一条和最后一条。还可对学生信息记录进行排序。数据库建立与连接

3.1 数据库建立

目前,可应用的数据库开发工作很多,Oracle是面向网络计算的数据库,适合开发大型网络应用软件;Access和Visual Foxpro系统适合开发小型数据库应用软件。Access数据库功能比较齐全,数据的备份、拷贝都很方便,且程序发布时不需要额外安装其他的数据库管理软件。本系统数据量较小,采用Access数据库就可满足要求。

3.2 数据库连接

VB 提供了多种与数据库连接的方式,这里使用数据控件(Data)。数据控件(Data)提供 了一种方便地访问数据库中数据的方法,使用数据控件无须编写代码就可以对 VB 所支持 的各种类型的数据库执行大部分数据访问操作。数据控件本身不能显示和直接修改记录,但是可以通过与数据控件相关联的数据约束控件中显示各个记录。用户界面设计 在 Visual Basic2008 环境中,建立一个标准的 exe 工程。学生的学号,姓名,性别,民族,年级,出生年月,系别,家庭住址用文本框控件来显示,名称分别为 text1,text2…text8, 他们分别与数据库中的相应字段绑定。

选择数据控件 data1,并设置它的属性,使得它与数据库连接。实现记录的第一条,上一条,下一条,最后一条的切换以及添加记录,删除记录和编辑记录的操作用按钮来控制实现,名称分别为 command1,command2…command7。对按不同的条件进行查询,这里使用了组合框 Combo1 和 Combo2,分别用来选择精确查找和模糊查找的条件。代码

程序的实现主要使用了 data 控件的常用方法。对于精确查找和模糊查找中的“查找第一个”与“查找下一个”按钮的事件中,它

们所使用的查找条件是一样的,所以需要先定义窗体变量。5.1 登陆界面

mystr = “Provider=Microsoft.Jet.OLEDB.4.0;Data source=student.mdb”

myconn.ConnectionString = mystr

myconn.Open()

Dim mycmd As New OleDbCommand

mycmd.Connection = myconn

mycmd.CommandText = “select * from admin”

Dim myreader As OleDbDataReader = mycmd.ExecuteReader

While myreader.Read()

If TextBox1.Text = myreader(“ID”).ToString And TextBox2.Text = myreader(“psw”)Then

MsgBox(“用户名密码正确!!”, MsgBoxStyle.Information, “提示”)

Module1.password = TextBox2.Text

Module1.username = TextBox1.Text

Module1.pright = myreader(“pright”)

Form1.Show()

Me.Hide()

Exit Sub

End If

End While

MsgBox(“用户密码不正确”, MsgBoxStyle.Information, “提示”)

TextBox1.Text = “"

TextBox2.Text = ”“

TextBox1.Focus()5.2 添加删除用户

在实际应用中,除了超级用户之外,往往会赋予用户一定的访问权限,在给用户设置访问权限之前,应先创建一个用户帐户,将其追加到用于当前数据库的工作组信息文件中的默认Users组。本系统的安全措施在数据库的访问过程中虽然起到了一定的防护作用,然而,尽管人们想到了种种办法维护自己的数据安全,但也总是有漏洞被发现,因此,备份数据是简单有效的方法。5.2 记录的跳转 查找首记录 mybs.MoveFirst()

Label9.Text = ”共有“ & mybs.Count & ”条记录,“ & ”本记录为第“ & mybs.Position + 1 & ”条记录“ 查找下一条记录

If mybs.Position <> mybs.Count-1 Then

mybs.MoveNext()

Label9.Text = ”共有“ & mybs.Count & ”条记录,“ & ”本记录为第“ & mybs.Position + 1 & ”条记录“

Else

MsgBox(”已经是最后一条记录“, MsgBoxStyle.Information, ”提示“)

End If 查找上一条记录 If mybs.Position <> 0 Then

mybs.MovePrevious()

Label9.Text = ”共有“ & mybs.Count & ”条记录,“ & ”本记录为第“ & mybs.Position + 1 & ”条记录“

Else

MsgBox(”已经是第一条记录“, MsgBoxStyle.Information, ”提示“)

End If 查找末记录 mybs.MoveLast()

Label9.Text = ”共有“ & mybs.Count & ”条记录,“ & ”本记录为第“ & mybs.Position + 1 & ”条记录“ 5.3 记录的修改、删除、添加、保存

记录的修改

a = 3

Button5.Enabled = False

Button6.Enabled = False

Button8.Enabled = True

Button7.Enabled = False

GroupBox2.Enabled = False 记录的删除

a = 1

Button5.Enabled = False

Button6.Enabled = False

Button8.Enabled = True

Button7.Enabled = False

GroupBox2.Enabled = False 记录的添加

a = 2

TextBox1.Text = ”“

TextBox2.Text = ”“

TextBox3.Text = ”“

TextBox4.Text = ”“

TextBox5.Text = ”“

TextBox6.Text = ”“

TextBox7.Text = ”“

TextBox8.Text = ”“

TextBox1.Focus()

Button5.Enabled = False

Button6.Enabled = False

Button8.Enabled = True

Button7.Enabled = False

GroupBox2.Enabled = False 记录的保存

Select Case a

Case 1

If MsgBox(”您确定删除此条记录吗?“, MsgBoxStyle.Question + MsgBoxStyle.YesNo, ”提示“)= MsgBoxResult.Yes Then

myds.Tables(”info“).Rows(mybs.Position).Delete()

Dim mybd = New OleDbCommandBuilder(myada)

myada.Update(myds, ”info“)

myds.Clear()

myada.Fill(myds, ”info“)

GroupBox2.Enabled = True

Button5.Enabled = True

Button6.Enabled = True

Button7.Enabled = True

Button8.Enabled = False

Else

GroupBox2.Enabled = True

Button5.Enabled = True

Button6.Enabled = True

Button7.Enabled = True

Button8.Enabled = False

End If

Case 2

Dim myrow As DataRow = myds.Tables(”info“).NewRow

myrow(”学号“)= TextBox1.Text

myrow(”姓名“)= TextBox2.Text

myrow(”性别“)= TextBox3.Text

myrow(”民族“)= TextBox4.Text

myrow(”年级“)= TextBox5.Text

myrow(”出生年月“)= TextBox6.Text

myrow(”系“)= TextBox7.Text

myrow(”家庭住址“)= TextBox8.Text

myds.Tables(”info“).Rows.Add(myrow)

GroupBox2.Enabled = True

Dim mybd = New OleDbCommandBuilder(myada)

myada.Update(myds, ”info“)

myds.Clear()

myada.Fill(myds, ”info“)

Button5.Enabled = True

Button6.Enabled = True

Button7.Enabled = True

Button8.Enabled = False

Case 3

myds.Tables(”info“).Rows(mybs.Position).BeginEdit()

myds.Tables(”info“).Rows(mybs.Position).EndEdit()

Dim mybd = New OleDbCommandBuilder(myada)

myada.Update(myds, ”info“)

myds.Clear()

myada.Fill(myds, ”info“)

GroupBox2.Enabled = True

Button5.Enabled = True

Button6.Enabled = True

Button7.Enabled = True

Button8.Enabled = False

End Select

Label9.Text = ”共有“ & mybs.Count & ”条记录,“ & ”本记录为第“ & mybs.Position + 1 & ”条记录“

End Sub

Private Sub Button6_Click(ByVal sender As System.Object, ByVal e As System.EventArgs)Handles Button6.Click

a = 1

Button5.Enabled = False

Button6.Enabled = False

Button8.Enabled = True

Button7.Enabled = False

GroupBox2.Enabled = False 5.4 记录的查找 Dim condstr As String

condstr=”“

If TextBox1.Text <> ”“ Then

If condstr = ”“ Then

If ComboBox1.Text = ”等于“ Then

condstr = ”姓名='“ & TextBox1.Text & ”'“

Else

condstr = ”姓名 like '%“ & TextBox1.Text & ”%'“

End If

End If

End If

If TextBox2.Text <> ”“ Then

If condstr = ”“ Then

condstr = ”性别='“ & TextBox2.Text & ”'“

Else

condstr = condstr & ” and “ & ”性别='“ & TextBox2.Text & ”'“

End If

End If

If TextBox3.Text <> ”“ Then

If condstr = ”“ Then

condstr = ”民族='“ & TextBox2.Text & ”'“

Else

condstr = condstr & ” and “ & ”民族='“ & TextBox2.Text & ”'“

End If

End If

If TextBox4.Text <> ”“ Then

If condstr = ”“ Then

If ComboBox2.Text = ”等于“ Then

condstr = ”家庭住址='“ & TextBox4.Text & ”'“

Else

condstr = condstr & ” and “ & ”家庭住址 like '%“ & TextBox4.Text & ”%'"

End If

End If

End If

mydv.RowFilter = condstr 6 结束语

本系统达到了预期的要求,系统设计是根据学校的学生信息管理流程,合理设置各种操作模块,各管理员和操作员之间分工明确,并且能够及时、准确地记录每次操作信息。操作简单易行,定期审核,确保了数据的正确性。从根本上解决了学生管理的计算机实现方式,对学校管理来讲是一个大的跨越。

参考文献:郑阿奇 彭作民 Visual Basic.NET 程序设计教程(第二版)械工业出版社

下载学生管理系统main方法word格式文档
下载学生管理系统main方法.doc
将本文档下载到自己电脑,方便修改和收藏,请勿使用迅雷等下载。
点此处下载文档

文档为doc格式


声明:本文内容由互联网用户自发贡献自行上传,本网站不拥有所有权,未作人工编辑处理,也不承担相关法律责任。如果您发现有涉嫌版权的内容,欢迎发送邮件至:645879355@qq.com 进行举报,并提供相关证据,工作人员会在5个工作日内联系你,一经查实,本站将立刻删除涉嫌侵权内容。

相关范文推荐

    学生管理系统使用说明

    学生系统使用说明 登录 在浏览器地址栏内输入“202.195.128.108”后点击回车,弹出苏大研究生管理系统登录窗口。如图1所示。 图1 在图一所示窗口输入用户名、密码、验证码等......

    学生通讯录管理系统

    “学生通讯信息记录系统”的设计与实现 一、设计要求 1. 问题的描述 “学生通讯信息记录系统”是为了实现快速的对学生信息进行录入、删除、查找、显示。各个功能靠函数实现......

    学生籍贯管理系统

    #include "stdafx.h" #include "stdio.h" #include "stdlib.h" #include "conio.h" #include "math.h" #include "string.h" /**********************建立链表************......

    学生考勤管理系统

    学生考勤管理系统系统设计开发:张文聪网站意义:学生考勤对学校教务管理是至关重要的,传统的学生出勤检查往往是教师拿着一张纸质名单逐一点名,或让学生上交课堂作业以便课后查......

    学生管理系统实验报告

    数据库课程设计报告-----学生管理系统一、需求分析根据老师的要求,我主要把精力集中在学生选课的功能实现上,角色分为管理员与学生 实现功能包括如下两部分:A.学生端实现功能:1.系......

    学生成绩管理系统

    //*学生成绩管理系统*// #include #define N 3 struct student { int no; char name[20]; float english; float computer; float math; float average; }; void getclass(s......

    学生素质评价的系统方法

    学生素质评价的系统方法 ——怎样给学生写评语 怎样改进学生的学习方法 四川省社会科学院查有梁 一、问题的提出  每一学年结束后,学校要给家长正式发送学生的《成绩通知书》......

    关于管理学生的方法5

    关于管理学生的方法5 我参加工作22年,担任班主任至今已有19个年头。我经常思考这样一个问题:什么样的班主任最受学生欢迎甚至爱戴呢?每届学生,我都做过了解:大多学生喜欢既懂教学......