C#基础④——算数运算符(前加、后加、前减、后减)、关系运算符、逻辑表达式

简介: C#基础④——算数运算符(前加、后加、前减、后减)、关系运算符、逻辑表达式

一、算术运算符


运算符

描述

+

两个操作数相加

-

两个操作数相减

*

两个操作数相乘

/

相除

%

取余运算

++

自增运算,i++、++i

--

自减运算,i--、--i


一元运算符:++(前加、后加)  、  --(前减、后减)


后加:i++


 //不参与运算:自身加1
int num = 10;
int number = num++;            
Console.WriteLine(number);  
Console.WriteLine(num);
Console.ReadKey();


输出结果:10   11

20200823175044421.png

                             

  //参与运算:先赋值,自身加1
int num = 10;
int number = 10 + num++;   
Console.WriteLine(num);
Console.WriteLine(number);
Console.ReadKey();


输出结果:11  20


  20200823175058271.png                                      

前加:++i


//不参与运算:自身加1
int num = 10;
int number;
number = ++num;  
Console.WriteLine(num);
Console.WriteLine(number);
Console.ReadKey();


输出结果:11   11


20200823175114292.png                                        


//参与运算:先自身加1,再赋值
int num = 10;
int number = ++num + 10;   
Console.WriteLine(num);
Console.WriteLine(number);
Console.ReadKey();


输出结果:11   21


 2020082317512678.png                                                

顺口溜:


当不参与运算时:i++:自身加1

                            ++i:自身加1

当参与运算时:i++:先赋值,自身再加1

                        ++i:先自身加1,再赋值


二、关系运算符


运算符

描述

==

两个操作数相等,则条件为真

!=

两个操作数不相等,则条件为真

>

操作数1>操作数2,则条件为真

<

操作数1<操作数2,则条件为真

>=

操作数>=操作数2,则条件为真

<=

操作数<=操作数2,则条件为真


int number = 10;          //赋值
bool result1 = 20 == 20;  //等于,相等
bool result2 = 20 != 15;  //不等于
bool result3 = 20 >= 15;  //大于等于
bool result4 = 20 <= 15;  //小于等于
Console.WriteLine(result1);
Console.WriteLine(result2);
Console.WriteLine(result3);
Console.WriteLine(result4);
Console.ReadKey();


输出结果:True    True   True   False


三、逻辑表达式


运算符

描述

顺口溜

&&

逻辑与

一假全假

||

逻辑或

真全真,全假为假

!

逻辑非

取反,一真一假


表达式1

表达式2

表达式1 && 表达式2

true

true

true

true

false

false

false

true

false

false

false

false



                         顺口溜:一假全假


表达式1

表达2

表达式1 || 表达式2

true

true

true

true

false

true

false

true

true

false

false

false


                         顺口溜:一真全真,全假为假


表达式1

!表达式2

true

false

false

true


 顺口溜:取反,一真一假


四、实战演练


①让用户输入语文和数学成绩,输出一下判断是否正确,正确输出True,错误输出False


//1.用户的语文和数学成绩都大于90分
Console.WriteLine("请输入语文成绩:");                //提示用户输入语文成绩
int chinese = Convert.ToInt32( Console.ReadLine());  //将接收到的字符串转换为int类型
Console.WriteLine("请输入数学成绩:");                //提示用户输入数学成绩
int math = Convert.ToInt32(Console.ReadLine());      //将接收到的字符串转换为int类型
bool result1 = chinese > 90 && math > 90;            //判断:语文成绩>90与数学成绩大于>90
Console.WriteLine(result1);                          //输出结果
Console.ReadKey();
//2.语文和数学有一门是大于90分的
bool result2 = chinese > 90 || math > 90;        
Console.WriteLine(result2);
Console.ReadKey();


②判断闰年问题


年份能够被400整除;

年份能够被4整除但不能被100整除

