ICode9

精准搜索请尝试: 精确搜索
首页 > 编程语言> 文章详细

C#学生管理系统/学习

2019-10-20 19:04:16  阅读:222  来源: 互联网

标签:String 管理系统 C# List System 学习 student using public


题目:

实现一个菜单,针对Student.txt与Class.txt文件进行操作

描述:

I 输入学生信息:输入学生学号、姓名、性别、出生日期、班级名称、联系电话,跟已经存在的学生信息同样格式保存在文件中。如果学号重复,则提示“学号重复,无法插入”
L 显示所有学生:每个学生的信息占一行;每个学生的信息项包括学号、姓名、性别、出生日期、班级名称、联系电话,各项以Tab分隔
C 按班级查询:输入班级名称,显示学生详细信息,包括学号、姓名、性别、联系电话,各项以Tab分隔。多人分行显示。
N 按姓名查询:输入学生姓名,显示学生详细信息,包括学号、姓名、性别、出生日期、班级名称、联系电话,各项以Tab分隔。多人分行显示。
X 退出系统:程序退出

总结:

主要是对文件进行操作。没什么好说的。

  1 using System;
  2 using System.Collections;
  3 using System.Collections.Generic;
  4 using System.IO;
  5 using System.Text;
  6 
  7 namespace NET第二次作业
  8 {
  9     public class Student
 10     {
 11         public String num;
 12         public String name;
 13         public String sex;
 14         public String date_of_birth;
 15         public String classId;
 16         public String className;
 17         public String telephone;
 18     }
 19     public class myClass
 20     {
 21         public String id;
 22         public String classname;
 23     }
 24     class MyFourTest
 25     {
 26         static List<Student> students = new List<Student>();
 27         static List<myClass> myClasss = new List<myClass>();  
 28         public static void Init()
 29         {
 30 
 31             List<String> student_p = new List<string>();
 32             StreamReader student = new StreamReader("C:\\Users\\a1191\\Desktop\\student.txt", Encoding.Default);
 33            
 34             while (!student.EndOfStream)
 35             {
 36                 student_p.Add(student.ReadLine());
 37                // Console.WriteLine(student_p[i++]+"a");
 38             }
 39             for(int j=0; j<student_p.Count; j++)
 40             {
 41                 string[] arr = student_p[j].Split(',');
 42                 
 43                 Student student1 = new Student();
 44                 student1.num = arr[0];
 45                 student1.name = arr[1];
 46                 student1.sex = arr[2];
 47                 student1.date_of_birth = arr[3];
 48                 student1.classId = arr[4];
 49                 student1.telephone = arr[5];
 50                 students.Add(student1);
 51             }
 52             student.Close();
 53             
 54             StreamReader streamReader = new StreamReader("C:\\Users\\a1191\\Desktop\\class.txt", Encoding.Default);
 55             while (!streamReader.EndOfStream)
 56             {
 57                 String class_ = streamReader.ReadLine();
 58                 string[] arr = class_.Split(',');
 59                 myClass t = new myClass();
 60                 t.classname = arr[1];
 61                 t.id = arr[0];
 62                 myClasss.Add(t);
 63                 for(int i=0; i<students.Count; i++)
 64                 {
 65                     if(students[i].classId.Equals(arr[0]))
 66                     {
 67                         students[i].className = arr[1];
 68                         //Console.WriteLine(arr[0]);
 69                     }
 70                 }
 71             }
 72             streamReader.Close();
 73         }
 74 
 75         public static void saveInfo(Student t)
 76         {
 77             StreamWriter student = new StreamWriter("C:\\Users\\a1191\\Desktop\\student.txt", true);
 78             StreamWriter streamReader = new StreamWriter("C:\\Users\\a1191\\Desktop\\class.txt", true);
 79             String s = t.num + ',' + t.name + ',' + t.sex + ',' + t.date_of_birth + ',' + t.classId + ',' + t.telephone;
 80             student.WriteLine(s);
 81             String c = t.classId + ',' + t.className + ",2005";
 82             streamReader.WriteLine(c);
 83             student.Close();
 84             streamReader.Close();
 85         }
 86         public static void InputStudentInfo()
 87         {
 88             Student t = new Student();
 89             Console.WriteLine("请输入学号:");
 90             t.num = Console.ReadLine();
 91             for(int i=0; i<students.Count; i++)
 92             {
 93                 if(t.num.Equals(students[i].num))
 94                 {
 95                     Console.WriteLine("学号重复,无法插入");
 96                     return;
 97                 }
 98             }
 99             Console.WriteLine("请输入姓名:");
100             t.name = Console.ReadLine();
101             Console.WriteLine("请输入性别:");
102             t.sex = Console.ReadLine();
103             Console.WriteLine("请输入出生日期:");
104             t.date_of_birth = Console.ReadLine();
105             Console.WriteLine("请输入班级名称:");
106             t.className = Console.ReadLine();
107             Console.WriteLine("请输入联系电话:");
108             t.telephone = Console.ReadLine();
109             for(int i=0; i<myClasss.Count; i++)
110             {
111                 if(t.className.Equals(myClasss[i].classname))
112                 {
113                     t.classId = myClasss[i].id;
114                 }
115             }
116             students.Add(t);
117             for(int i=0; i<students.Count; i++)
118             {
119                 Console.WriteLine(students[i].className);
120             }
121 
122             saveInfo(t);
123         }
124         public static void ShowAllStudent()
125         {
126             Console.WriteLine("学号\t姓名\t性别\t出生日期\t班级名称\t\t联系电话");
127             for(int i=0; i<students.Count; i++)
128             {
129                 Console.WriteLine(students[i].num + "\t"+ students[i].name + "\t"+ students[i].sex + 
130                     "\t"+ students[i].date_of_birth + "\t"+ students[i].className + "\t" +students[i].telephone);
131             }
132         }
133         public static void GetStudentByClass()
134         {
135             Console.WriteLine("请输入要查询的班级名称:");
136             String name = Console.ReadLine();
137             Console.WriteLine("学号\t姓名\t性别\t联系电话");
138             for (int i = 0; i < students.Count; i++)
139             {
140                 if(students[i].className.Equals(name))
141                 {
142                     Console.WriteLine(students[i].num + "\t" + students[i].name + "\t" + students[i].sex +
143                         "\t"   + students[i].telephone);
144                 }
145             }
146         }
147         public static void GetStudentByName()
148         {
149             Console.WriteLine("请输入要查询的学生姓名:");
150             String name = Console.ReadLine();
151             Console.WriteLine("学号\t姓名\t性别\t出生日期\t班级名称\t\t联系电话");
152             for (int i = 0; i < students.Count; i++)
153             {
154                 if (students[i].name.Equals(name))
155                 {
156                     Console.WriteLine(students[i].num + "\t" + students[i].name + "\t" + students[i].sex +
157                         "\t" + students[i].date_of_birth + "\t" + students[i].className + "\t" + students[i].telephone);
158                 }
159             }
160         }
161 
162         public static void StudentTest()
163         {
164             
165             Init();
166             while (true)
167             {
168                 ConsoleKeyInfo cmd;
169                 Console.WriteLine("欢迎使用学生管理系统\n");
170                 Console.WriteLine("I  输入学生信息\n");
171                 Console.WriteLine("L  显示所有学生\n");
172                 Console.WriteLine("C  按班级查询\n");
173                 Console.WriteLine("N  按姓名查询\n");
174                 Console.WriteLine("X  退出系统\n");
175                 cmd =  Console.ReadKey();
176                 Console.WriteLine("");
177                 switch (cmd.KeyChar)
178                 {
179                     case 'I':
180                         InputStudentInfo();
181                         break;
182                     case 'L':
183                         ShowAllStudent();
184                         break;
185                     case 'C':
186                         GetStudentByClass();
187                         break;
188                     case 'N':
189                         GetStudentByName();
190                         break;
191                     case 'X':
192                         System.Environment.Exit(0);
193                         break;
194                     default:
195                         Console.WriteLine("\n请输入指定字符(区分大小写)\n");
196                         break;
197                 }
198                 Console.ReadKey();
199                 Console.Clear();
200             }
201 
202 
203         }
204 
205     }
206 }

 

标签:String,管理系统,C#,List,System,学习,student,using,public
来源: https://www.cnblogs.com/wu199723/p/11708572.html

本站声明: 1. iCode9 技术分享网(下文简称本站)提供的所有内容,仅供技术学习、探讨和分享;
2. 关于本站的所有留言、评论、转载及引用,纯属内容发起人的个人观点,与本站观点和立场无关;
3. 关于本站的所有言论和文字,纯属内容发起人的个人观点,与本站观点和立场无关;
4. 本站文章均是网友提供,不完全保证技术分享内容的完整性、准确性、时效性、风险性和版权归属;如您发现该文章侵犯了您的权益,可联系我们第一时间进行删除;
5. 本站为非盈利性的个人网站,所有内容不会用来进行牟利,也不会利用任何形式的广告来间接获益,纯粹是为了广大技术爱好者提供技术内容和技术思想的分享性交流网站。

专注分享技术,共同学习,共同进步。侵权联系[81616952@qq.com]

Copyright (C)ICode9.com, All Rights Reserved.

ICode9版权所有