班级学生总成绩和平均成绩计算
2013-04-30 13:52
393 查看
using System; using System.Collections.Generic; using System.Linq; using System.Text; namespace test9 { class Program { // 班级学生总成绩和平均成绩计算: //1)让用户输入班级人数 //2)让用户依次输入该班级每个学员的姓名和成绩(0-100之间) //3)按成绩进行排序,按成绩由高到低依次输出学生的姓名和成绩 static void Main(string[] args) { //提示用户输入 Console.WriteLine("请输入班级人数:"); //定义接收总人数变量 int Zong = 0; //变量,控制输入正确后下一步 bool b = true; while (b) { //判断输入是否正确,错误抛出异常 try { Zong = Convert.ToInt32(Console.ReadLine()); b = false; } catch (Exception) { //出现异常提示重新输入 Console.WriteLine("输入错误!重新输入"); b = true; } } //定义存放成绩的数组Nums和存放名字的数组Names string[] Names = new string[Zong]; int[] Nums = new int[Zong]; //循环让用户依次输入该班级每个学员的姓名和成绩 for (int i = 0; i < Zong; i++) { Console.WriteLine("请输入第{0}个人的姓名:", i + 1); Names[i] = Console.ReadLine(); Console.WriteLine("请输入{0}的分数:", Names[i]); string N = Console.ReadLine(); //对成绩进行处理 Nums[i] = TryNum(N); } //对成绩进行排序 Nums = PaiXu(Nums,ref Names); //循环输出排序好的数组 for (int i = 0; i < Nums.Length; i++) { Console.WriteLine("第{0}名是:{1},分数:{2}",i+1,Names[i],Nums[i]); } Console.ReadKey(); } /// <summary> /// 处理用户输入的成绩 /// </summary> /// <param name="n">用户输入数据</param> /// <returns>返回正确值</returns> static int TryNum(string n) { int Num = 0; //处理用户的输入 try { //转换,出错进入异常。正确继续 Num = Convert.ToInt32(n); //判断数字是否大于0小于100 if (0 > Num || Num > 100) { //大于0小于100抛出错误 throw new Exception("大于0小于100"); } } catch (Exception e) { //异常提示 Console.WriteLine("输入错误请重新输入:"+e); //递归,继续执行 TryNum(Console.ReadLine()); } return Num; } /// <summary> /// 冒泡排序 /// </summary> /// <param name="array">分数数组</param> /// <param name="names">姓名数组</param> /// <returns>排序后的数组</returns> static int[] PaiXu(int[] array,ref string[] names) { int length = array.Length - 1; bool isExchanged = false; for (int i = 0; i < length; i++) { isExchanged = false; for (int j = length; j > i; j--) { if (array[j] > array[j - 1]) { int temp = array[j]; array[j] = array[j - 1]; array[j - 1] = temp; string t = names[j]; names[j] = names[j - 1]; names[j - 1] = t; isExchanged = true; } } if (!isExchanged)//一遍比较过后如果没有进行交换则退出循环 break; } return array; } } }
相关文章推荐
- 计算指定班级的学生的平均成绩
- PHP之键盘输入四个学生的学号 姓名 语文 数学 英语信息 ,计算出每个学生的平均成绩,输出
- 计算指定人数班级的班级平均成绩(计数器控制控制的循环)
- 随即产生100个学生的成绩,计算平均成绩,并统计高于平均成绩的学生人数
- JAVA 数组实例-求学生平均成绩,与计算数组的长度
- 在一个长度为10的整型数组里面,保存了班级10个学生的考试成绩。要求编写5个函数,分别实现计算考试的总分,最高分,最低分,平均分和考试成绩降序排序
- JAVA学习(2)——输入学生的5门成绩,计算平均成绩
- 文件操作:有五个学生,每个学生有 3 门课的成绩,从键盘输入以上数据(包 括学生号,姓名,三门课成绩),计算出平均成绩,将所输入有的数据和计算出 的平均分数存放在磁盘文件 "stud "中
- 一个班级的学生成绩存在长度为10的数组中,计算不及格的学生数目
- 【C语言助教】35名学生,每名学生4门课程,随机产生,计算平均成绩,按平均成绩排名排名
- Linux-C基础知识学习:C语言作业-输入某个学生的信息(姓名,年龄,5门功课成绩),计算平均成绩并输出。(待完善)
- 作业3-2 输入一个正整数 n,再输入 n 个学生的成绩,计算平均成绩,并统计所有及格学生的人数
- 建立抽象类Student,添加属性学号,姓名,平均分,添加方法show()显示学生的个人信息(学号,姓名),添加抽象方法average()计算学生的平均成绩。建立Student的子类studentIT
- 一个班级的学生成绩存在长度为10的数组中,计算不及格的学生数目
- 输出班级第几个学生的平均成绩
- 案例:利用累加器计算前N个学生的总成绩和平均成绩
- 作业3-2 输入一个正整数 n,再输入 n 个学生的成绩,计算平均成绩,并统计所有及格学生的人数。
- 作业三-2.输入一个正整数 n,再输入 n 个学生的成绩,计算平均成绩,并统计所有及格学生的人数。
- 一个班级的学生成绩存在长度为10的数组中,计算不及格的学生数目
- 第17周自由入侵 输出班级第n个学生的平均成绩