唯一出现的是“按回车继续”。我试过切换调试设置,但没有任何工作。我的所有写字码都没有输出任何内容。语言是c#
Console.WriteLine("enter the values of sales");
int sales;
int commission = new int();
String value = Console.ReadLine();
if (int.TryParse(value, out sales))
if (sales < 100000)
commission = 5;
else if (sales >= 100000 && sales <= 250000)
commission = 6;
else if (sales >= 250000)
commission = 7;
else
{
Console.Write("sales");
Console.WriteLine(sales);
sum = sum + ((sales / 100) * (commission));
i--;
return;
}
else
{
Console.WriteLine("total of all commissions");
Console.Write(sum);
return;
}
}
答案 0 :(得分:0)
Console.WriteLine等确实是向控制台窗口输出内容的正确方法,因此它们应该在执行时产生输出。
你不应该看到的是一条消息“按Enter键继续” - 因为这根本不在你发布的代码中,也不是控制台应用程序的默认行为。
这使我得出结论,你的代码根本没有被执行。您可以通过在代码开头设置断点来轻松测试,并查看是否达到该断点(Visual Studio将停止并等待您在到达断点时单击继续)。
你确定A)你实际上在编译&amp;从visual studio启动你的应用程序(不只是从资源管理器中打开一些.exe),以及B)你的代码放在你的应用程序的主要方法中?默认情况下,这将是......
class Program
{
static void Main(string[] args)
{
// right in here!
}
}
答案 1 :(得分:0)
根据您的条件,您的代码永远不会到达Console.Write("sales")
,因为您会在sales
原因之前测试else
的所有可能值。
答案 2 :(得分:0)
它只有两个地方有任何印刷,它是在:
我们可以检查并看到#{1}}上的#1打印完全取决于else
值。
当我们检查** else 之前的条件时,我们可以看到他们正在处理整个可能的数字范围。
因此,您应该重新考虑哪些操作何时进行,以及是否需要其他操作,如果确实需要,则应该重新考虑应该适用的范围。
注意:您的处理时间是&#34; 250000&#34;第2和第3个条件,但因为第2个条件是第一个,它只适用于它,因此第3个条件是冗余sales
并且应该被删除。 (或者移动第3个条件的相等。)