您好,登錄后才能下訂單哦!
通過兩個方法,分別得到用戶輸入的人數和所有人的姓名,作為游戲程序的一個小功能。
- using System;
- namespace Player
- {
- internal class Program
- {
- private static void Main(string[] args)
- {
- int playerNum = PlayerNum(); //調用PlayerNum()方法獲得用戶輸入的人數
- string[] name = PlayerName(playerNum); //調用PlayerName()方法得到每一個玩家的昵稱
- Console.WriteLine("參加本游戲的人數為:{0}人", playerNum);
- for (int i = 0; i < name.Length; i++)
- {
- Console.WriteLine("第{0}位玩家昵稱為 :{1}", i + 1, (name[i]));
- }
- Console.ReadKey();
- }
- /// <summary>
- /// 輸入一個人數。
- /// 最小人數為1,playerMax控制最大人數。
- /// </summary>
- /// <returns>參加的人數</returns>
- private static int PlayerNum()
- {
- int playerNumber = 0;
- int playerMax = 4; //最大參加人數
- do
- {
- Console.WriteLine("請輸入參加的人數(1—{0}人):", playerMax);
- try
- {
- //接收用戶輸入的人數
- playerNumber = Convert.ToInt32(Console.ReadLine());
- //判斷人數是否小于1或者超過最大限制的人數
- if (playerNumber <= 0 || playerNumber > playerMax)
- {
- Console.WriteLine("必須輸入一個1到{0}之間的整數!", playerMax);
- continue;
- }
- break;
- }
- catch
- {
- Console.WriteLine("請輸入一個整數!");
- }
- } while (true);
- return playerNumber; //返回用戶輸入的人數
- }
- /// <summary>
- /// 讓用戶輸入每一個玩家的姓名,并返回所有玩家的姓名。
- /// </summary>
- /// <param name="number">玩家的人數</param>
- /// <returns>所有玩家的昵稱</returns>
- private static string[] PlayerName(int number)
- {
- //定義一個數組存放玩家姓名
- string[] name = new string[number];
- for (int i = 0; i < name.Length; i++)
- {
- Console.WriteLine("請輸入第{0}位玩家的姓名:", i + 1);
- name[i] = Console.ReadLine();
- while (name[i] == "") //判斷玩家姓名是否為空,為空則重新輸入
- {
- Console.WriteLine("姓名不能為空,請重新輸入第{0}位玩家姓名:", i + 1);
- name[i] = Console.ReadLine();
- }
- if (i > 0) //判斷玩家人數,兩位以上需要核對姓名是否相同
- {
- for (int j = 0; j < i; j++) //當前輸入的玩家姓名與已經存在的所有玩家姓名進行對照,看是否相同
- {
- if (name[i] == name[j])
- {
- Console.WriteLine("該姓名與第{0}位玩家相同,請重新輸入第{1}位玩家姓名:", j + 1, i + 1);
- name[i] = Console.ReadLine();
- }
- }
- }
- }
- return (string[])name; //返回玩家姓名
- }
- }
- }
免責聲明:本站發布的內容(圖片、視頻和文字)以原創、轉載和分享為主,文章觀點不代表本網站立場,如果涉及侵權請聯系站長郵箱:is@yisu.com進行舉報,并提供相關證據,一經查實,將立刻刪除涉嫌侵權內容。