溫馨提示×

溫馨提示×

您好,登錄后才能下訂單哦!

密碼登錄×
登錄注冊×
其他方式登錄
點擊 登錄注冊 即表示同意《億速云用戶服務(wù)條款》

[C#]通過方法獲得游戲人數(shù)和玩家姓名

發(fā)布時間:2020-04-01 18:09:01 來源:網(wǎng)絡(luò) 閱讀:628 作者:五子連星 欄目:編程語言

 通過兩個方法,分別得到用戶輸入的人數(shù)和所有人的姓名,作為游戲程序的一個小功能。

  1. using System; 
  2.  
  3. namespace Player 
  4.     internal class Program 
  5.     { 
  6.         private static void Main(string[] args) 
  7.         { 
  8.             int playerNum = PlayerNum();    //調(diào)用PlayerNum()方法獲得用戶輸入的人數(shù) 
  9.  
  10.             string[] name = PlayerName(playerNum);  //調(diào)用PlayerName()方法得到每一個玩家的昵稱 
  11.  
  12.             Console.WriteLine("參加本游戲的人數(shù)為:{0}人", playerNum); 
  13.  
  14.             for (int i = 0; i < name.Length; i++) 
  15.             { 
  16.                 Console.WriteLine("第{0}位玩家昵稱為 :{1}", i + 1, (name[i])); 
  17.             } 
  18.  
  19.             Console.ReadKey(); 
  20.         } 
  21.  
  22.         /// <summary> 
  23.         /// 輸入一個人數(shù)。 
  24.         /// 最小人數(shù)為1,playerMax控制最大人數(shù)。 
  25.         /// </summary> 
  26.         /// <returns>參加的人數(shù)</returns> 
  27.         private static int PlayerNum() 
  28.         { 
  29.             int playerNumber = 0; 
  30.             int playerMax = 4;  //最大參加人數(shù) 
  31.             do 
  32.             { 
  33.                 Console.WriteLine("請輸入?yún)⒓拥娜藬?shù)(1—{0}人):", playerMax); 
  34.                 try 
  35.                 { 
  36.                     //接收用戶輸入的人數(shù) 
  37.                     playerNumber = Convert.ToInt32(Console.ReadLine()); 
  38.  
  39.                     //判斷人數(shù)是否小于1或者超過最大限制的人數(shù) 
  40.                     if (playerNumber <= 0 || playerNumber > playerMax) 
  41.                     { 
  42.                         Console.WriteLine("必須輸入一個1到{0}之間的整數(shù)!", playerMax); 
  43.                         continue
  44.                     } 
  45.                     break
  46.                 } 
  47.                 catch 
  48.                 { 
  49.                     Console.WriteLine("請輸入一個整數(shù)!"); 
  50.                 } 
  51.             } while (true); 
  52.  
  53.             return playerNumber;    //返回用戶輸入的人數(shù) 
  54.         } 
  55.  
  56.         /// <summary> 
  57.         /// 讓用戶輸入每一個玩家的姓名,并返回所有玩家的姓名。 
  58.         /// </summary> 
  59.         /// <param name="number">玩家的人數(shù)</param> 
  60.         /// <returns>所有玩家的昵稱</returns> 
  61.         private static string[] PlayerName(int number) 
  62.         { 
  63.             //定義一個數(shù)組存放玩家姓名 
  64.             string[] name = new string[number]; 
  65.  
  66.             for (int i = 0; i < name.Length; i++) 
  67.             { 
  68.                 Console.WriteLine("請輸入第{0}位玩家的姓名:", i + 1); 
  69.                 name[i] = Console.ReadLine(); 
  70.                 while (name[i] == "")   //判斷玩家姓名是否為空,為空則重新輸入 
  71.                 { 
  72.                     Console.WriteLine("姓名不能為空,請重新輸入第{0}位玩家姓名:", i + 1); 
  73.                     name[i] = Console.ReadLine(); 
  74.                 } 
  75.                 if (i > 0)  //判斷玩家人數(shù),兩位以上需要核對姓名是否相同 
  76.                 { 
  77.                     for (int j = 0; j < i; j++)     //當(dāng)前輸入的玩家姓名與已經(jīng)存在的所有玩家姓名進(jìn)行對照,看是否相同 
  78.                     { 
  79.                         if (name[i] == name[j]) 
  80.                         { 
  81.                             Console.WriteLine("該姓名與第{0}位玩家相同,請重新輸入第{1}位玩家姓名:", j + 1, i + 1); 
  82.                             name[i] = Console.ReadLine(); 
  83.                         } 
  84.                     } 
  85.                 } 
  86.             } 
  87.             return (string[])name;      //返回玩家姓名 
  88.         } 
  89.     } 

 

向AI問一下細(xì)節(jié)

免責(zé)聲明:本站發(fā)布的內(nèi)容(圖片、視頻和文字)以原創(chuàng)、轉(zhuǎn)載和分享為主,文章觀點不代表本網(wǎng)站立場,如果涉及侵權(quán)請聯(lián)系站長郵箱:is@yisu.com進(jìn)行舉報,并提供相關(guān)證據(jù),一經(jīng)查實,將立刻刪除涉嫌侵權(quán)內(nèi)容。

AI