C# 在C语言中使用随机字数组#

C# 在C语言中使用随机字数组#,c#,arrays,C#,Arrays,晚上好 我正在尝试用C#创建一个刽子手游戏。当我只使用一个秘密单词(在本例中,使用了单词HASHTAG)时,它工作得很好。 但我需要让它工作,使用一个数组的话,根据这些特点在多行评论 有人能帮忙吗 我的全部代码如下 class-HangManGame { 静态void Main() { 控制台名称=(“刽子手游戏”); string secretword=“HASHTAG”; /*字符串[]secretword={ “马里奥”、“索尼克”、“莱根多夫泽尔达”、“唐奇康”、“路易吉”, “桃子”

晚上好

我正在尝试用C#创建一个刽子手游戏。当我只使用一个秘密单词(在本例中,使用了单词HASHTAG)时,它工作得很好。 但我需要让它工作,使用一个数组的话,根据这些特点在多行评论

有人能帮忙吗

我的全部代码如下


class-HangManGame
{
静态void Main()
{
控制台名称=(“刽子手游戏”);
string secretword=“HASHTAG”;
/*字符串[]secretword={
“马里奥”、“索尼克”、“莱根多夫泽尔达”、“唐奇康”、“路易吉”,
“桃子”,“林克”,“拉克洛夫特”,“波瑟”,“奎托斯”,
“PLAYSTATION”、“任天堂”、“俄罗斯方块”、“格兰德菲斯托”,
“最终的幻想”、“幻影”、“鬼魂岛”、“地平线黎明”,
“光环”、“广场”、“克拉斯班迪库特”、“魔兽世界”、“使命召唤”,
“FORTNITE”,“ANIMALCROSSING”,“DOOM”,“METALGEARSOLID”,“MINECRAFT”,
“居民村”、“吃豆人”、“太空入侵者”、“小行星”,
“街头斗士”、“致命的快打”、“超级卡丁车”、“口袋妖怪”,
“生物休克”,“汤姆布雷德”
}; */
列表字母猜测=新列表();
int-live=5;
控制台。WriteLine(“欢迎来到刽子手!”);
WriteLine(“输入一个字母来猜测一个{0}字母单词”,secretword.Length);
WriteLine(“您还有{0}条生命\n”,live);
Isletter(秘密字,字母猜测);
同时(实时>0)
{
字符串输入=Console.ReadLine();
if(字母猜测。包含(输入))
{
WriteLine(“您已经输入了字母[{0}],输入);
Console.WriteLine(“尝试另一个字母\n”);
获取字母表(输入);
继续;
}
字母猜测。添加(输入);
if(IsWord(secretword,猜字母))
{
Console.ForegroundColor=ConsoleColor.Green;
控制台写入线(secretword);
Console.WriteLine(“恭喜你!”);
打破
}
else if(secretword.Contains(输入))
{
Console.WriteLine(“良好输入\n”);
字符串字母=Isletter(secretword,猜字母);
控制台。写(信);
Console.WriteLine(“\n”);
}
其他的
{
那封信不是用我的话写的;
现场-=1;
WriteLine(“您还有{0}条生命”,live);
}
Console.WriteLine();
如果(实时==0)
{
Console.ForegroundColor=ConsoleColor.Red;
WriteLine(“游戏结束\n我的秘密单词是[{0}]”,secretword);
打破
}
}
Console.ReadKey();
}
静态bool-IsWord(字符串secretword,猜测列表字母)
{
bool-word=false;
for(int i=0;i对于(inti=1;i实现“蜜童威尔逊”评论

 Random random = new Random();
 string secretword = secretwords[random.Next(0, secretwords.Length)];

切换声明顺序并使用
Random
类从数组中拾取值

string[] secretWords = {
    "MARIO", "SONIC", "THELEGENDOFZELDA", "DONKEYKONG", "LUIGI",
    "PEACH", "LINK", "LARACROFT", "BOWSER", "KRATOS",
    "PLAYSTATION", "NINTENDO", "TETRIS", "GRANDTHEFTAUTO",
    "FINALFANTASY", "THELASTOFUS", "GHOSTOFTSUSHIMA", "HORIZONZERODAWN",
    "HALO", "FORZA", "CRASHBANDICOOT", "WORLDOFWARCRAFT", "CALLOFDUTY",
    "FORTNITE", "ANIMALCROSSING", "DOOM", "METALGEARSOLID", "MINECRAFT",
    "RESIDENTEVIL", "PACMAN", "SPACEINVADERS", "ASTEROIDS",
    "STREETFIGHTER", "MORTALKOMBAT", "SUPERMARIOKART", "POKEMON",
    "BIOSHOCK", "TOMBRAIDER"
};

Random R = new Random();
string secretword = secretWords[R.Next(secretWords.Length)];

使用Random类生成一个介于0和小于secretword数组长度的1之间的随机数。使用该数字作为索引从数组中选择一个单词。是否需要从数组中选择一个随机单词?仅供参考
string input=Console.ReadLine();
在这里可能不是正确的方法,因为用户可以输入他们想要的任何字符串。例如,他们可以输入
散列
,而不是
H
。在检查输入是否为机密时,它看起来也区分大小写。可能不太理想。感谢您发现了区分大小写的问题。正如您可能知道的那样呃,我有点喜欢用C#(更习惯于Java)编写noob…关于区分大小写的修复方法有什么建议吗?
string[] secretWords = {
    "MARIO", "SONIC", "THELEGENDOFZELDA", "DONKEYKONG", "LUIGI",
    "PEACH", "LINK", "LARACROFT", "BOWSER", "KRATOS",
    "PLAYSTATION", "NINTENDO", "TETRIS", "GRANDTHEFTAUTO",
    "FINALFANTASY", "THELASTOFUS", "GHOSTOFTSUSHIMA", "HORIZONZERODAWN",
    "HALO", "FORZA", "CRASHBANDICOOT", "WORLDOFWARCRAFT", "CALLOFDUTY",
    "FORTNITE", "ANIMALCROSSING", "DOOM", "METALGEARSOLID", "MINECRAFT",
    "RESIDENTEVIL", "PACMAN", "SPACEINVADERS", "ASTEROIDS",
    "STREETFIGHTER", "MORTALKOMBAT", "SUPERMARIOKART", "POKEMON",
    "BIOSHOCK", "TOMBRAIDER"
};

Random R = new Random();
string secretword = secretWords[R.Next(secretWords.Length)];