谁来帮我做下这个C#题目

假如岛上有5个人,没人每轮都有一次机会输入一个数字,用if判断。如果if为true那么就说这个人死亡。下次循环的时候就不循环这个人,也就是说,条件成立了,那么就不让这个人... 假如岛上有5个人, 没人每轮都有一次机会输入一个数字,用if判断 。如果if为true 那么就说这个人死亡。 下次循环的时候就不循环这个人,也就是说,条件成立了,那么就不让这个人输入, 最后只留下一个人, 提示,这个人成功逃难

例如: for { //循环的次数,
if(true){ //如果为真,下次循环的时候就减出1次输入机会
//直至留下最后一个人, 就提示这个人就逃难的?

}
}
展开
 我来答
pppxiong
2011-09-17 · TA获得超过307个赞
知道小有建树答主
回答量:107
采纳率:100%
帮助的人:132万
展开全部
using System.Threading;
int[] peoples = new int[5] { 1, 2, 3, 4, 5 };
int count=peoples.Count();
while(count>1)
{
//int ran = new Random().Next(0, t);
//Console.WriteLine(ran);
//peoples[ran] = peoples[t - 1];
Console.WriteLine("剩余人数:" + count);
int num = 5;//正确的数字
int i=0;
for (i = 0; i < count; i++)
{
int ran = new Random().Next(0, 10);//猜数
Thread.Sleep(20);//使随机数随机一点
Console.WriteLine("人" + peoples[i] + "猜的数字:" + ran);
if (num == ran) //猜对了
{
Console.WriteLine("人" + peoples[i] + "死去");
peoples[i] = peoples[count - 1];//死去,最后一个人来填补
count--;//去掉一个人
Console.WriteLine();
break; //每次有一个人死去就重新开始
}
}
if (i==count)
{
Console.WriteLine("没人死去");
Console.WriteLine();
}
}
Console.WriteLine("剩余人数:1" );
Console.WriteLine(peoples[0]+"成功逃脱!");
wolfgangyao
2011-09-17 · 超过16用户采纳过TA的回答
知道答主
回答量:54
采纳率:0%
帮助的人:48.2万
展开全部
下面的程序假设输入4的人会死亡

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

namespace ConsoleApplication3
{
class Program
{
private static readonly int TotalCount = 5;
private static int currentCount;

static void Main(string[] args)
{
currentCount = TotalCount;
int round = 1;
while (currentCount > 1)
{
Test(round++, currentCount);
}
Console.WriteLine("你成功逃难!");
Console.ReadKey();
}

private static void Test(int round, int count)
{
int number;

Console.WriteLine("当前是第{0}轮,剩余{1}人。",round, count);
for (int i = 0; i < count; i++)
{
Console.Write("请输入一个数:");
number = int.Parse(Console.ReadLine());

if (number == 4)
{
currentCount--;
}
}
}
}
}
追问
谢的非常好, 但是我有点看不懂, 麻烦给我带上几句注释吧,嘻嘻,谢谢了
追答
using System;
using System.Collections.Generic;
using System.Linq;
using System.Text;

namespace ConsoleApplication3
{
class Program
{
// 总人数
private static readonly int TotalCount = 5;
// 当前剩余人数
private static int currentCount;

static void Main(string[] args)
{
currentCount = TotalCount;

// 当前轮数
int round = 1;

while (currentCount > 1)
{
Test(round++, currentCount);
}

Console.WriteLine("你成功逃难!");
Console.ReadKey();
}

///
/// 检查输入的数,如果为4则死亡
///
/// 轮数
/// 人数
private static void Test(int round, int count)
{
int number;

Console.WriteLine("当前是第{0}轮,剩余{2}人。",round, count);
for (int i = 0; i < count; i++)
{
Console.Write("请输入一个数:");

// 输入的数
number = int.Parse(Console.ReadLine());

if (number == 4)
{
// 输入为4时,死亡,当前剩余人数减1
currentCount--;
}
}
}
}
}
已赞过 已踩过<
你对这个回答的评价是?
评论 收起
推荐律师服务: 若未解决您的问题,请您详细描述您的问题,通过百度律临进行免费专业咨询

为你推荐:

下载百度知道APP,抢鲜体验
使用百度知道APP,立即抢鲜体验。你的手机镜头里或许有别人想知道的答案。
扫描二维码下载
×

类别

我们会通过消息、邮箱等方式尽快将举报结果通知您。

说明

0/200

提交
取消

辅 助

模 式