ARTICLE DETAIL

资讯详情

深耕郑州网站建设与运营推广的一线实战洞察。

C# 学生信息卡

C# 学生信息卡 题目描述创建一个 Student 类用于管理学生基本信息与成绩。要求所有数据变更必须经过安全验证不允许非法状态出现。必须实现的字段字段 类型 要求Name string get; set;set 时验证不能为空或空字符串否则抛出 ArgumentException。Age int get; set;set 时验证必须在 13~30 岁之间否则抛出 ArgumentOutOfRangeException。Score double get; set;set 时验证必须在 0~100 分之间。Introduce() 方法 无参、无返回值。在控制台输出大家好我是{Name}今年{Age}岁当前成绩{Score}分。UpdateScore(double delta) 方法 有参、有返回值(bool)。给成绩增加 delta可为负数。如果计算后超出 0~100 范围则不修改并返回 false成功则返回 true。IsExcellent(double threshold) 方法 有参、有返回值(bool)。判断当前 Score 是否大于等于传入的 threshold。Main 方法测试要求创建一个学生对象设置合法数据调用 Introduce()。尝试设置 Age 12捕获并打印异常信息。调用 UpdateScore(5) 增加分数并打印返回值与当前分数。调用 UpdateScore(200) 故意超出范围验证返回 false 且分数未被修改。调用 IsExcellent(90) 判断是否优秀。using System; using System.CodeDom; using System.Collections.Generic; using System.Linq; using System.Text; using System.Threading.Tasks; namespace work { internal class Student { private string _name; public string Name { get { return _name; } set { if (string.IsNullOrWhiteSpace(value)) { throw new ArgumentNullException(nameof(Name),姓名不能为空或空字符); } _namevalue; } } private int _age; public int Age { get { return _age; } set { if(value 30 || value 13){ throw new ArgumentOutOfRangeException(nameof(Age),年龄必须在 13~30 岁之间); } _agevalue; } } private double _score; public double Score { get{ return _score; } set { if (value0 ||value100) { throw new ArgumentOutOfRangeException(nameof(Score),成绩必须在0~100之间); } _scorevalue; } } //Introduce() 方法 无参、无返回值。在控制台输出大家好我是{Name}今年{Age}岁当前成绩{Score}分。 public void Introduce() { Console.WriteLine($大家好我是{Name}今年{Age}岁当前成绩{Score}分。); } //UpdateScore(double delta) 方法 有参、有返回值(bool)。给成绩增加 delta可为负数。如果计算后超出 0~100 范围则不修改并返回 false成功则返回 true。 public bool UpdateScore(double delta) { double score delta _score; if ( score 100 score 0) { _score score; return true; } else { return false; } } //IsExcellent(double threshold) 方法 有参、有返回值(bool)。判断当前 Score 是否大于等于传入的 threshold。 public bool IsExcellent(double threshold) { if (_score threshold) { return true; } else { return false; } } } }using System; using System.Collections.Generic; using System.Linq; using System.Security.Claims; using System.Text; using System.Threading.Tasks; namespace work { internal class Program { static void Main(string[] args) { /*创建一个学生对象设置合法数据调用 Introduce()。 尝试设置 Age 12捕获并打印异常信息。 调用 UpdateScore(5) 增加分数并打印返回值与当前分数。 调用 UpdateScore(200) 故意超出范围验证返回 false 且分数未被修改。 调用 IsExcellent(90) 判断是否优秀。*/ Student student new Student(); student.Name zhang; student.Age 14; student.Score 77; Console.WriteLine(尝试设置 Age 12); try { student.Age 12; } catch (ArgumentOutOfRangeException ex) { Console.WriteLine($捕获异常{ex.Message}); } Console.WriteLine(); student.Introduce(); Console.WriteLine(); Console.WriteLine(增加5分后的结果); if (student.UpdateScore(5)! false) { Console.WriteLine($增加分数成功返回值为{student.UpdateScore(5)},当前分数为{student.Score}); } Console.WriteLine(); Console.WriteLine(增加200分后的结果); if (student.UpdateScore(200) false) { Console.WriteLine($增加分数失败返回值为{student.UpdateScore(200)},当前分数为{student.Score}); } Console.WriteLine(); Console.WriteLine(判断是否优秀); if (student.IsExcellent(90) ! false) { Console.WriteLine(成绩大于90student.IsExcellent(90)成绩为 student.Score); } else { Console.WriteLine(成绩小于90student.IsExcellent(90),成绩为 student.Score); } } } }
返回列表