程序设计实习报告-学生信息管理系统.doc
程序设计实习报告选题名称:学生信息管理系统程序设计实习报告1一、需求分析主要阐述程序设计的任务,强调的是程序要做什么?即程序所达到的功能主要有哪些?本系统主要任务是在较短时间内搭建学生管理系统,完成学生信息、课程信息、成绩信息的录入和查询。二、概要设计说明本程序中用到的所有抽象数据类型的定义、主程序的流程以及各程序模块之间的层次(调用)关系。抽象数据类型:Form1、Form2、Form3、Form4、Form5、Form6、Form7、Form8主程序的流程:在主程序中选择相应的信息,弹出相应的窗口,进行相关信息的操作层次关系:在主程序Form1中调用Form2、Form3、Form4、Form5、Form6、Form7、Form8三、详细设计实现概要设计中定义的所有数据类型,对每个操作只需写出伪代码算法,对主程序和其他模块函数也都需要写出伪代码算法,画出函数和过程的调用关系图。Form1classPublicForm1();Private关于ToolStripMenuItem_Click()Private推出系统ToolStripMenuItem_Click()Private录入学生信息ToolStripMenuItem_Click()Private录入课程信息ToolStripMenuItem_Click()Private录入成绩信息ToolStripMenuItem_Click()Private浏览学生信息ToolStripMenuItem_Click()Private浏览课程信息ToolStripMenuItem_Click()Private浏览成绩信息ToolStripMenuItem_Click()Form2class()publicForm2()Form3class()publicForm3()addStudentInfo();showStudentInfo();Form4class()publicForm4()addCourseInfo();showCourseInfo();Form5class()publicForm5()addScoreInfo();showScoreInfo();程序设计实习报告2Form6class()publicForm6()StudentInfoShow();Form7class()publicForm7()CourseInfoShow();Form8class()publicForm8()ScoreInfoShow();调用关系图:四、设计与调试分析调试过程中遇到的问题是如何解决的以及对设计与实现的回顾讨论和分析。在调试过程中,主要出现的问题是数据库的连接。一开始不知道如何把数据库中的数据连接到每个相对应的文本框内,在代码上不知道如何实现。后来是建立数据组DataRow加以解决。但在过程中又出现个小问题,当初建立数据库的时候,把姓名、学号这些信息设置成中文的,导致一直连不上数据库。后来将原来的数据库删除,重新建立一个英文版的数据库,就连接上了。五、用户手册说明如何使用你编写的程序,详细列出每一步的操作步骤。首先,登陆系统。(该功能尚未实现)进入系统后,若要进行学生信息的查询,则点击菜单栏中的学生信息管理,选择浏览学生信息;若要进行学生信息的录入,则点击录入学生信息。若要进行课程信息的查询,则点击菜单栏中的课程信息管理,选择浏览课程信息;若要进行课程信息的录入,则点击录入课程信息。若要进行成绩信息的查询,则点击菜单栏中的成绩信息管理,选择浏览成绩信息;若要进行成绩信息的录入,则点击录入成绩信息。操作完毕,退出系统。Form1()Form2()Form3()Form4()Form5()Form6()Form7()Form8()程序设计实习报告3六、测试成果列出你的测试结果,包括输入和输出,测试的数据应该完整和严格。输入:何以琛男91507020120091990-1-1法律系输出:七、附录(源程序清单)给出带注释的源程序。usingSystem;usingSystem.Collections.Generic;usingSystem.ComponentModel;usingSystem.Data;usingSystem.Drawing;usingSystem.Text;usingSystem.Windows.Forms;namespaceStudent_Information_Management_SystempublicpartialclassForm1:FormpublicForm1()InitializeComponent();privatevoid关于ToolStripMenuItem_Click(objectsender,EventArgse)Form2frm=newForm2();frm.ShowDialog();privatevoid退出系统ToolStripMenuItem_Click(objectsender,EventArgse)this.Close();privatevoid录入学生信息ToolStripMenuItem_Click(objectsender,EventArgse)程序设计实习报告4Form3frm=newForm3();frm.ShowDialog();privatevoid录入课程信息ToolStripMenuItem_Click(objectsender,EventArgse)Form4frm=newForm4();frm.ShowDialog();privatevoid录入成绩信息ToolStripMenuItem_Click(objectsender,EventArgse)Form5frm=newForm5();frm.ShowDialog();privatevoid浏览学生信息ToolStripMenuItem_Click(objectsender,EventArgse)Form6frm=newForm6();frm.ShowDialog();privatevoid浏览课程信息ToolStripMenuItem1_Click(objectsender,EventArgse)Form7frm=newForm7();frm.ShowDialog();privatevoid浏览成绩信息ToolStripMenuItem_Click(objectsender,EventArgse)Form8frm=newForm8();frm.ShowDialog();usingSystem;usingSystem.Collections.Generic;usingSystem.ComponentModel;usingSystem.Data;usingSystem.Drawing;usingSystem.Text;usingSystem.Windows.Forms;程序设计实习报告5namespaceStudent_Information_Management_SystempublicpartialclassForm2:FormpublicForm2()InitializeComponent();usingSystem;usingSystem.Collections.Generic;usingSystem.ComponentModel;usingSystem.Data;usingSystem.Drawing;usingSystem.Text;usingSystem.Windows.Forms;usingSystem.Data.OleDb;namespaceStudent_Information_Management_SystempublicpartialclassForm3:FormpublicForm3()InitializeComponent();privatevoidbutton1_Click(objectsender,EventArgse)OleDbConnectionmyconn=newOleDbConnection();myconn.ConnectionString="Provider=Microsoft.Jet.OLEDB.4.0;DataSource=.StudentDb.mdb";myconn.Open();stringquery="SELECT*fromStudent_info";DataSetobjDataSet=newDataSet();OleDbDataAdapterobjOleAdapter=newOleDbDataAdapter();objOleAdapter.SelectCommand=newOleDbCommand(query,myconn);objOleAdapter.Fill(objDataSet,"Student_info");try程序设计实习报告6objOleAdapter.InsertCommand=myconn.CreateCommand();objOleAdapter.InsertCommand.CommandText="INSERTINTOStudent_infovalues("+this.textBox2.Text+","+this.textBox1.Text+","+this.textBox4.Text+","+this.textBox5.Text+","+this.textBox3.Text+","+this.textBox6.Text+")";DataTablemytable=newDataTable();objDataSet.Tables.Add(mytable);DataRowrow=objDataSet.Tables0.NewRow();row"name"=this.textBox1.Text;row"no"=this.textBox2.Text;row"birth"=this.textBox3.Text;row"sex"=this.textBox4.Text;row"grade"=this.textBox5.Text;row"major"=this.textBox6.Text;objDataSet.Tables0.Rows.Add(row);objOleAdapter.Update(objDataSet,"Student_info");catchmyconn.Close();privatevoidbutton2_Click(objectsender,EventArgse)OleDbConnectionmyconn=newOleDbConnection();myconn.ConnectionString="Provider=Microsoft.Jet.OLEDB.4.0;DataSource=.StudentDb.mdb";myconn.Open();stringquery="SELECT*fromStudent_info";DataSetobjDataSet=newDataSet();OleDbDataAdapterobjOleAdapter=newOleDbDataAdapter();objOleAdapter.SelectCommand=newOleDbCommand(query,myconn);objOleAdapter.Fill(objDataSet,"Student_info");dataGridView1.DataSource=objDataSet.Tables"Student_info";myconn.Close();