C#例题:输入学生学号,姓名,分数,然后根据分数进行排序。这个题是用集合和结构体来做,与上一题不同。掌握基础知识很重要

 class Program
    {
        struct student
        {
            public string name;
            public int code;
            public int age;
            public double fenshu;

        }

        static void Main(string[] args)
        {
            ArrayList al = new ArrayList();  //定义一个新的集合
            Console.Write("请输入人数:");
            int renshu = Convert.ToInt32(Console .ReadLine ());
            for (int i = 0; i <renshu; i++)
            {
                student r = new student();
                Console.Write("请输入第"+(i+1)+"个人的名字:");
                r.name = Console.ReadLine();

                Console.Write("请输入第" + (i + 1) + "个人的学号:");
                r.code = Convert.ToInt32(Console .ReadLine ());
                Console.Write("请输入第" + (i + 1) + "个人的年龄:");
                r.age = Convert.ToInt32(Console .ReadLine ());
                Console.Write("请输入第" + (i + 1) + "个人的分数:");
                r.fenshu = Convert.ToDouble(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 结构体的集合里调出分数进行比较
                        {
                            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("名字\t" + ((student)al[i]).name + "学号\t" + ((student)al[i]).code + "年龄\t" + ((student)al[i]).age
                        + "分数\t" + ((student)al[i]).fenshu );

                }
                Console.ReadLine();
                }
            }
        }
时间: 2024-08-13 16:22:31

C#例题:输入学生学号,姓名,分数,然后根据分数进行排序。这个题是用集合和结构体来做,与上一题不同。掌握基础知识很重要的相关文章

写程序完成输入学生学号,姓名,以及成绩信息,并由高到低排序

要求:写程序完成输入学生学号,姓名,以及成绩信息,根据学生成绩由高到低排序. #include <stdio.h>#include <string.h>typedef struct student_score{ int id; char name[20]; int score; }STU;  //定义结构体 int main(int argc, const char *argv[]){ int i,j; int num; STU tmp,stu[100]; printf("

c#例题:输入学生的学号,姓名,分数,然后根据分数进行排序再输出最终结果。重点学习用结构体定义数组的表达方式

class Program { struct student //定义一个结构体 { public int code; public string name; public int fenshu; } static void Main(string[] args) { Console.Write("请输入人数:"); int renshu = Convert.ToInt32(Console .ReadLine ()); student[] r = new student[renshu]

例题:输入学生的各项资料,然后根据学生的分数,重新排序。重新复习结构体,集合,数组,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("请输入人

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

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

某班有5个学生, 每名学生的数据包括学号,姓名,3门课成绩,从键盘上输入5名学生数据,要求打印出3门课的总平均成绩以及最高分的学生数据(包括学号,姓名,3门课成绩)

1 #define _CRT_SECURE_NO_WARNINGS //关闭安全检查 2 #include<stdio.h> 3 #include<stdlib.h> 4 5 //定义结构体类型 6 struct ST 7 { 8 int ID; 9 char name[20]; 10 float score[3]; 11 }; 12 13 //方法1 : 结构体数组作为函数参数 开销大 14 float avg(struct ST sts[], int n) 15 { 16 fl

c#部分---用结构体的题目- //请输入班级人数,输入每个人的学号,姓名,和语文分数、数学分数和英语分数(要求使用结构体)

//请输入班级人数,输入每个人的学号,姓名,和语文分数.数学分数和英语分数(要求使用结构体), //求班级里两个语文分数是最高分的学生的所有信息:数学分数是最高分的两个学生的所有信息:英语平均分 建立结构体 class Program { struct student { public int xuehao ; public string name; public score score; } struct score { public double yufen; public double s

字符串数组 输入3个字符串,要求按由小到大的字母顺序输出; 输入n个学生的姓名和学号到字符串数组中,在输入一个姓名,如果班级有该生则返回其信息,否则返回本班无此人

输入3个字符串,要求按由小到大的字母顺序输出 如 输入franch england china,输出结果是china england franch 三个数排序输出,比较三个数的大小怎么做? a=18 b= 9 c=30 a>b 交换 a=9 b=18 可不可以用选择法?可不可以用冒泡法?但是这里用不着 例题: string1 string2 string3 temp a=18 b= 9 c=30 b>c? 交换 b中放的是b 和 c 中小的数,c中放的是bc中大的数. 如果a<b,则输出

C#使用结构体,输入5个人的学号,姓名,分数,按照成绩高低排列打印出来

using System; using System.Collections.Generic; using System.Linq; using System.Text; using System.Threading.Tasks; using System.Collections; namespace ConsoleApplication3 { class Program { struct student { public string sno; public string name; publ

一班里有n个学生,把各学生的姓名及学号输入并储存,再输入一个学生姓名后查找,看是否有此学生。

#include <iostream> #include <string> using namespace std; string name[50],num[50]; int n; int main() { void input_date(); void search(string find_name); string find_name; cout<<"请输入本班学生的人数 :"; cin>>n; input_date(); cout&