运算符优先级
本课属于 Coddy C# 学习旅程的“逻辑与流程”单元。第 38 课,共 66 课。
运算符优先级决定了表达式中运算符的求值顺序。理解优先级对于编写正确的逻辑表达式至关重要。
看这个例子:
int result = 5 + 3 * 2;result 的值是多少?是 11,不是 16,因为乘法的优先级高于加法。
以下是简化后的优先级顺序(从高到低):
- 括号
() - 乘法/除法
* / % - 加法/减法
+ -
- 比较运算符
< > <= >= - 相等运算符
== !=
- 逻辑与
&& - 逻辑或
|| - 赋值运算符
= += -=等
来看看这如何应用:
bool result = 5 > 3 && 10 < 20 || 7 == 8;首先,先计算比较结果:5 > 3 是 true,10 < 20 是 true,7 == 8 是 false。
然后计算逻辑与:true && true 是 true。
最后计算逻辑或:true || false 是 true。
所以结果是 true。
使用括号让你的代码更清晰:
bool result = (5 > 3 && 10 < 20) || (7 == 8);挑战
简单创建一个名为 EvaluateExpression 的方法,它接收三个整数(a、b、c)并返回一个布尔值。
你的方法应返回以下表达式的结果:a > b || a == c && b < c
然后,创建另一个名为 EvaluateWithParentheses 的方法,用于计算:(a > b || a == c) && b < c
你的程序应从控制台读取三个整数,并在不同的行上打印两种计算的结果。
亲手试试
using System;
class Program
{
public static bool EvaluateExpression(int a, int b, int c)
{
// 在这里编写你的代码
}
public static bool EvaluateWithParentheses(int a, int b, int c)
{
// 在这里编写你的代码
}
static void Main(string[] args)
{
Console.WriteLine("Enter three integers:");
int a = int.Parse(Console.ReadLine());
int b = int.Parse(Console.ReadLine());
int c = int.Parse(Console.ReadLine());
// 调用你的方法并输出结果
}
}这节课包含一个小测验。开始学习即可作答,并记录你的进度。
逻辑与流程中的所有课
自己练习: C# 在线编译器