< 返回教程列表
1.3 条件判断语句
知识介绍
if-else 语句:
if (条件1)
{
// 条件1成立执行
}
else if (条件2)
{
// 条件1不成立但条件2成立执行
}
else
{
// 都不成立执行
}
switch 语句:
int day = 3;
switch (day)
{
case 1:
Console.WriteLine("星期一");
break; // 必须有 break
case 2:
Console.WriteLine("星期二");
break;
default:
Console.WriteLine("其他");
break;
}
⚠️ C# 的 case 不能贯穿(除非空 case),每个分支必须有
break或return。
例题
例题1: 根据分数输出等级:≥90分A,80-89分B,70-79分C,60-69分D,<60分E。
Console.Write("请输入分数:");
int score = int.Parse(Console.ReadLine());
char level;
if (score >= 90)
level = 'A';
else if (score >= 80)
level = 'B';
else if (score >= 70)
level = 'C';
else if (score >= 60)
level = 'D';
else
level = 'E';
Console.WriteLine($"等级:{level}");
例题2: 用 switch 实现简易计算器。
Console.Write("输入第一个数:");
double x = double.Parse(Console.ReadLine());
Console.Write("输入运算符(+ - * /):");
char op = char.Parse(Console.ReadLine());
Console.Write("输入第二个数:");
double y = double.Parse(Console.ReadLine());
switch (op)
{
case '+': Console.WriteLine($"{x}+{y}={x + y}"); break;
case '-': Console.WriteLine($"{x}-{y}={x - y}"); break;
case '*': Console.WriteLine($"{x}×{y}={x * y}"); break;
case '/':
if (y == 0) Console.WriteLine("除数不能为0");
else Console.WriteLine($"{x}÷{y}={x / y}");
break;
default: Console.WriteLine("无效运算符"); break;
}
练习题
用户输入一个整数,判断是正数、负数还是零。
用户输入年份和月份(如:2024 2),输出该月有多少天(注意判断闰年的2月)。
用 switch 实现:输入一个字符,判断是大写字母、小写字母、数字还是其他字符。
输入三条边的长度,判断能否构成三角形(任意两边之和大于第三边);若能,进一步判断是等边、等腰还是普通三角形。