控制台下的学生成绩标准管理系统_第1页
控制台下的学生成绩标准管理系统_第2页
控制台下的学生成绩标准管理系统_第3页
控制台下的学生成绩标准管理系统_第4页
控制台下的学生成绩标准管理系统_第5页
已阅读5页,还剩6页未读 继续免费阅读

下载本文档

版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领

文档简介

namespaceAlex_11_30_Practice{publicstructStudent//定义结构体★★关键{//将以下字段保留在结构体中publicintnumber;publicstringName;publicfloatnum1;publicfloatnum2;publicfloatnum3;}classProgram{publicstaticintcount=0;//定义下标计数器staticvoidMain(string[]args){//首先打印出程序界面打印Student[]stu=newStudent[50];//实例化一个结构体50数组boolb=true;do{Console.WriteLine("========================================================");Console.WriteLine("☆☆★学生成绩管理系统★☆☆");Console.WriteLine("========================================================");Console.WriteLine("\t0.退出系统\t1录入信息\t2浏览信息");Console.WriteLine("\t3.信息排序\t4插入信息\t5删除信息");Console.WriteLine("\t6.查找信息\t7修改信息\t8清屏");Console.WriteLine("^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^");Console.WriteLine("请选择功效:");stringstr1=Console.ReadLine();switch(str1)//用switch语句来实现功效选择{case"0":Console.WriteLine("确定退出系统(Y/N)Alex编写");four:stringstr2=Console.ReadLine();if(str2=="Y"||str2=="y"){b=false;}elseif(str2=="N"||str2=="n"){break;}else{Console.Write("请正确输入:");gotofour;}break;case"1":Insert(stu);break;case"2":B(stu);break;case"3":S(stu);break;case"4":I(stu);break;case"5":Del(stu);break;case"6":L(stu);break;case"7":R(stu);break;case"8":Console.Clear();break;default:Console.WriteLine("警告:请输入正确选项!");break;}}while(b);}publicstaticvoidInsert(Student[]st)//方法-录入信息{charch='y';while(ch=='y'||ch=='Y'){one:Console.Write("请输入学号:");//用循环语句会很繁琐,使用goto语句迎刃而解st[count].number=Int32.Parse(Console.ReadLine());for(inti=0;i<count+1;i++)//判定学号是否相同goto语句应用{if(st[i].number==st[count].number&&(i!=count)){Console.WriteLine("输入学号已存在!输入信息无效!");st[count].number=st[count-1].number;gotoone;}}ooo:Console.Write("请输入姓名:");//判定姓名不为空st[count].Name=Console.ReadLine();if(st[count].Name==""){Console.WriteLine("警告:输入姓名为空!输入信息无效!");gotoooo;}Console.Write("请输入第一门成绩:");st[count].num1=float.Parse(Console.ReadLine());Console.Write("请输入第二门成绩:");st[count].num2=float.Parse(Console.ReadLine());Console.Write("请输入第三门成绩:");st[count].num3=float.Parse(Console.ReadLine());count++;two:Console.WriteLine("是否继续Y/N");//goto语句跳转至此stringstr2=Console.ReadLine();if(str2=="Y"||str2=="y"){ch=char.Parse(str2);}elseif(str2=="N"||str2=="n"){break;}else{Console.WriteLine("请输入正确选择符号!");gototwo;//goto语句使用}}}publicstaticvoidR(Student[]st)//方法-修改信息{if(count==0){Console.WriteLine("警告:请先输入学生成绩信息!");}else{Console.Write("请输入您需要修改学生信息学号:");intnum4=Int32.Parse(Console.ReadLine());for(inti=0;i<count;i++){if(num4==st[i].number){Console.WriteLine("请输入您要修改信息:");Console.WriteLine("\t0.退出选项\t1.修改姓名\t2.修改第一门课成绩");Console.WriteLine("\t3.修改第二门课成绩\t\t4.修改第三门课成绩");intnum5=Int32.Parse(Console.ReadLine());switch(num5){case0:break;case1:Console.Write("姓名:");stringname2=Console.ReadLine();st[i].Name=name2;B(st);break;case2:Console.Write("第一门课成绩:");floatnum6=float.Parse(Console.ReadLine());st[i].num1=num6;B(st);break;case3:Console.Write("第二门课成绩:");floatnum7=float.Parse(Console.ReadLine());st[i].num2=num7;B(st);break;case4:Console.Write("第三门课成绩:");floatnum8=float.Parse(Console.ReadLine());st[i].num3=num8;B(st);break;}}}}}publicstaticvoidL(Student[]st)//方法-查找信息有{Console.Write("请输入您要查找学生姓名:");stringsName=Console.ReadLine();if(count!=0){Console.WriteLine("学号\t姓名\t第一门课\t第二门课\t第三门课\t平均分");for(inti=0;i<count;i++){if(st[i].Name==sName){floatave=(st[i].num1+st[i].num2+st[i].num3)/3;Console.WriteLine(st[i].number+"\t"+st[i].Name+"\t"+st[i].num1+"\t"+"\t"+st[i].num2+"\t"+"\t"+st[i].num3+"\t"+"\t"+ave);}}}else{Console.WriteLine("警告:请先输入学生信息!");}}publicstaticvoidB(Student[]st)//方法-浏览信息{if(count==0){Console.WriteLine("警告:无学生信息可浏览!!");}else{Console.WriteLine("学号\t姓名\t第一门课\t第二门课\t第三门课\t平均分");for(inti=0;i<count;i++){floatave=(st[i].num1+st[i].num2+st[i].num3)/3;Console.WriteLine(st[i].number+"\t"+st[i].Name+"\t"+st[i].num1+"\t"+"\t"+st[i].num2+"\t"+"\t"+st[i].num3+"\t"+"\t"+ave);}}}publicstaticvoidI(Student[]st)//方法-插入信息{Console.WriteLine("请输入需要插入学员信息:");Insert(st);//直接调用录入信息方法}publicstaticvoidS(Student[]st)//方法-信息排序{Console.WriteLine("\ta.按学号排序\t\tb.按成绩排序");stringstr=Console.ReadLine();//按学号排序冒泡排序法小到大if(str=="a"||str=="A"){for(intj=0;j<count;j++){for(inti=1;i<count-j;i++){if(st[i-1].number>st[i].number){Studenttemp=st[i];st[i]=st[i-1];st[i-1]=temp;//小->大}}}B(st);}elseif(str=="b"||str=="B")//按平均分排序冒泡排序法大到小{for(intj=0;j<count;j++){for(inti=1;i<count-j;i++){floatave1=(st[i-1].num1+st[i-1].num2+st[i-1].num3)/3;floatave2=(st[i].num1+st[i].num2+st[i].num3)/3;if(ave1<ave2){Studenttemp=st[i];st[i]=st[i-1];st[i-1]=temp;}}}B(st);}else{Console.WriteLine("请正确输入!");}}publicstaticvoi

温馨提示

  • 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
  • 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
  • 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
  • 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
  • 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
  • 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
  • 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。

评论

0/150

提交评论