Test1.
/*1、编写一个程序,用户输入一个整数n,然后计算并输出从 1 到n的所有奇数的和。
如果用户输入的n小于 1,则提示用户重新输入,直到输入一个大于等于 1 的整数为止,
添加异常处理,当输入的为非整数时,能够捕获异常。*/
namespace ConsoleApp2
{
internal class Program
{
static void Main(string[] args)
{
Console.WriteLine("请输入一个整数:");
int num;
num = int.Parse(Console.ReadLine());
// 循环直到用户输入一个有效的整数(大于等于1)
while (num < 1)
{
try
{
if (num < 1)
{
Console.WriteLine("输入的数字必须大于等于1,请重新输入。");
}
}
catch (FormatException)
{
Console.WriteLine("输入的不是有效整数,请重新输入。");
}
catch (OverflowException)
{
Console.WriteLine("输入的数字超出范围,请重新输入。");
}
}
// 计算从1到n的所有奇数之和
int sum = 0;
for (int i = 1; i <= num; i += 2)
{
sum += i;
}
Console.WriteLine($"从1到{num}的所有奇数之和为:{sum}");
}
}
}
Test2.
/*
2.使用 if-else实现一元二次方程的求解ax2+bx+c=0的根,a,b,c为键盘输入的值
*/
namespace ConsoleApp3
{
internal class Program
{
static void Main(string[] args)
{
float a, b, c, x1 = 0, x2 = 0, p, q, t;
Console.WriteLine("请输入a的值:");
a = float.Parse(Console.ReadLine());
Console.WriteLine("请输入b的值:");
b = float.Parse(Console.ReadLine());
Console.WriteLine("请输入c的值:");
c = float.Parse(Console.ReadLine());
// 计算判别式
t = b * b - 4 * a * c;
if (a != 0 && t >= 0)
{
// 计算两个方程的根
p = -b / (2 * a);
q = (float)(Math.Sqrt(t) / (2 * a));
x1 = p - q;
x2 = p + q;
Console.WriteLine($"x1={x1}, x2={x2}");
}
else if (a == 0)
{
Console.WriteLine("这不是一元二次方程");
}
else
{
Console.WriteLine("方程无实数解");
}
}
}
}
Test3.
/*
3.使用Switch实现将成绩转换为等级。142-150,卓越;135-141,优秀;120-135,通过;120以下未通过。
*/
using System;
namespace ConsoleApp4
{
internal class Program
{
static void Main(string[] args)
{
int score;
Console.WriteLine("请输入学生成绩:");
score = int.Parse(Console.ReadLine());
// 添加输入验证
if (score < 0 || score > 150)
{
Console.WriteLine("成绩超出有效范围");
return;
}
switch (score / 10)
{
case 15:
if (score >= 142 && score <= 150)
Console.WriteLine("卓越");
else
Console.WriteLine("未通过");
break;
case 14:
if (score >= 142)
Console.WriteLine("卓越");
else
Console.WriteLine("优秀");
break;
case 13:
if (score >= 135)
Console.WriteLine("优秀");
else
Console.WriteLine("通过");
break;
case 12:
if (score >= 120)
Console.WriteLine("通过");
else
Console.WriteLine("未通过");
break;
default:
Console.WriteLine("未通过");
break;
}
}
}
}
431

被折叠的 条评论
为什么被折叠?



