结构体案例之学生成绩输入及排序

class Program
    {
        struct Student
        {
           public string name;
           public int age;
           public double Cshap;
           public double Database;
           public double Html;
           public double sum;
        }

        static void Main(string[] args)
        {
            Console.WriteLine("请输入学生的个数:");
            int a = Convert.ToInt32(Console.ReadLine());

            List<Student> list = new List<Student>();

            for (int i = 0; i < a; i++)
            {
                Student s = new Student();

                Console.WriteLine("请输入第{0}个学生的姓名:",i+1);
                s.name = Console.ReadLine();

                Console.WriteLine("请输入第{0}个学生的年龄:", i + 1);
                s.age = Convert.ToInt32(Console.ReadLine());

                Console.WriteLine("请输入第{0}个学生的Cshap成绩:", i + 1);
                s.Cshap = Convert.ToDouble(Console.ReadLine());

                Console.WriteLine("请输入第{0}个学生的数据库成绩:", i + 1);
                s.Database = Convert.ToDouble(Console.ReadLine());

                Console.WriteLine("请输入第{0}个学生的网页成绩:", i + 1);
                s.Html = Convert.ToDouble(Console.ReadLine());

                s.sum = s.Cshap + s.Database + s.Html;

                list.Add(s);
            }

            //排序
            for (int i = 0; i < list.Count-1; i++)
            {
                for (int j = 0; j < list.Count - 1 - i; j++)
                {
                    if (list[j].sum <= list[j + 1].sum)
                    {
                        Student zj = list[j];
                        list[j] = list[j + 1];
                        list[j + 1] = zj;
                    }
                }
            }
            //输出

            Console.WriteLine("姓名\t年龄\tCshap\t数据库\t网页\t总分");
            foreach (Student data in list)
            {
                Console.WriteLine(data.name+"\t"+data.age+"\t"+data.Cshap+"\t"+data.Database+"\t"+data.Html+"\t"+data.sum);
            }

        }

    }
时间: 2024-10-14 05:09:43

结构体案例之学生成绩输入及排序的相关文章

C#9 结构体 员工信息 学生成绩

结构体:相当于是我们自己定义的一种复杂的类型. int...  double float bool char string  DateTime  数组类型 生活中大部份的对象都是复合型的对象. 如何定义结构体类型? 一般来说结构体的定义要放在class的外面或class的里面,尽量不放在Main的里面. struct 自定义类型名 { public 变量类型  变量名;  ......;  ......;  ......; } 例如: struct YuanGong  //自定义的数据类型.用来

c语言:用结构体变量输出学生的信息,包括学号,姓名,性别。

用结构体变量输出学生的信息,包括学号,姓名,性别. 解:程序: #include<stdio.h> int main() { struct Student { long int num; char name[20]; char sex[5]; char addr[20]; }a = {1010,"yaoyao","Man","xi'an"};//定义结构体变量a并初始化 printf("num:%ld\nname:%s\ns

Problem X: C语言习题 学生成绩输入和输出

Problem X: C语言习题 学生成绩输入和输出 Time Limit: 1 Sec  Memory Limit: 128 MBSubmit: 4722  Solved: 2284[Submit][Status][Web Board] Description 编写一个函数print,打印一个学生的成绩数组,该数组中有5个学生的数据,每个学生的数据包括num(学号).name(姓名).score[3](3门课的成绩).编写一个函数input,用来输入5个学生的数据. Input 5个学生的学号

使用结构体变量存储学生姓名和课程成绩,计算平均分及查找不及格同学姓名及分数

1 struct Student //声明Student类型结构体变量 2 { 3 char name[20]; 4 int score[5]; 5 }; 6 typedef struct Student Stu; 7 8 void main() 9 { 10 11 Stu stu[3]; 定义Student类型变量数组 12 int i,j; 13 for(i=0;i<3;i++) //输入学生姓名和成绩 14 { 15 printf("please input student[%d]'

C语言:SWUST OJ,程序设计C 实验六 结构体 题目三 学生结构体链表(0068)

Description: 用结构体建立学生信息,学生信息包括学号.姓名.成绩,建立一个有 n 名学生的链表, 并将链表输出. Input: 一次输入学生信息包括学号.姓名.0 0 0结束程序. Sample Input: C1001 Li 70 M1002 He 89 E1003 Xie 83 M1004 Wu 92 E1005 Bao 80 Sample Output: C1001 Li 70 M1002 He 89 E1003 Xie 83 M1004 Wu 92 E1005 Bao 80

利用结构体计算每个学生的4门课程的平均分,将各科成绩及平均分输出到score.txt中

#include "stdafx.h" #include <stdlib.h> #include <stdio.h> typedef struct date { int year; int month; int day; }DATE; typedef struct student { long studentID; char studentName[20]; char studentSex; DATE birthday; int score[4]; }STUDE

结构体案例之对战游戏

class Program { struct Player { public string name; public int blood; public int attack; public int defence; public int shanbi; public ArrayList jineng ; public ArrayList shanghai; } static void Main(string[] args) { #region 定义技能库 string [] jn = new

球员成绩输入、排序

Console.WriteLine("请输入球员的个数:"); int a = Convert.ToInt32(Console.ReadLine()); int[] n = new int[a];//定义一维数组 for (int i = 0; i < a; i++)//for循环输入球员成绩 { Console.WriteLine("请输入第{0}个球员的成绩:", i + 1); n[i] = Convert.ToInt32(Console.ReadLin

C语言学生成绩管理系统分享

设计一个学生成绩管理系统,对上学期的本班的学习成绩进行管理,具有查询和检索功能,并且能够对指定文件操作,也可将多个文件组成一个文件 . A . 设计内容 1 .每一条记录包括一个学生的学号.姓名.性别.各门课成绩(上学期的科目).平均成绩. 2 .输入功能:可以一次完成若干条记录的输入. 3 .显示功能:完成全部学生记录的显示. 4 .查找功能:完成按姓名或学号查找学生记录,并显示. 5 .排序功能:按学生平均成绩进行排序. 6 .插入功能:按 学号顺序插入 一条学生记录. 7 .将学生记录存在