• C#练习 抓阄


    using System;
    namespace ZhuaJiuNS {
        public class ZhuaJiu {
            public static void Main() {
                string[] namelist = null;
                CreateNameList(ref namelist);
                string[] afternamelist;
                Zhua(namelist, out afternamelist);
                PrintNameList(afternamelist);
                Console.ReadKey();
            }
            public static void CreateNameList(ref string[] beforelist) {
                beforelist = new string[5];
                beforelist[0] = "张三";
                beforelist[1] = "李四";
                beforelist[2] = "王五";
                beforelist[3] = "赵六";
                beforelist[4] = "孙七";
            }
            public static void Zhua(string[] beforelist, out string[] afterlist) {
                afterlist = new string[1];
                int tmpindex = -1;
                System.Random ran = new Random();
                if (beforelist.Length > 0) {
                    Console.WriteLine("开始抓阄了:");
                    int tmplength = beforelist.Length;
                    for (int i = 0; i < tmplength; i++) {
                        Console.WriteLine("请回车进行抓阄");
                        Console.ReadLine();
                        tmpindex = ran.Next(0, beforelist.Length);
                        Console.WriteLine("本次抓到的人为" + beforelist[tmpindex]);
                        InsertAfterList(beforelist[tmpindex], ref afterlist);
                        RemoveFromBeforeList(tmpindex, ref beforelist);
                    }
                    Console.WriteLine("抓阄结束");
                }
            }
            public static void InsertAfterList(string insertname, ref string[] afterlist) {
                afterlist[afterlist.Length - 1] = insertname;
                string[] longlist = new string[(afterlist.Length + 1)];
                for (int i = 0; i < afterlist.Length; i++) {
                    longlist[i] = afterlist[i];
                }
                afterlist = longlist;
                longlist = null;
            }
            public static void RemoveFromBeforeList(int removeindex, ref string[] beforelist) {
                if (removeindex == (beforelist.Length - 1)) {
                    beforelist[removeindex] = "";
                }
                else {
                    int i = 0;
                    for (i = removeindex; i < (beforelist.Length - 1); i++) {
                        beforelist[i] = beforelist[i + 1];
                    }
                }
                if (beforelist.Length > 1) {
                    string[] shortlist = new string[(beforelist.Length - 1)];
                    for (int i = 0; i < beforelist.Length - 1; i++) {
                        shortlist[i] = beforelist[i];
                    }
                    beforelist = shortlist;
                    shortlist = null;
                }
                else {
                    beforelist = null;
                }
            }
            public static void PrintNameList(string[] list) {
                Console.WriteLine("下面输出人员列表:");
                for (int i = 0; i < list.Length; i++) {
                    Console.Write(list[i] + "	");
                }
                Console.WriteLine();
                Console.WriteLine("输出人员列表结束");
            }
        }
    }
  • 相关阅读:
    lvs+keepalive安裝部署文檔
    北邮 -3.29
    第一章
    CG-CTF 部分
    bugku部分
    1062 Talent and Virtue (25分)(水)
    1061 Dating (20分)
    1060 Are They Equal (25分)
    素数筛选
    1059 Prime Factors (25分)
  • 原文地址:https://www.cnblogs.com/i124q29/p/3847786.html
Copyright © 2020-2023  润新知