怎么防止用户输入错误信息

• 让用户输入一个学生的姓名,以及三门功课的成绩,之后通过其 输入计算出该学生总成绩和平均成绩并输入。 Xxx 的总成绩为 xxx ,平均成绩为 xxx 。 • 如果用户输入有错怎么防? 只能输入数字!

using System;
using System.Collections.Generic;
using System.Linq;
using System.Text.RegularExpressions;

namespace ConsoleApplication2
{
    class Program
    {
        static void Main(string[] args)
        {
         
            Console.Write("请输入一个学生姓名:");
            string studentName = Console.ReadLine();
            Console.Write("请输入数学成绩:");
            string Sx =Console.ReadLine();
            Console.Write("请输入语文成绩:");
            string Chinese = Console.ReadLine();
            Console.Write("请输入英语成绩:");
            string English = Console.ReadLine();
            //////////////////用正则判断是否是数字,用Match判断输入的是不是数字,如果等于true则是真,否则是假
            if (Regex.Match(Sx, @"^[0-9]*$").Success == true && Regex.Match(Chinese, @"^[0-9]*$").Success == true && Regex.Match(English, @"^[0-9]*$").Success == true)
            {
                int num1=Convert.ToInt32(Chinese);
                int num2=Convert.ToInt32(Sx);
                int num3=Convert.ToInt32(English);
                int sum =  num1+ num2 + num3;
                double age = sum / 3.0;
                if ((num1 <= 100 && num2 <= 100 && num3 <= 100) && (num1 > 0 && num2 > 0 && num3 > 0))
                {
                    Console.WriteLine("{0}总成绩为{1},平均成绩为{2}", studentName, sum, age);
                }
                else {
                    Console.WriteLine("成绩只能在0-100之间,包括100!");
                }
            }
               
            else
            {
               Console.WriteLine("您输入的成绩有误,成绩只能数字!");
            }
            Console.ReadKey();        }
    }
}

posted @   奇奇博客  阅读(267)  评论(0编辑  收藏  举报
编辑推荐:
· .NET Core 中如何实现缓存的预热?
· 从 HTTP 原因短语缺失研究 HTTP/2 和 HTTP/3 的设计差异
· AI与.NET技术实操系列:向量存储与相似性搜索在 .NET 中的实现
· 基于Microsoft.Extensions.AI核心库实现RAG应用
· Linux系列:如何用heaptrack跟踪.NET程序的非托管内存泄露
阅读排行:
· TypeScript + Deepseek 打造卜卦网站:技术与玄学的结合
· 阿里巴巴 QwQ-32B真的超越了 DeepSeek R-1吗?
· 【译】Visual Studio 中新的强大生产力特性
· 10年+ .NET Coder 心语 ── 封装的思维:从隐藏、稳定开始理解其本质意义
· 【设计模式】告别冗长if-else语句:使用策略模式优化代码结构
点击右上角即可分享
微信分享提示