我正在编写控制台应用程序,但我遇到了麻烦.我的所有代码都没有显示在输出窗口中

本文关键字:代码 显示 窗口 输出 我的 控制台 应用程序 遇到 麻烦 | 更新日期: 2023-09-27 18:36:29

唯一显示的是"按回车键继续"。我尝试切换调试设置,但没有任何效果。我的写行代码都没有输出任何东西。语言是 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;
            }
    }

我正在编写控制台应用程序,但我遇到了麻烦.我的所有代码都没有显示在输出窗口中

Console.WriteLine等确实是将某些内容输出到控制台窗口的正确方法,因此它们应该在执行时产生输出。

您不应该看到的是一条消息"按 Enter 继续" - 因为这根本不在您发布的代码中,也不是控制台应用程序的默认行为。

这让我得出结论,你的代码根本没有执行。您可以通过在代码开头设置断点来轻松测试这一点,并查看是否到达该断点(Visual Studio 会在到达断点时停止并等待您单击继续)。

你确定 A) 你实际上是从 Visual Studio 编译和启动你的应用程序(而不仅仅是从资源管理器中打开一些.exe),以及 B) 你的代码被放置在应用程序的主要方法中吗?默认情况下,这将是...

class Program
{
    static void Main(string[] args)
    {
       // right in here!
    }
 }

根据您的条件,您的代码将永远不会达到Console.Write("sales"),因为您在else原因之前测试了所有可能的sales值。

它唯一有两个地方可以打印,那就是:

  1. TryParse 有效:打印不起作用。
  2. TryParse不起作用:打印正常。

我们可以检查并看到 #1 打印出现在完全取决于sales值的else处。

当我们在 **else 之前检查条件时,我们可以看到它们正在处理整个可能的数字范围。

  • (销售额<100000)
  • (销售额>= 100000 &
  • & 销售额<= 250000)
  • (销售额>= 250000)
  • 否则 - 永远无法到达。

因此,您应该重新考虑哪些操作何时进行,是否需要其他操作,如果需要,则应在哪个范围内应用。

注意:您对"250000"第二和第三条件的处理是两倍,但由于第二条件是第一位的,所以它只会适用于它,因此第三条件是多余的=,应该删除。(或移动第三个条件的相等性。