C#学生系统(源代码)

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

namespace _学生管理系统
{
    public struct Student
    {
        public string Name;//定义名字
        public string Xuehao;//定义学号
        public string Class;//班级
        public int Age;//年龄
        public string Sex;//性别
        public double Score;//成绩
    }
    class Program
    {
        static Student[] stu = new Student[20];
        static int count;
        //初始化数组
        public static void moren()//默认的五位同学信息
        {
            stu[0].Xuehao = "0001";
            stu[0].Name = "小贱";
            stu[0].Class = "1903";
            stu[0].Age = 19;
            stu[0].Sex = "男";
            stu[0].Score = 400;

            stu[1].Xuehao = "0002";
            stu[1].Name = "老凡";
            stu[1].Class = "1903";
            stu[1].Age = 18;
            stu[1].Sex = "女";
            stu[1].Score = 450;

            stu[2].Xuehao = "0003";
            stu[2].Name = "小鹿";
            stu[2].Class = "1903";
            stu[2].Age = 18;
            stu[2].Sex = "女";
            stu[2].Score = 460;

            stu[3].Xuehao = "0004";
            stu[3].Name = "小梅";
            stu[3].Class = "1903";
            stu[3].Age = 18;
            stu[3].Sex = "男";
            stu[3].Score = 350;

            stu[4].Xuehao = "0005";
            stu[4].Name = "小柒";
            stu[4].Class = "1903";
            stu[4].Age = 18;
            stu[4].Sex = "男";
            stu[4].Score = 390;
            count = 5;
        }
        public static void Man()//主菜单
        {
            Console.WriteLine("1.查询学生信息");
            Console.WriteLine("2.录入学生信息");
            Console.WriteLine("3.修改学生信息");
            Console.WriteLine("4.删除学生信息");
            Console.WriteLine("5.退出");
        }
        public static void AddStudent()
        {
            string flag;
            do
            {
                Console.WriteLine("请输入学号:");
                stu[count].Xuehao = Console.ReadLine();
                Console.WriteLine("请输入姓名:");
                stu[count].Name = Console.ReadLine();
                Console.WriteLine("请输入班级:");
                stu[count].Class = Console.ReadLine();
                Console.WriteLine("请输入年龄:");
                stu[count].Age = int.Parse(Console.ReadLine());
                Console.WriteLine("请输入性别:");
                stu[count].Sex = Console.ReadLine();
                Console.WriteLine("请输入成绩:");
                stu[count].Score = double.Parse(Console.ReadLine());
                count++;
                Console.WriteLine("添加成功!是否继续添加(y/n)?");
                flag = Console.ReadLine();
            } while (flag == "Y" || flag == "y");
        } //录入信息功能
       public static void FindStudent()
        {
            string choose;
            do
            {
                Console.WriteLine("1.查询全部");
                Console.WriteLine("2.按班级查询");
                Console.WriteLine("3.按学号查询");
                Console.WriteLine("4.按姓名查询");
                Console.WriteLine("5.按分数查询排名");
                Console.WriteLine("0.返回上一级菜单");
                Console.WriteLine("请选择:");
                choose = Console.ReadLine();
                switch (choose)
                {
                    case "1":
                        FindAll();//查询全部
                        break;
                    case "2":
                        FindClass();//查询班级
                        break;
                    case "3":
                        FindXueHao();//查询学号
                        break;
                    case "4":
                        FindName();//按名字查询
                        break;
                    case "5":
                        FindScore();//按成绩查询
                        break;
                    case "0":
                        Console.WriteLine("欢迎再次查询");
                        break;
                }
            } while (choose != "0");//等于0则循环,不等于则结束
        } //查询界面
        //全部查询界面
        public static void FindAll()
        {
            Console.WriteLine("学号\t姓名\t班级\t性别\t年龄\t分数\t");
            for (int i = 0; i < count; i++)
            {
                Console.Write(stu[i].Xuehao + "\t");
                Console.Write(stu[i].Name + "\t");
                Console.Write(stu[i].Class + "\t");
                Console.Write(stu[i].Sex + "\t");
                Console.Write(stu[i].Age + "\t");
                Console.Write(stu[i].Score + "\t");
                Console.WriteLine("");
            }
        }//查询全部
        //按班级查询
        public static void FindClass()
        {
            string BanJi, chooes;
            do
            {
                Console.WriteLine("请输入班级:");
                BanJi = Console.ReadLine();
                Console.WriteLine("学号\t姓名\t班级\t性别\t年龄\t分数\t");
                for (int i = 0; i < count; i++)
                {
                    if (BanJi == stu[i].Class)
                    {
                        Console.Write(stu[i].Xuehao + "\t");
                        Console.Write(stu[i].Name + "\t");
                        Console.Write(stu[i].Class + "\t");
                        Console.Write(stu[i].Sex + "\t");
                        Console.Write(stu[i].Age + "\t");
                        Console.Write(stu[i].Score + "\t");
                        Console.WriteLine("");
                    }
                    else
                    {
                        continue;
                    }
                }
                Console.WriteLine("是否继续按班级查询?(y/n)");
                chooes = Console.ReadLine();
            } while (chooes == "Y" || chooes == "y");

        }//查询班级
        //按学号查询
        public static void FindXueHao()
        {
            string Xuehao, chooes;
            do
            {
                Console.WriteLine("请输入学号:");
                Xuehao = Console.ReadLine();
                Console.WriteLine("学号\t姓名\t班级\t性别\t年龄\t分数\t");
                for (int i = 0; i < count; i++)
                {
                    if (Xuehao == stu[i].Xuehao)
                    {
                        Console.Write(stu[i].Xuehao + "\t");
                        Console.Write(stu[i].Name + "\t");
                        Console.Write(stu[i].Class + "\t");
                        Console.Write(stu[i].Sex + "\t");
                        Console.Write(stu[i].Age + "\t");
                        Console.Write(stu[i].Score + "\t");
                        Console.WriteLine("");
                    }
                    else
                    {
                        continue;
                    }
                }
                Console.WriteLine("是否继续按学号查询?(y/n)");
                chooes = Console.ReadLine();
            } while (chooes == "Y" || chooes == "y");

        }//查询学号
        //按姓名查询
        public static void FindName()
        {
            string Name, chooes;
            do
            {
                Console.WriteLine("请输入姓名:");
                Name = Console.ReadLine();
                Console.WriteLine("学号\t姓名\t班级\t性别\t年龄\t分数\t");
                for (int i = 0; i < count; i++)
                {
                    if (Name == stu[i].Name)
                    {
                        Console.Write(stu[i].Xuehao + "\t");
                        Console.Write(stu[i].Name + "\t");
                        Console.Write(stu[i].Class + "\t");
                        Console.Write(stu[i].Sex + "\t");
                        Console.Write(stu[i].Age + "\t");
                        Console.Write(stu[i].Score + "\t");
                        Console.WriteLine("");
                    }
                    else
                    {
                        continue;
                    }
                }
                Console.WriteLine("是否继续按姓名查询?(y/n)");
                chooes = Console.ReadLine();
            } while (chooes == "Y" || chooes == "y");

        }//名字查询
        //按分数查询排名
        static void Bubble()//冒号排序法
        {
            Student temp = new Student();
            for (int i = count; i > 0; i--)
            {
                for (int j = 0; j < i - 1; j++)
                {
                    if (stu[j].Score < stu[j + 1].Score)
                    {
                        temp = stu[j];
                        stu[j] = stu[j + 1];
                        stu[j + 1] = temp;
                    }
                }
            }
        }
        public static void FindScore()
        {
            Bubble();
            Console.WriteLine("学号\t姓名\t班级\t性别\t年龄\t分数\t排名\t");
            for (int i = 0; i < count; i++)
            {
                Console.Write(stu[i].Xuehao + "\t");
                Console.Write(stu[i].Name + "\t");
                Console.Write(stu[i].Class + "\t");
                Console.Write(stu[i].Sex + "\t");
                Console.Write(stu[i].Age + "\t");
                Console.Write(stu[i].Score + "\t");
                Console.WriteLine("{0}\t", i + 1);
            }
        }//成绩排名查询
        
