zoukankan      html  css  js  c++  java
  • 例题:输入学生的各项资料,然后根据学生的分数,重新排序。重新复习结构体,集合,数组,for循环,冒泡排序,水平符的使用。

     class Program

        {

            struct student     //定义一个student的结构体

            {

                public string name;   //基本格式

                public int code;

                public int age;  

               public int fenshu;

            }

            static void Main(string[] args)

            {

                while (true)

                {   

                  ArrayList al = new ArrayList();  //定义一个新的集合

                    Console.Write("请输入人数:");

                    int renshu = Convert.ToInt32(Console .ReadLine ());

                    for (int i = 0; i < renshu ; i++)

                    {

                                           student r = new student();   //定义一个student类型r的变量,可以存储数值

                        Console.Write("请输入学生姓名:");

                        r.name = Console.ReadLine();

                        Console.Write("请输入学生学号:");

                        r.code = Convert.ToInt32(Console.ReadLine());

                        Console.Write("请输入学生年龄:");

                        r.age = Convert.ToInt32(Console.ReadLine());

                        Console.Write("请输入学生分数:");  

                       r.fenshu = Convert.ToInt32(Console.ReadLine());

                        al.Add(r);     //把r的值代入到al这个集合里

                  }

                    for (int i = 0; i < renshu; i++)      //按分数冒泡排序

                   {

                        for (int j = i; j < renshu -1; j++)

                        {

                            if (((student)al[i]).fenshu<((student)al[j+1]).fenshu  )   //好好看这句代码,不好理解,student类型里从al里取值

                            {   

                              student  zhong ;

                                zhong = (student)al[i] ;

                                al[i] = al[j + 1];

                                al[j + 1] = zhong;

                            }  

                       }  

                   }  

                   Console.WriteLine("排后学生顺序");

                    for (int i = 0; i < renshu ; i++)

                    {                                                     //水平符输出

                        Console.WriteLine("姓名"+((student)al[i]).name+" 学号"+((student)al[i]).code +" 分数"+((student)al[i]).fenshu  +" 年龄"+((student)al[i]).age  );

                    }

                }  

               Console.ReadLine();

  • 相关阅读:
    ubuntu的apt
    sudo命令
    MySQL导出数据到csv文件
    MySQL导出数据到文件报错
    git_backup.py gitlab项目备份
    java中图像与数组转换
    mongodb转elasticsearch
    impyla-0.14.2.2安装注意事项
    python3.7.3升级 with-openssl openssl-1.0.2a
    hadoop自带性能测试
  • 原文地址:https://www.cnblogs.com/275147378abc/p/4433463.html
Copyright © 2011-2022 走看看