C#学生管理系统课程设计报告Word文件下载.docx
- 文档编号:21982025
- 上传时间:2023-02-02
- 格式:DOCX
- 页数:43
- 大小:227.18KB
C#学生管理系统课程设计报告Word文件下载.docx
《C#学生管理系统课程设计报告Word文件下载.docx》由会员分享,可在线阅读,更多相关《C#学生管理系统课程设计报告Word文件下载.docx(43页珍藏版)》请在冰豆网上搜索。
(8)按平均分排序:
三、知识清单
1、定义了相应的成员变量来保存学生的基本信息,如学号、姓名、科目成绩等;
2、定义了相应属性以来获取学生基本信息;
3、定义了相应的方法实现了对学生基本信息的管理,如Add()、Order()、Delete()等方法实现对学生信息的增删改查;
4、定义了相应的方法Order()对学生成绩信息进行管理;
5、定义了构造函数进行初始化并且有默认的析构函数;
6、定义学生类Student,由Student类派生出三个子类分别对小学生、中学生、大学生信息进行管理;
7、本实验程序没有连接数据库,所用数据都存在相应的文件操作中,有相应的方法实现文件相关操作;
8、重载了操作符小于和大于号
五、实验程序代码
usingSystem;
usingSystem.IO;
usingConsoleApplication1;
publicclassStudent
{
publicstringno;
publicstringname;
publicintaverage;
publicstaticbooloperator>
(Students1,Students2)//重载
{
if(s1.average>
s2.average)
returntrue;
else
returnfalse;
}
publicstaticbooloperator<
(Students1,Students2)
if(s1.average<
};
classStudentManageSystem
staticConsoleApplication1.xiaoxue[]sd;
publicstaticvoidshow()
intcases=0;
boolflag=true;
while(flag){
Console.Clear();
Console.WriteLine("
\t\t******欢迎进入学生信息管理系统!
******"
);
\t\t1.小学生界面"
\t\t2.中学生界面"
\t\t3.大学生界面"
\t\t***************************************"
Console.Write("
\t\t请输入选择(数字1-3):
"
cases=Convert.ToInt32(Console.ReadLine());
if(cases<
=3&
&
cases>
=1){
flag=false;
switch(cases){
case1:
Menu1();
break;
case2:
Menu2();
case3:
Menu3();
publicstaticvoidMenu1()///小学主菜单
xiaoxues=newxiaoxue();
boolFlag=true;
intselnumber=0;
while(Flag){
\t\t******欢迎进入小学生信息管理系统!
\t\t1.增加数据"
\t\t2.修改数据"
\t\t3.删除数据"
\t\t4.按姓名查找"
\t\t5.显示全部"
\t\t6.按平均分排序"
\t\t7.退出系统"
try{
\t\t请输入选择(数字1-7):
selnumber=Convert.ToInt32(Console.ReadLine());
catch(FormatException){
你输入的数据格式有误!
!
if(selnumber<
=7&
selnumber>
Flag=false;
switch(selnumber){
s.Add();
s.Modify();
s.DeleteData();
case4:
s.Search();
case5:
s.Browse();
case6:
s.Order();
case7:
Environment.Exit(0);
publicstaticvoidMenu2()///中学主菜单
zhongxues=newzhongxue();
\t\t******欢迎进入中学生信息管理系统!
switch(selnumber){
s.Add2();
s.Modify2();
s.DeleteData2();
s.Search2();
s.Browse2();
s.Order2();
publicstaticvoidMenu3()///大学主菜单
daxues=newdaxue();
\t\t******欢迎进入大学生信息管理系统!
s.Add3();
s.Modify3();
s.DeleteData3();
s.Search3();
s.Browse3();
s.Order3();
publicstaticvoidSave(intn)///保存N个学生信息
FileStreamfs=null;
BinaryWriterbw=null;
FileInfofi=null;
DirectoryInfodi=newDirectoryInfo("
."
strings=di.Root.ToString();
//获取当前文件的根目录
s=s+"
1.dat"
;
fi=newFileInfo(s);
if(fi.Exists){//判断文件是否存在,存在则追加,不存在则创建
fs=newFileStream(s,FileMode.Append,FileAccess.Write);
bw=newBinaryWriter(fs);
else{
fs=newFileStream(s,FileMode.Create,FileAccess.Write);
catch(IOException){
操作文件失败!
return;
for(inti=0;
i<
n;
i++){
bw.Write(sd[i].no);
bw.Write(sd[i].name);
bw.Write(sd[i].english);
bw.Write(sd[i].chinese);
bw.Write(sd[i].math);
bw.Write(sd[i].average);
写文件失败!
finally{
bw.Close();
fs.Close();
数据已保存!
请按任意键继续"
Console.ReadKey(true);
publicstaticvoidSaveToArray(refintlen)///将数据保存至数组中
sd=newxiaoxue[len];
for(intj=0;
j<
len;
j++){
sd[j]=newxiaoxue();
BinaryReaderbr=null;
Strings=di.Root.ToString();
fs=newFileStream(s,FileMode.Open,FileAccess.Read);
br=newBinaryReader(fs);
inti=0;
for(i=0;
sd[i].no=br.ReadString();
sd[i].name=br.ReadString();
sd[i].english=br.ReadInt32();
sd[i].chinese=br.ReadInt32();
sd[i].math=br.ReadInt32();
sd[i].average=br.ReadInt32();
catch(EndOfStreamException)
{len=i-1;
br.Close();
catch{return;
}
publicstaticvoidSaveToFile(intlen)///将数据保存至文件中
FileStreamfs1=null;
DirectoryInfodi;
strings;
di=newDirectoryInfo("
s=di.Root.ToString();
fs1=newFileStream(s,FileMode.Create,FileAccess.Write);
bw=newBinaryWriter(fs1);
if(sd[i].no!
="
){
写入数据错误!
fs1.Close();
修改数据成功!
请按任意键继续!
publicstaticvoidMain(){//主函数
show();
usingSystem.Collections.Generic;
usingSystem.Linq;
usingSystem.Text;
namespaceConsoleApplication1
classxiaoxue:
Student
publicintchinese;
publicintenglish;
publicintmath;
publicintgetchinese
get{returnchinese;
set{chinese=value;
publicintgetenglish
get{returnenglish;
set{english=value;
publicintgetmath
get{returnmath;
set{math=value;
publicvoidInput(inti)///输入某一学生信息
\n请输入第{0}学生的信息:
i+1);
while(true)//这个循环用来控制学号不能相同
\n学号"
sd[i].no=Console.ReadLine();
intj=0;
for(j=0;
i;
=sd[j].no){
if(i==0||j!
=i)
您输入的学号重复,请重输!
姓名"
sd[i].name=Console.ReadLine();
语文成绩"
sd[i].english=Convert.ToInt32(Console.ReadLine());
英语成绩"
sd[i].chinese=Convert.ToInt32(Console.ReadLine());
数学成绩"
sd[i].math=Convert.ToInt32(Console.ReadLine());
sd[i].average=(sd[i].english+sd[i].chinese+sd[i].math)/3;
catch(FormatExceptione){
您输入的数据有误!
+e.Message);
publicstaticvoidSaveToArray(refintlen){...}///将数据保存至数组中
publicstaticvoidSave(intn){...}///保存N个学生信息
publicstaticvoidSaveToFile(intlen){Menu1();
}///将数据保存至文件中
privatestaticvoidMenu1(){}
publicvoidAdd()///添加模块
intn=0;
\n请输入您需添加的学生记录的个数:
n=Convert.ToInt32(Console.ReadLine());
您输入的数据格式有误!
sd=newxiaoxue[n];
sd[i]=newxiaoxue();
Input(i);
if(n!
=0)
Save(n);
publicvoidModify()///修改模块
intlen=0;
BrowseAll(reflen);
SaveToArray(reflen);
xiaoxuetemp=newxiaoxue();
请输入要修改学生的学号(学号不可改):
temp.no=Console.ReadLine();
\n姓名:
temp.name=Console.ReadLine();
\n
- 配套讲稿:
如PPT文件的首页显示word图标,表示该PPT已包含配套word讲稿。双击word图标可打开word文档。
- 特殊限制:
部分文档作品中含有的国旗、国徽等图片,仅作为作品整体效果示例展示,禁止商用。设计者仅对作品中独创性部分享有著作权。
- 关 键 词:
- C# 学生 管理 系统 课程设计 报告