C#基础(三)--运算符及条件控制语句
上一章我们了解了C#的一些数据基本类型、如何定义使用变量及类型之间的相互转换。可能大家会发现程序只能按照我们的要求从上向下这样顺序一条一条的执行。
那么程序能按照我们的要求,当某个条件成立的时候才执行呢?答案是肯定的,因为程序中有这样的流程语句。
那么我们本章讲像大家讲解一下C#的运算符及条件控制语句。
本章主要针对以下几个部份来进行讲解:
1、算述运算符
2、关系运算符
3、逻辑运算符
4、条件语句
5、分支语句
一、算述运算符
程序中所运用的算术运算符跟我们平常日常生活中接触的算术也一样。主要分为:
加、减、乘、除、 模(求余数)
+、 -、 *、 /、 %
两个数的运算如下:
int a=5,b=6;
int c=a+b;
//程序首先定义两个整型变量a和b,并对它们赋初始值,a为5,b为6
//那么现在计算两个数的和,把它们的和放到另外一个变量c当中,所以c的值为11;
主要是除和模(求余数)的计算,可能很多人刚开始还不太习惯。
int a=15,b=3;
int c=a/b; //这里求15/3,所以c的值就是5
int d=a%5; //这里求15/3的余数是多少,所以d的值就是0,因为15/3商5,余0
下面来制作一个案例:交换两个数的位置,如int a=5,b=3; 现在要把它变为 a=3,b=5;
这里有几种做法:
第一种常见做法是:在内存中再申请一个变量c,把a的值赋值c,
然后再把b的值赋值给a,最后把c的值赋值给b; (图解)
代码如下:
int a=5,b=3;
int c=a;
a=b;
b=c;
|
图1 |
图2 |
|
图3 |
图4 |
|
|
第二种做法:
int a = 5, b = 3;
b = a+b-(a=b);
这种做法是在两个变量中进行的,首先要理解它的算法。
|
首先看图,这种写法可以很多人没有看到过。我们只知道=号代表赋值运算,能这样在与算术运算中,程序居然不会报错,真的是奇迹。 那么如何能这样写,程序运算的顺序又是怎么样的呢?看图,程序运算的过程为: (1)、a+b,得到的结果是8 (2)、a=b,把b的值3赋值给变量a,所以现在a=3; (3)、由图(1)-图(2)为,8-3=5,最后把5赋值给变量b 这样,就在不增加变量的情况下,交换了两个数字。 |
二、关系运算符
我们先来看一看日常生活中和C#程序中关系运算符的区别。
从上图可以看出,除了等于与不等于写法不一样外,其它的都一样。
在我们日常生活中经常会用到这些符号,现在只不过是用程序的方法把它实现。
如:2>3 , 4< 6 , 5==5 , 6!=7, "我"=="我"
在程序中,这样的判断得出的结果只有两种:一种是成立,一种为不成立。
在C#中有一种变量可以存储这样的值,它就是布尔(boolean或bool)变量。
bool类型只有两个值,true代表成立,false代表不成立
如:
bool a=3>4; 结果是:false(不成立)
bool b=(4==4); 结果是: true(成立)
三、逻辑运算符
用一句话连贯的英语单词来形容程序中的逻辑运算符,那就是not and or (如图):
用一句话连贯的中文来形容程序中的逻辑运算符,那就是与或非 (如图):
逻辑运算符是用在当要判断多个条件是否满足时的情况下使用。&&和 || 是有区别的
&& [and] :当所有的条件都满意成立的时候,才成立
|| [or] :当有一个条件成立时,就成立。
如图:
|
逻辑与 |
逻辑或 |
|
|
注意:在算术运算符、条件[比较]运算符、逻辑运算符和赋值运算符中,程序运行的先后顺序是:
! > 算术运算符 > 条件[比较]运算符 > && > || > =
由此可见:
逻辑运算符中的非 ! 运算符最高
算术运算符第二
条件[比较]运算符第三
逻辑运算符中的与 && 第四
逻辑运算符中的或者 || 第五
最后,赋值运算符(=)运算的级别最低
四、条件语句
在我们日常生活中,经常会问题这样的问题,如:
如果今天是星期天,我们就去看电影。
假如我买的彩票中了五百万,我就去渡假。
如果我有一辆车,我就开车去旅游等等。
像这样假设的条件,如果成立就做某些事情,在我们程序中有一专门的语句去实现它,那就是条件结构语句。
条件程序语句大概分为5大类,分别为:
(1) 简单if (2)if else (3)嵌套if (4)多重if (5)switch条件分支语句
| 1、 首先,我们先来看一看简单if
其语法为: |
|
| if(条件语句)
{ } |
如:如果我中了五百万,我就去渡假。 int money=5; if(money>=5) { Console.WriteLine("我中了五百万,我要去渡假。"); } |
| 2、 我们先来看一看if else结构
其语法为: |
|
| if(条件语句)
{ } else { } |
如:如果我中了五百万,我就去渡假,否则我就继续支持福彩票事业。 int money=5; if(money>=5) { Console.WriteLine("我中了五百万,我要去渡假。"); } else { Console.WriteLine("继续支持福彩事业。"); } |
| 3、 我们先来看一看嵌套if结构(也就是if里面套if)
其语法为: |
|
| if(条件语句)
{ if(条件语句) { } else { } } else { if(条件语句) { } } |
如: |
C#基础(三)--运算符及条件控制语句的更多相关文章
- JS一周游~(基础、运算符、条件语句)
一.基础篇 JavaScript 基于浏览器(客户端).基于(面向)对象{没有继承}.事件驱动(要有对象).脚本语言(灵活多变) 1.作用 表单的验证,减轻服务端的压力 添加页面动画效果 动态更改页面 ...
- 写给.NET开发者的Python教程(三):运算符、条件判断和循环语句
本节会介绍Python中运算符的用法,以及条件判断和循环语句的使用方法. 运算符 运算符包括算术运算符.赋值运算符.比较运算符.逻辑运算符等内容,大部分用法和C#基本一致,下面我们来看一下: 算数运算 ...
- JavaScript学习 - 基础(三) - 运算符
js运算符 1.算数运算符 包括 加(+) .减-() .乘(*).除(/).余数(%) 减号 还可以表示为 负号 例如: -1,-3 加号 还可以用于字符串拼接 例如: 'a' + 'b' = 'a ...
- 第二十二节:Java语言基础-详细讲解位运算符与流程控制语句
位运算符(二进制位运算) 运算符 运算 例子 << 左移 3 << 2 = 12 --> 3 * 2 * 2 =12 >> 右移 3 >> 1 = ...
- 前端笔记知识点整合之JavaScript(三)关于条件判断语句、循环语句那点事
一.条件分支语句 条件分支语句,也叫作条件判断语句,就是根据某种条件执行某些语句,不执行某些语句. JS中有三种语法是可以表示条件分支的 1.1 if……else…… 条件分支的主力语法,这个主力 ...
- 前端笔记之JavaScript(三)关于条件判断语句、循环语句那点事
一.条件分支语句 条件分支语句,也叫作条件判断语句,就是根据某种条件执行某些语句,不执行某些语句. JS中有三种语法是可以表示条件分支的 1.1 if……else…… 条件分支的主力语法,这个主力语法 ...
- java 基础one ---运算符and流程控制
首先java这个了解下java的基础 首先java文件都是以.java结尾的 然后 他所有的内容都是有一个入口的就是放在了public static void main(String [] args ...
- Java 语言基础之运算符
使用运算符之后,肯定有返回结果. 六种运算符: 算术运算符 赋值运算符 比较运算符 逻辑运算符 位运算符 三元运算符 1. 算术运算符 加(+), 减(-), 乘(*), 除(/), 取余(%), 自 ...
- Java基础语法(5)-特殊流程控制语句
title: Java基础语法(5)-特殊流程控制语句 blog: CSDN data: Java学习路线及视频 1.嵌套循环结构 将一个循环放在另一个循环体内,就形成了嵌套循环.其中,for ,wh ...
随机推荐
- x64_dbg破解64位WinSnap4.5.6图文视频教程
一.软件简单介绍: WinSnap是一个轻巧.快速.简单.友好的截图工具,提供屏幕截图和图像编辑功能.和其它截图软件相比其最大亮点在于WinSnap可以捕获或去除Win7的 Aero玻璃效果.WinS ...
- 【Java学习笔记之二十三】instanceof运算符的用法小结
instanceof运算符用法 运算符是双目运算符,左面的操作元是一个对象,右面是一个类.当左面的对象是右面的类创建的对象时,该运算符运算的结果是true,否则是false 说明: (1)一个类的实例 ...
- HDU4355-Party All the Time-三分
Party All the Time Time Limit: 6000/2000 MS (Java/Others) Memory Limit: 65536/32768 K (Java/Other ...
- hdu_1015(dfs)
题意:根据给出的计算公式,给一个n和一个字符集,问能不能在字符串集中找到不重复的五个字符,让其计算结果等于给定的n,如果有多个解输出字典序最大的一个 题解:dfs直接上代码了 code: #inclu ...
- An Easy Problem?!(细节题,要把所有情况考虑到)
http://poj.org/problem?id=2826 An Easy Problem?! Time Limit: 1000MS Memory Limit: 65536K Total Sub ...
- Java入门篇(三)——Java流程控制
前两篇已经了解了Java语言基础,本篇开始Java的流程控制.流程控制对任何一门编程语言都是至关重要的,它提供了控制程序步骤的基本手段. 一.复合语句 Java语言的复合语句是以整个块区为单位的语句, ...
- Myeclipse2014 已有项目更换JDK
原先项目使用JDK是1.7,今天项目加入了一个新包,只支持JAVA8,让我们都升级一下本地的JDK,我突然发现我还没有在myeclipse上升级过JDK呢.捣鼓了一下,也不难,记录一下. 1.下载ja ...
- 设置Sql server用户对表、视图、存储过程、架构的增删改查权限
根据数据库Schema限制用户对数据库的操作行为 授予Shema dbo下对象的定义权限给某个用户(也就是说该用户可以修改架构dbo下所有表/视图/存储过程/函数的结构) use [Your DB N ...
- 自己编写JavaScript的sort函数
在平常开发中我们经常会遇到对数组进行排序的场景,js给我们提供了sort方法可以对数组元素进行排序,默认是按ASCII字母表顺序排序,请看下面例子: var a = [1, 3, 2, 4];var ...
- timeit模块
算法是计算机处理信息的本质,因为计算机程序本质上是一个算法来告诉计算机确切的步骤来执行一个指定的任务.一般地,当算法在处理信息时,会从输入设备或数据的存储地址读取数据,把结果写入输出设备或某个存储地址 ...