C#复习,输入学生信息排列成绩

C#复习:
在控制台程序中使用结构体、集合,完成下列要求
项目要求:
一、连续输入5个学生的信息,每个学生都有以下4个内容:
1、序号 - 根据输入的顺序自动生成,不需要手动填写,如输入第一个学生的序号是1,第二个是2,以此类推
2、学号 - 必填,如:S001,S002... 以此类推
3、姓名 - 必填
4、成绩 - 大于等于0,小于等于100

以上内容必须按照要求填写,请写好相应的验证,如果没填写正确,则让用户重复填写到正确为止

二、5个学生信息都输入完毕后,按照分数从高到低的顺序将学生信息展示出来
显示格式如下:

==============学生成绩展示=================
序号 学号 姓名 成绩
3 S003 张三 100
1 S001 李四 99
2 S002 王五 98
...
...

-------------------------------------------------------------------------------

using System;
using System.Collections.Generic;
using System.Linq;
using System.Text;
using System.Threading.Tasks;
using System.Collections;

namespace ConsoleApplication4
{
    class Program
    {
        struct swe
        {
            public int xuhao;
            public string xuehao;
            public string xingming;
            public double chengji;
        }
        static void Main(string[] args)
        {
            ArrayList al = new ArrayList();
            Console.WriteLine("请输入班级人数:");
            int n = int.Parse(Console.ReadLine());
            for (int i = 1; i <= n; i++)
            {
                swe s = new swe();
                s.xuhao = i;
                while (true)
                {
                    Console.WriteLine("请输入第{0}个学生的学号:", i);
                    s.xuehao = Console.ReadLine();
                    if (s.xuehao == "")
                    {
                        Console.WriteLine("学号不能为空!");
                    }
                    else
                    {
                        break;
                    }
                }
                while (true)
                {
                    Console.WriteLine("请输入第{0}个学生的姓名:", i);
                    s.xingming = Console.ReadLine();
                    if (s.xingming == "")
                    {
                        Console.WriteLine("姓名不能为空!");
                    }
                    else
                    {
                        break;
                    }
                }
                while (true)
                {
                    Console.WriteLine("请输入第{0}个学生的成绩;", i);
                    try
                    {
                        s.chengji = int.Parse(Console.ReadLine());
                        if (s.chengji >= 0 && s.chengji <= 100)
                        {
                            break;
                        }
                        else
                        {
                            Console.WriteLine("成绩必须在0~100之间!");
                        }
                    }
                    catch
                    {
                        Console.WriteLine("成绩输入有误!");
                    }
                }
                al.Add(s);
                Console.WriteLine();
                for (int e = 0; e < al.Count - 1; e++)
                {
                    for (int j = e + 1; j < al.Count; j++)
                    {
                        swe s1 = (swe)al[e];
                        swe s2 = (swe)al[j];
                        if (s1.chengji < s2.chengji)
                        {
                            swe zhong = (swe)al[e];
                            al[e] = al[j];
                            al[j] = zhong;
                        }
                    }
                }
            }
            Console.WriteLine("序号 学号 姓名 成绩 ");
            foreach (object qq in al)
            {
                Console.WriteLine(((swe)qq).xuhao + "      " +
                ((swe)qq).xuehao + "    " +
                ((swe)qq).xingming + "    " +
                ((swe)qq).chengji);
            }
时间: 2024-10-10 22:05:22

C#复习,输入学生信息排列成绩的相关文章

练习!!输入学生信息

class Program { //定义一个结构体 struct student//student就是我们自己造的新数据类型 { public int code;//public修饰符 public string name;//结构体的成员 public decimal height; } static void Main(string[] args) { ArrayList arr = new ArrayList(); for (int i = 0; i < 3; i++) { student

20150920学习内容:结构体及题目:定义一个学生的结构体,学号,姓名,身高,输入学生信息,按身高排序输出

结构体:用户自定义数据类型,实际就是变量组,可以一次存多个不同变量 结构体定义在main函数的外面 Struck 结构体名 { // 元素一 // 元素二 } 题目:定义一个学生的结构体,学号,姓名,身高,输入学生信息,按身高排序输出

定义一个学生的结构体,学号,姓名,身高,输入学生信息。按身高排序输出

using System; using System.Collections.Generic; using System.Linq; using System.Text; using System.Collections; namespace ConsoleApplication1 { class Program { struct student { public int code;//pu修饰符blic public string name;//结构体成员 public int shengao

C# 定义一个学生的结构体,输入学生信息,学号,姓名,身高,按身高排序输出

class Program { //定义一个结构体 struct student//student就是我们自己造的新数据类型 { public int code;//public修饰符 public string name;//结构体的成员 public decimal height; } static void Main(string[] args) { ArrayList arr = new ArrayList(); for (int i = 0; i < 3; i++) { student

[示例]创建Student类,输入学生信息并存入字典,将3个存有学生信息的字典存入数组,并计算

代码: main: #import <Foundation/Foundation.h> #import "Student.h" int main(int argc, const char * argv[]) { @autoreleasepool { Student *stu1=[[Student alloc]initWithName:@"wang" andGender:@"male" andAge:@28]; Student *stu

P354.输入学生信息,创立文件,实现排序,插入

#include<stdio.h> #include<stdlib.h> struct student {  char name[10];  int num;  float score_1;  float score_2;  float score_3;  float aver; }stu[6],temp; void save() {FILE*fp; int i; if((fp=fopen ("stu.dat","wb"))==NULL)  

键盘录入学生信息(姓名,语文成绩,数学成绩,英语成绩),按照总分从高到低存入文本文件

1.先写一个Student类 public class Student { private String name; private int chinese; private int math; private int english; public Student() { super(); } public Student(String name, int chinese, int math, int english) { this.name = name; this.chinese = ch

【C项目】 文件,结构体,链表,排序, 学生信息管理系统

1.密码登录: 2.通过键盘输入学生信息,包括学生学号.姓名.成绩: 3.将输入的信息保存到指定文件中: 4.从文件中读取学生信息: 5.显示全部学生信息: 6.按学生总分进行降序排序: 7.删除学生信息: 8.查找学生信息,可以通过学号查找,也可以通过姓名查找: 9.统计学生信息,统计出最高分和学生人数: 10.退出系统: 源代码: [email protected]:~$ cat main.c  #include<stdio.h> #include<stdlib.h> #inc

学习学生信息管理系统

北京工业大学耿丹学院               C语言课程设计报告   课程设计名称:高级语言程序设计 专业班级:计算机科学与技术1 姓名:吴双 学号:150809201   2016年5月1日                 这次作业的目的是阅读并理解学生信息管理系统.   #include"stdio.h" #include"stdlib.h" #include"string.h" #include"conio.h" #