标签: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. 本站为非盈利性的个人网站,所有内容不会用来进行牟利,也不会利用任何形式的广告来间接获益,纯粹是为了广大技术爱好者提供技术内容和技术思想的分享性交流网站。