基础篇(2):c++顺序结构程序设计
一个程序最基本的结构莫过于3种:顺序,选择,循环。这篇讲讲顺序结构。
c++语言的运算符与表达式数量之多,在高级语言中是少见的,也使得它的语言功能十分完善。
c++的运算符有单目与双目之分(作用于一个或两个量),可分为以下几类:
1、算数运算符
用于各类数值运算,包括加(+)、减(-)、乘(*)、除(/)、求余(%,又称模运算)、自增(++)、自减(--)共七种。前5种为双目运算符,后2种为单目。
重点介绍:
模运算符:
求余运算符(%)是双目运算符,两个操作数只能都是整型数,其基本形式为a%b,其值为a除以b的余数,比如9%6=3。
除运算符:
如果两个操作数(a、b)均为整型数,则a/b的值为a除以b的整数部分。如:5/2=2,但5.0/2=2.5。
自增自减运算符:
它们用于对一个操作数进行加1或减1操作,其结果仍然赋予该操作数(必须为变量),常用于计数。
2、关系运算符
用于比较运算。包括大于(>)、小于(<)、等于(==)、大于等于(>=)、小于等于(<=)和不等于(!=)六种。都是双目运算符。其结果是整型,只有两种:0与1。0代表关系不成立,1代表关系成立。常用于条件判断语句。
3、逻辑运算符
用于逻辑运算。包括与(&&)、或(||)、非(!)三种,除最后一种外均为双目。逻辑运算的值也为“真”和“假”两种,用“1”和“0”分别表示。各个运算符的求值规则如下:
| 运算符 | a=1 ,b=1 | a=1,b=0 | a=0,b=1 | a=0,b=0 |
| && | 1 | 0 | 0 | 0 |
| || | 1 | 1 | 1 | 0 |
| 运算符 | a=1 | a=0 |
| ! | 0 | 1 |
4、位操作运算符
使参加运算的量按二进制位进行运算。包括位与(&)、位或(|)、位非(~)、位异或(^)、左移(<<)、右移(>>)六种。
“位与”和“位或“跟“与”和“或”是一样的,不同在于位运算是对数的二进制位进行操作。如9|5,相当于00001001|00000101,其结果为00001101,即13。
而“位异或”则是逐位比较,相同则是0,不同为1。如9^5,相当于00001001^00000101,结果为00001100,即12。
“位非”也与“非”一样,逐位取反。
“左移”与“右移”指将左侧操作数的二进制右移/左移右侧操作数位,移出的舍弃,不足的补0。比如3<<4,就是指将00000011左移4位,即00110000(48),又如15>>2,是将00001111右移2位,得00000011(3)。左移a位实质上是乘2^a次,右移a位就是除以2^a次(余数舍弃)。
5、赋值运算符
用于赋值运算,分为简单赋值(=)、复合算数赋值(+=,-=,*=,/=,%=)和复合位运算赋值(&=,|=,^=,>>=,<<=)三类共十一种。
6、条件运算符
这是一个三目运算符,用于条件取值。
7、逗号运算符
用于将若干表达式合成一个表达式。
8、指针运算符
用于取内容(*)和取地址(&)两种运算。
9、求字节数运算符
用于计算数据类型所占的字节数(sizeof)。
10、特殊运算符
有括号(),下标[],成员(—>,.)等几种。
在初学者c++编程中,前5种运算符较为常用,其他的暂不需掌握。
补充:算术运算符、关系运算符、逻辑运算符和赋值运算符的优先级如下:
赋值运算符 逻辑运算符 关系运算符 算术运算符
低————————————————————————>高
基础篇(2):c++顺序结构程序设计的更多相关文章
- Python程序设计实验报告二:顺序结构程序设计(验证性实验)
安徽工程大学 Python程序设计 实验报告 班级 物流191 姓名 崔攀 学号3190505136 成绩 日期 2020.3.22 指导老师 修宇 [实验 ...
- C++入门到理解阶段二基础篇(5)——C++流程结构
1.顺序结构 程序从上到下执行 2.选择结构(判断结构) 判断结构要求程序员指定一个或多个要评估或测试的条件,以及条件为真时要执行的语句(必需的)和条件为假时要执行的语句(可选的). C++ 编程 ...
- HTML基础篇之HTML基本结构
课堂知识总结 第一接触和学习HTML知识在学习过程中对所属的标签的自己认为的理解和解释. HTML元素:文档里面的标签和内容. 比如:<h1>大家好</h1> 左边的是开始标 ...
- C#基础篇九OOP属性结构枚举
1.设计一个Ticket类,有一个距离属性(本属性只读,在构造方法中赋值),不能为负数,有一个价格属性,价格属性只读,并且根据距离计算价格(1元/公里):-----------0-100公里 票价不打 ...
- 嵌入式Linux学习笔记之第一阶段---基础篇
嵌入式Linux学习分五个阶段 第一阶段: 01嵌入式环境搭建初期 02C语言语法概述 03C语言内存操作 04c语言函数 05linux基础 06gun基础 第二阶段: 01-linux之io系统编 ...
- C语言程序设计第二次作业--顺序结构
C语言程序设计第二次作业--顺序结构 1.输出带框文字:在屏幕上输出以下3行信息. ************* Welcome ************* 源程序 #include <stido ...
- 前端开发工程师 - 02.JavaScript程序设计 - 第1章.基础篇
第1章--基础篇 JS介绍 html 网页的内容:css 网页的样式:javascript 网页的行为 i.e. hello world <!DOCTYPE html> <html& ...
- C语言程序设计第二次作业——顺序结构
(一)改错题 1.输出带框文字:在屏幕上输出以下3行信息. 错误信息1: 错误原因:i和d位置错误 改正方法:i和d位置互换 错误信息2: 错误原因:\n后缺了一个" 改正方法:\n后加一个 ...
- C语言程序设计第二次作业—————顺序结构改
1.输出带框文字:在屏幕上输出以下3行信息. ************* Welcome ************* 源程序 #include <stido.h> int mian() { ...
随机推荐
- Collections.copy
List<String> names = Arrays.asList(new String[nameList.size()]); Collections.copy(names, nameL ...
- 20-----定位 (Position)
定位 定位有三种: 1.相对定位 2.绝对定位 3.固定定位 这三种定位,每一种都暗藏玄机,所以我们要一一单讲. 相对定位 相对定位:相对于自己原来的位置定位 现象和使用: 1.如果对当前元素仅仅设置 ...
- js——swiper.js
一款用于PC端和移动端的滑动效果插件. 中文网站:http://www.swiper.com.cn/# 点击中文教程.使用方法 1. initialSlide:初始索引值,从0开始 2.pagin ...
- Unity MonoBehaviour.Invoke 调用
使用 Invoke() 方法需要注意 3点: 1 :它应该在 脚本的生命周期里的(Start.Update.OnGUI.FixedUpdate.LateUpdate)中被调用: 2:Invoke(); ...
- ForkJoin有参无返回值、有参有返回值实例
介绍: a . Fork/Join为JKD1.7引入,适用于对大量数据进行拆分成多个小任务进行计算的框架,最后把所有小任务的结果汇总合并得到最终的结果 b . 相关类 public abstract ...
- ASP.NET 中Textbox只能输入数字,不能输入其他字符
解决办法如下: <asp:TextBox ID="txtpage" runat="server" Width="61px" ...
- java反射-使用反射获取类的所有信息
在OOP(面向对象)语言中,最重要的一个概念就是:万事万物皆对象. 在java中,类也是一个对象,是java.lang.Class的实例对象,官网称该对象为类的类类型. Class 类的实例表示正在运 ...
- 零基础逆向工程28_Win32_02_事件_消息_消息处理函数
1 第一个图形界面程序 步骤1:创建Windows应用程序 选择空项目 步骤2:在新建项窗口中选C++代码文件 创建一个新的cpp文件 步骤3:在新的cpp文件中添加:#include <Win ...
- .gitignore梳理
参考来源: https://www.cnblogs.com/kevingrace/p/5690241.html 对于经常使用Git的朋友来说,.gitignore配置一定不会陌生.废话不说多了,接下来 ...
- UGUI的事件系统分析
UGUI的源码还是非常清晰的,打开源码可以发现, 从UGUI的源码可知:在EventSystem中调用每一帧函数来实现: private void TickModules() { for (var i ...