        public static void ShanChuXueHao() //输入学号删除信息
        {

            Console.WriteLine("请输入学号:");
            string stuno = Console.ReadLine();
            int index = XHo(stuno);
            if (index == -1)
            {
                Console.WriteLine("输入错误,请重新输入!");
            }
            else if (index == count - 1)
            {
                count--;
                Console.WriteLine("删除成功!");
            }
            else
            {
                for (int i = index; i < count; i++)
                {
                    stu[i] = stu[i + 1];
                }
                count--;
                Console.WriteLine("删除成功!");
            }
        }
        
        public static int XHo(string stunno)//查找的学号的下标
        {
            int index = -1;
            for (int i = 0; i < count; i++)
            {
                if (stunno == stu[i].Xuehao)
                {
                    index = i;
                    break;
                }
            }
            return index;
        }
        //要修改的学生信息
        public static void XinXi(string coun)
        {
            Console.WriteLine("要修改的学生信息:");
            for (int i = 0; i < count; i++)
            {
                if (coun == stu[i].Xuehao)
                {
                    Console.WriteLine("姓名:" + stu[i].Name);
                    Console.WriteLine("班级:" + stu[i].Class);
                    Console.WriteLine("性别:" + stu[i].Sex);
                    Console.WriteLine("年龄:" + stu[i].Age);
                    Console.WriteLine("分数:" + stu[i].Score);
                }
                else
                {
                    continue;
                }
            }
        }
        //修改学生信息
        public static void XGXX()
        {
            Console.WriteLine("请输入学号!");
            string coun = Console.ReadLine();
            XinXi(coun);
            Console.WriteLine("请选择要修改的内容:");
            Console.WriteLine("1.姓名");
            Console.WriteLine("2.班级");
            Console.WriteLine("3.性别");
            Console.WriteLine("4.年龄");
            Console.WriteLine("5.分数");
            Console.WriteLine("请选择:");
            string a = Console.ReadLine();
            for (int i = 0; i < count; i++)
            {
                if (coun == stu[i].Xuehao)
                {
                    if (a == "1")
                    {
                        Console.WriteLine("请输入新的姓名");
                        stu[i].Name = Console.ReadLine();
                    }
                    else if (a == "2")
                    {
                        Console.WriteLine("请输入新的班级");
                        stu[i].Class = Console.ReadLine();
                    }
                    else if (a == "3")
                    {
                        Console.WriteLine("请输入新的性别");
                        stu[i].Sex = Console.ReadLine();
                    }
                    else if (a == "4")
                    {
                        Console.WriteLine("请输入新的年龄");
                        stu[i].Age = int.Parse(Console.ReadLine());
                    }
                    else if (a == "5")
                    {
                        Console.WriteLine("请输入新的分数");
                        stu[i].Score = float.Parse(Console.ReadLine());
                    }
                    Console.WriteLine("修改成功");
                }
                else
                {
                    continue;
                }
            }

        }
        static void Main(string[] args)
        {
            moren();
            int chooes;
            do
            {
                Man();
                Console.WriteLine("请选择序号!");
                chooes = int.Parse(Console.ReadLine());
                switch (chooes)
                {
                    case 1:
                        FindStudent();
                        break;
                    case 2:
                        AddStudent();
                        break;
                    case 3:
                        XGXX();
                        break;
                    case 4:
                        ShanChuXueHao();
                        break;
                    case 5:
                        Console.WriteLine("已退出");
                        break;
                    default:
                        Console.WriteLine("输入错误!,请重新输入!");
                        break;

                }
            } while (chooes != 5);
        }
    }
}

 

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值