my_decision_tree = sklearn.tree.DecisionTreeClassifier(splitter=mySplitter)
我试图用这种方法来收集4个班级的班级和成绩字母数量。当我调用该方法时,第一部分(下面)执行正常。
static void getGrades()
{
Console.WriteLine("How many grade level classes are you taking?");
int standardNumber = int.Parse(Console.ReadLine());
Console.WriteLine();
Console.WriteLine("How many honors level classes are you taking?");
int honorsNumber = int.Parse(Console.ReadLine());
Console.WriteLine();
Console.WriteLine("How many AP level classes are you taking?");
int apNumber = int.Parse(Console.ReadLine());
Console.WriteLine();
Console.WriteLine("Enter your letter grades when prompted.");
Console.WriteLine("=======================================");
for (int a = 1; a == standardNumber; a++)
{
int num = 1;
Console.WriteLine("Enter letter grade for honors class {0}:", num);
switch (num)
{
case 1:
string class1 = Console.ReadLine();
break;
case 2:
string class2 = Console.ReadLine();
break;
case 3:
string class3 = Console.ReadLine();
break;
case 4:
string class4 = Console.ReadLine();
break;
default:
break;
}
Console.WriteLine();
}
}
但是,其余代码(如下)不会执行。
Console.WriteLine("How many grade level classes are you taking?");
int standardNumber = int.Parse(Console.ReadLine());
Console.WriteLine();
Console.WriteLine("How many honors level classes are you taking?");
int honorsNumber = int.Parse(Console.ReadLine());
Console.WriteLine();
Console.WriteLine("How many AP level classes are you taking?");
int apNumber = int.Parse(Console.ReadLine());
有谁知道为什么会发生这种情况。提前致谢
答案 0 :(得分:1)
根据您的逻辑,如果输入 >=
输入为1,则只会运行这些行,
standardNumber
顺便说一句,你不需要for循环。
修改强>
您需要将输入存储在集合中并在该
上执行循环 for (int a = 1; a == standardNumber; a++)
{
int num = 1;
}
答案 1 :(得分:0)
您的方法连续包含以下两行:
int apNumber = int.Parse(Console.ReadLine());
Console.WriteLine();
有两种方法可以执行第一行,但第二行不能执行:
Console.ReadLine()
永远不会返回,因为用户从不按“输入”。Console.ReadLine
或方法int.Parse
会引发异常。我的猜测是int.Parse
正在抛出异常。
更理论的答案:
如果我没记错的话,当我引用的代码运行时,无论如何都会发生以下之一:
如果最后一件事没有发生,其他事情必定会发生。