C# 不算对吗?

C# 不算对吗?,c#,loops,for-loop,switch-statement,C#,Loops,For Loop,Switch Statement,我试图使用switch语句来计算和收集不同变量的信息,但是它最多只能计算4 我知道使用数组可以更轻松地完成此操作 代码如下: using System; using System.Collections.Generic; using System.Linq; using System.Text; using System.Threading.Tasks; class WeekThreeLab { static void Main() { String name,

我试图使用switch语句来计算和收集不同变量的信息,但是它最多只能计算4

我知道使用数组可以更轻松地完成此操作

代码如下:

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

class WeekThreeLab
{
    static void Main()
    {
        String name, city;
        Double Drating;
        Double Judge1;
        Double Judge2;
        Double Judge3;
        Double Judge4;
        Double Judge5;
        Judge1 = 0;
        Judge2 = 0;
        Judge3 = 0;
        Judge4 = 0;
        Judge5 = 0;

        System.Console.Write("What is the drivers name: ");
        name = System.Console.ReadLine();
        System.Console.Write("What is the drivers city: ");
        city = System.Console.ReadLine();
        System.Console.Write("What is the degree of difficulty: ");
        Drating = Double.Parse(System.Console.ReadLine());
        while (Drating <= 0.99 || Drating >= 1.68)
        {
            Console.Write("Invalid! Try again! Degree of difficulty: ");
            Drating = Double.Parse(System.Console.ReadLine());
        }

        for (int count = 0; count <= 4; count++)
        {
            switch (count)
            {
                case 1:
                    System.Console.Write("Judge #{0} and his score? ", count);
                    Judge1 = Double.Parse(System.Console.ReadLine());
                    while (Judge1 < 0 || Judge1 > 10)
                    {
                        System.Console.Write("Invalid range! Reenter, Judge #{0}: ", count);
                        Judge1 = Double.Parse(System.Console.ReadLine());
                    }
                    break;
                case 2:
                    System.Console.Write("Judge #{0} and his score? ", count);
                    Judge2 = Double.Parse(System.Console.ReadLine());
                    while (Judge2 < 0 || Judge2 > 10)
                    {
                        System.Console.Write("Invalid range! Reenter, Judge #{0}: ", count);
                        Judge2 = Double.Parse(System.Console.ReadLine());
                    }
                    break;
                case 3:
                    System.Console.Write("Judge #{0} and his score? ", count);
                    Judge3 = Double.Parse(System.Console.ReadLine());
                    while (Judge3 < 0 || Judge3 > 10)
                    {
                        System.Console.Write("Invalid range! Reenter, Judge #{0}: ", count);
                        Judge2 = Double.Parse(System.Console.ReadLine());
                    }
                    break;
                case 4:
                    System.Console.Write("Judge #{0} and his score? ", count);
                    Judge4 = Double.Parse(System.Console.ReadLine());
                    while (Judge4 < 0 || Judge4 > 10)
                    {
                        System.Console.Write("Invalid range! Reenter, Judge #{0}: ", count);
                        Judge4 = Double.Parse(System.Console.ReadLine());
                    }
                    break;
                case 5:
                    System.Console.Write("Judge #{0} and his score? ", count);
                    Judge1 = Double.Parse(System.Console.ReadLine());
                    while (Judge5 < 0 || Judge5 > 10)
                    {
                        System.Console.Write("Invalid range! Reenter, Judge #{0}: ", count);
                        Judge5 = Double.Parse(System.Console.ReadLine());
                    }
                    break;
            }
        }
        System.Console.WriteLine(Judge1);
        System.Console.WriteLine(Judge2);
        System.Console.WriteLine(Judge3);
        System.Console.WriteLine(Judge4);
        System.Console.WriteLine(Judge5);
        System.Console.WriteLine(" ");
        System.Console.WriteLine("Your diver: {0} ");
        System.Console.WriteLine("From the city: {0} ");
        System.Console.WriteLine("Had a final score of: {0} ");
        System.Console.ReadKey();

    }
}
使用系统;
使用System.Collections.Generic;
使用System.Linq;
使用系统文本;
使用System.Threading.Tasks;
班级周刊
{
静态void Main()
{
字符串名称,城市;
双牵引;
双重判断1;
双重判断2;
双重判断3;
双重判断4;
双重判断5;
判断1=0;
判断2=0;
判断3=0;
判断4=0;
判断5=0;
System.Console.Write(“驱动程序名是什么:”);
name=System.Console.ReadLine();
System.Console.Write(“What is the drivers city:”);
city=System.Console.ReadLine();
System.Console.Write(“难度是多少:”);
Drating=Double.Parse(System.Console.ReadLine());
同时(阻力=1.68)
{
控制台。写入(“无效!重试!难度:”);
Drating=Double.Parse(System.Console.ReadLine());
}
用于(整数计数=0;计数10)
{
写入(“无效范围!重新输入,判断#{0}:”,计数);
Judge1=Double.Parse(System.Console.ReadLine());
}
打破
案例2:
System.Console.Write(“法官{0}和他的分数?”,count);
Judge2=Double.Parse(System.Console.ReadLine());
而(判断2<0 | |判断2>10)
{
写入(“无效范围!重新输入,判断#{0}:”,计数);
Judge2=Double.Parse(System.Console.ReadLine());
}
打破
案例3:
System.Console.Write(“法官{0}和他的分数?”,count);
Judge3=Double.Parse(System.Console.ReadLine());
而(判断3<0 | |判断3>10)
{
写入(“无效范围!重新输入,判断#{0}:”,计数);
Judge2=Double.Parse(System.Console.ReadLine());
}
打破
案例4:
System.Console.Write(“法官{0}和他的分数?”,count);
Judge4=Double.Parse(System.Console.ReadLine());
而(判断4<0 | |判断4>10)
{
写入(“无效范围!重新输入,判断#{0}:”,计数);
Judge4=Double.Parse(System.Console.ReadLine());
}
打破
案例5:
System.Console.Write(“法官{0}和他的分数?”,count);
Judge1=Double.Parse(System.Console.ReadLine());
而(判断5<0 | |判断5>10)
{
写入(“无效范围!重新输入,判断#{0}:”,计数);
Judge5=Double.Parse(System.Console.ReadLine());
}
打破
}
}
系统控制台写入线(1);
系统控制台写入线(判断2);
系统控制台写入线(3);
系统控制台写入线(判断4);
系统控制台写入线(5);
System.Console.WriteLine(“”);
System.Console.WriteLine(“您的潜水员:{0}”);
System.Console.WriteLine(“来自城市:{0}”);
System.Console.WriteLine(“最终得分:{0}”);
System.Console.ReadKey();
}
}

循环计数从0到4,但开关检查值1到5。要包括所有5名评委,请将for循环更改为:

for (int count = 1; count <= 5; count++)
for(int count=1;count更改为

this => for (int count = 0; count <= 5; count++){..}
换成

Judge5 = Double.Parse(System.Console.ReadLine());

如果将代码粘贴到编辑器中,则可以使用
{}按钮/代码>将其格式化为代码。在文本区域旁边也会有一个“帮助”链接。我认为您也可以使用标签和<代码>。在< <代码> < <代码>循环>代码>计数>代码>永远不会达到5。这就是为什么<代码>案例5:< /代码>永远不会触发。您应该考虑使用<代码>双[]判断=新的双[ 5 ]。
而不是
判断1
判断5
,因为这是@ThomasSchremser的一个经典例子是的,我知道,但这就是我必须要做的。试过那个麦克,它会给我奇怪的输出(就像我给所有5个判断都加了1,2,3,4,5)当我使用0到4的时候,它会吐出5,2,3,4,0,它工作得很好,直到我达到4,然后它就消失了stops@Chrono这可能是因为你在这个案例中也使用了不一致的变量。看看案例3和5。如果我有15个声誉,我完全会投票支持你!@Chrono你仍然可以将其标记为答案,即使没有声誉。
Judge5 = Double.Parse(System.Console.ReadLine());