在输入小数之后,再次输入整数依旧提示输入非整数。


namespace 判断是否为整数
{
    class Program
    {
        static void Main(string[] args)
        {
            int sum = 0;
            double p;
            Console.WriteLine("请您输入课程数:");
            int intNumber = Convert.ToInt16(Console.ReadLine ());
            for (int i = 0; i < intNumber; i++)
            {
                Console.WriteLine("请您输入第{0}门课程的成绩:", i + 1);
                string strS = Console.ReadLine();
                Number(strS);
                int b = Number(strS);
                sum = sum + b;
            }
            p = sum / intNumber;
            Console.WriteLine("这{0}门课程的总成绩为:{1},平均成绩为:{2}", intNumber, sum, p);
        }
        public static int Number(string _strS)
        {         
            while (true)
            {
                try
                {
                    int number = Convert.ToInt16(_strS);
                    return number;
                }
                catch
                {
                    Console.WriteLine("您输入的不是整数。请重新输入。");
                    _strS = Console.ReadLine();
                }
            }
        }
    }
}

在catch添加一个continue语句,就能重新进入循环,重新读取输入值。

  • 你可以看下这个问题的回答https://ask.csdn.net/questions/7551812
  • 这篇博客也不错, 你可以看下在主函数输入一个数,判断是否为素数。
  • 除此之外, 这篇博客: 什么是快速排序?中的 快速排序法示意图 部分也许能够解决你的问题, 你可以仔细阅读以下内容或跳转源博客中阅读:
  • 请添加图片描述

  • 您还可以看一下 山猫老师的第2版 软件项目管理实战课程中的 如何做好需求评审?小节, 巩固相关知识点
  • 以下回答由chatgpt基于相关博客总结生成:

    由于没有提供输入的代码,我无法得知具体问题出在什么地方。但是根据问题描述,猜测是因为输入的数据类型未正确处理而导致系统误判。可能的解决方法有以下几种,可以根据实际情况选择相应的方法:

    1.使用合适的函数转换数据类型

    在输入时,需要根据期望输入的数据类型使用相应的函数进行转换。例如,如果期望输入整数,可以使用int()函数将输入转换为整数;如果期望输入小数,则可以使用float()函数将输入转换为浮点数。

    示例代码:

    user_input = input("请输入一个整数:")
    try:
        integer_input = int(user_input)
        print("输入的整数为:", integer_input)
    except ValueError:
        print("输入的不是整数!")
    

    在上述代码中,使用了Python的异常处理机制,以避免用户输入非整数的情况。

    2.增加输入判断

    在输入时,可以增加判断语句,判断用户输入的数据类型是否符合期望。例如,可以使用Python内置的isinstance()函数进行类型判断。

    示例代码:

    user_input = input("请输一个整数:")
    if not isinstance(user_input, int):
        print("输入的不是整数!")
    else:
        print("输入的整数为:", user_input)
    

    在上述代码中,使用了isinstance()函数进行判断,如果用户输入的不是整数,则输出提示信息。

    3.增加输入限制

    在输入时,可以增加输入限制,限制用户只能输入期望的数据类型。例如,如果要求用户只能输入整数,则可以使用循环输入,直到用户输入的为整数为止。

    示例代码:

    while True:
        user_input = input("请输入一个整数:")
        try:
            integer_input = int(user_input)
            break
        except ValueError:
            print("请输入一个整数!")
    print("输入的整数为:", integer_input)
    

    在上述代码中,使用了循环输入,并使用异常处理机制判断用户输入是否为整数,直到用户输入整数为止。