Console.WriteLine("请输入年份");
int year = Convert.ToInt32(Console.ReadLine());
bool result = (year % 400 == 0) || (year % 4 ==0 && year % 100 != 0);
Console.WriteLine(result);
Console.ReadKey();


下一个内容继续走起,加油!!

相关文章
|
22天前
|
编译器 C#
c# - 运算符<<不能应用于long和long类型的操作数
在C#中,左移运算符的第二个操作数必须是 `int`类型,因此需要将 `long`类型的位移计数显式转换为 `int`类型。这种转换需要注意数据丢失和负值处理的问题。通过本文的详细说明和示例代码,相信可以帮助你在实际开发中正确使用左移运算符。
30 3
|
21天前
|
编译器 C#
c# - 运算符<<不能应用于long和long类型的操作数
在C#中,左移运算符的第二个操作数必须是 `int`类型,因此需要将 `long`类型的位移计数显式转换为 `int`类型。这种转换需要注意数据丢失和负值处理的问题。通过本文的详细说明和示例代码,相信可以帮助你在实际开发中正确使用左移运算符。
37 1
|
20天前
|
编译器 C#
c# - 运算符<<不能应用于long和long类型的操作数
在C#中,左移运算符的第二个操作数必须是 `int`类型,因此需要将 `long`类型的位移计数显式转换为 `int`类型。这种转换需要注意数据丢失和负值处理的问题。通过本文的详细说明和示例代码,相信可以帮助你在实际开发中正确使用左移运算符。
11 0
|
1月前
|
C# 开发者
【捞底干货】C#中equals和==运算符的区别
【捞底干货】C#中equals和==运算符的区别
28 1
|
2月前
|
开发框架 自然语言处理 .NET
C#一分钟浅谈:LINQ 查询表达式的使用技巧
【9月更文挑战第6天】LINQ(Language Integrated Query)是C#开发中的强大工具,使查询数据集合变得简单且接近自然语言。本文从基础入手,通过具体示例讲解LINQ查询表达式的使用技巧,包括过滤、排序和分组等操作。同时,文章还探讨了常见问题及解决方法,如性能优化、过早枚举和类型转换等,帮助开发者写出更高效、易维护的代码。
94 15
|
2月前
|
C#
C#一分钟浅谈:Lambda 表达式和匿名方法
本文详细介绍了C#编程中的Lambda表达式与匿名方法,两者均可用于定义无名函数,使代码更简洁易维护。文章通过基础概念讲解和示例对比,展示了各自语法特点,如Lambda表达式的`(parameters) =&gt; expression`形式及匿名方法的`delegate(parameters)`结构。并通过实例演示了两者的应用差异,强调了在使用Lambda时应注意闭包问题及其解决策略,推荐优先使用Lambda表达式以增强代码可读性。
43 8
|
4月前
|
SQL 开发框架 前端开发
在C#开发中使用第三方组件LambdaParser、DynamicExpresso、Z.Expressions,实现动态解析/求值字符串表达式
在C#开发中使用第三方组件LambdaParser、DynamicExpresso、Z.Expressions,实现动态解析/求值字符串表达式
|
5月前
|
C# 数据库
C#中的空合并运算符与空合并赋值运算符:简化空值处理
C#中的空合并运算符与空合并赋值运算符:简化空值处理
|
6月前
|
C#
C#动态查询:巧用Expression组合多条件表达式
在C#中,利用`Expression`类和`AndAlso`、`OrElse`方法,可以组合两个`Expression&lt;Func&lt;T, bool&gt;&gt;`以实现动态多条件查询。该方法通过构建表达式树,方便地构建复杂查询。示例代码展示了如何创建表达式树,分别检查年龄大于等于18和姓名为&quot;John&quot;的条件,并使用`AndAlso`组合这两个条件,最终编译为可执行的委托进行测试。
255 1
|
6月前
|
SQL 开发框架 .NET
C#linq表达式的应用
C#linq表达式的应用
39 0