当前课程知识点:C语言程序设计(上) >  数据计算实现与顺序结构程序设计(二) >  2.5 几种很个别的运算 >  2.5 几个很个别的运算

返回《C语言程序设计(上)》慕课在线视频课程列表

2.5 几个很个别的运算在线视频

2.5 几个很个别的运算

下一节:讨论题

返回《C语言程序设计(上)》慕课在线视频列表

2.5 几个很个别的运算课程教案、知识点、字幕

好 继续

我们来接着讨论

很个别的运算符

这在C里边我们一开始说C有36个运算符

大家都觉得怎么会这么多运算符呢

的确是有几个

特别的服务于程序设计里边

需要的一些运算符

那我们这里边再列出来四种

也就是求负运算符

还有圆括弧 中括弧这种运算符

其实除过这几个还有

只不过我们随着各章的内容

往后的进展我们再慢慢的大家再逐步了解

这几个是因为我们时常会用到

这呢我们稍微做一个介绍

首先是逗号运算符

其实大家在前面很多地方都见过

比如说咱平常说int a逗号b逗号c

其实你就用到了逗号运算符

那么

我们平常感觉说int

a b c中间用逗号隔开的时候

并没有觉得这个逗号是个运算符

这我们为什么说它是个运算符呢

它的确是运算符

因为

它是运算符 所以它才能构成表达式

如果它不是运算符

它就不能够构成一个表达式

不能把它嵌入到另外一个表达式里边

也就是说这个逗号运算符它是做什么的呢

是连接几个表达式

比如说平常在函数里边的参数列表里

比如说我们的printf

里边你可以输出一个变量列表

这个各个变量之间是用逗号把它分开的

比如说scanf

读取 你做人机交互的时候

你也是需要跟键盘交互的时候

你也是一次可以读进好几个数据

这个数据之间用逗号把它分开

如果我们这个逗号不是一个运算符的话

那这些参数的列表就不能写在这个表达式里边

比如说

我们现在借逗号运算符

表达式1 表达式2 表达式3

表达式n

中间用逗号隔开

这个表达式完了以后也没有给谁赋值

这个东西合起来叫做一个逗号表达式

我们平常说

任何一个表达式它都是会有结果的

这样的一个逗号表达式的结果是什么呢

我们看一下

比如说

我们现在括弧里边是

括弧里边 第一个逗号 4乘以5

a乘以2 b加上6

a里边现在是什么内容呢

就是这个表达式的结果

而这个表达式的结果就是最后一个

式子的结果

逗号隔开的最后一个式子的结果

也就是b加6的结果

好了 我们这边大家可以思考一个问题

在这个表达式运算的过程中

a里边的内容变了吗

b里边的内容变了吗

我们看当在这个式子里边a乘以2的时候

a里边的内容仅仅是被使用了

里边的内容并没有变

当b加上6做这个运算的时候

b里边的内容也没有变

只是b里边的内容加上了6

好了 什么时候

a里边的内容会发生变化了呢

它被赋值了

这块它被赋值了

它赋的是谁呢

赋的是b加6的结果

所以就是说

当一个变量被使用了的时候

它并没有改变它里边的值

只有它被赋值了

新的内容把它的旧的内容改变了

它才 真正的改变

我们再看这里边的第二个运算符

这个运算符我们打从一开始讲说

我们有人机交互的时候

你从键盘上可以提供一个数据

给了scanf里边的列表里边

我们就见到了这个运算符

它是一个取地址运算符

取谁的地址呢

取你去指定的那个变量的地址

其实

我们在前边讲位运算的时候大家也看到了

这还有一个作用是什么呢

按位与

按位与 我们这一块又说它是取地址

它到底是什么呢

这就是说

它要根据到底它是按位与呢还是取地址呢

是根据程序的上下文

是系统会自动识别 它是什么作用

例如

在这个

这两句话的这个程序段里边

int a 然后scanf

取地址 取谁的地址a的地址

这一块就是说

原系统

不会把它认为说你需要做 按位与运算

它一定会理解成是

它要取a的地址

等待你从键盘上敲一个数

然后它放在这个地址号里边

因为这个地址号

被命名为a

就是我们的变量a

他才能够从你的键盘上

得到数据把它放进去

这就是取地址运算符

这个运算符在后边我们还会碰到

它的一些特殊的作用

随着课程的进展我们再讨论

第三个运算符是

取负也可以说求负

实际上我们在数学里边

比如说我们写一个负a

写一个负5

这简单的就跟它是一个常数是一样的

在计算机里不同

计算机里对一个数求负

它真的是需要做运算

比如说a本来是正的

你要把它变成负的

它是要从内存的

内存变量里把a这个数据拿出来

拿到运算器里边去做这个求负的运算

所以它跟你做了一个加法减法是一样的过程

所以求负是一种运算

只不过它是单目的运算符

所以它的结果就是说

求负的结果就是把一个正数变成一个负数

然后 它的运算级别

是比所的有双目运算符的级别是要高的

那还有最后我们要说的这两个运算符

圆括弧 中括弧

圆括弧我们

打从一开始讲scanf printf就在用

这个中括弧呢我们在讲数组的时候

也会在用

这两个我们在这简单说一下

圆括弧和中括弧

我们为什么把它说是一种运算呢

这看起来是一种形式

我们在数学里边平常写

f括弧 写那个函数的样子的时候

是说这个东西用括弧括起来

要不就是改变了它的优先级顺序

要不就是表达一种形式

没有觉得它是一个运算

那实际上在C里边

它是一种运算

它的运算表达什么意思呢

比如说

中括弧 圆括弧

都表达了

我们要从这开始

就是这个地址号

从这个位置上开始

做某一件什么事情

然后从这开始下边它的增量是多少

是个起点 是一个

比如说这个中括号是一个

求下标的一个运算

实际上是一个运算

所以这个呢是 大家不要专门为它

搞个什么例子搞个什么

实际上在你用的过程里边 就已经在用了

比如说scanf printf后边的那个括号

其实就已经是这个意思了

关于这几个运算符

大多数的大家前面已经看到了

我们把它单独拿出来讨论

大家不要认为很严重

实际上就是现在用到的这些

如果在后边要应用到

还有一些特殊的一些用法

我们会及时的再提醒大家

如果对这一块的觉得理解的还有一些

不太到位或者是不是很明白

那也不要急

我们随着课程的往后的进展

大家自然会明白一些

C语言程序设计(上)课程列表:

从问题到C语言程序设计

-1.1 计算机的问题求解方法

--1.1.1--程序设计面向的问题

--1.1.2--关于计算

--1.1.3-1关于算法-算法的特征

--1.1.3-2关于算法——算法的表示

--1.1.3-3关于算法——算法的优化

--1.1.4-1-程序设计方法

--1.1.4-2-程序设计方法

--讨论题:数学模型

-1.1 计算机的问题求解方法--作业

-1.2 C语言与C程序

--1.2.1-1-C概述

--1.2.1-2-C概述

--1.2.2-C初步

--讨论题:运算符

-1.3 C语言处理系统与程序调试运行

--1.3.1C程序如何调试运行

--1.3.2常用C语言处理系统

--1.3.3DEVC++的使用-v1

--1.3.4C语言概貌小程序

--例程

-1.4 程序中的人机交互

--1.4 printf用法

--1.4.2 scanf的用法

--例程

--作业讨论区

数据计算实现与顺序结构程序设计(一)

-2.1 算术运算的C程序实现

--2.1.1 第二章

--2.1.2 C语言算术表达式概念

--2.1.3 算术运算的实现

--2.1.4 整数相除

--2.1.5 输入格式造成的计算错误

--2.1.6 求余运算

--2.1.7 自增自减运算

--2.1.8 复合运算

--fangcheng.c

--fangcheng-1.c

--fangcheng-2.c

--fangcheng-3.c

--fangcheng-4.c

--算术混合运算.c

--讨论题:自增自减符

--讨论题:程序输出结果

--讨论题:程序运行结果

-2.1 算术运算的C程序实现--作业

-2.2 关系运算的C程序实现

--2.2.1 关系比较问题

--2.2.2 C语言关系表达式

--2.2.3关系运算优先级

--2.2.4 用关系运算做判断条件

--2.2.5 程序实例

--2.2.6 字符比较

--bukao.c

--pingshifen-1.c

--panduanzhengshu.c

--pingshifen-2.c

--字符比较.c

--讨论题:比较大小

--讨论题:程序的运行

-2.2 关系运算的C程序实现--作业

-第二周作业--作业

数据计算实现与顺序结构程序设计(二)

-2.3 逻辑运算的C程序实现

--2.3.1 逻辑运算问题~1

--2.3.2 逻辑运算表达式

--2.3.3 如何判断闰年

--2.3.4 逻辑运算优先级

--2.3.5 条件运算符

--计算结合性

--2.3.7 一个简单实例

--闰年.c

--自动购票问题.c

--讨论题:逻辑表达式

-2.3 逻辑运算的C程序实现--作业

-2.4 位运算的C程序实现

--2.4.1 什么是位运算

--2.4.2 位运算有哪些

--2.4.3 位运算怎么用

--讨论题:位运算

-2.5 几种很个别的运算

--2.5 几个很个别的运算

--讨论题

--讨论题

-2.5 几种很个别的运算--作业

-2.6 混合运算及数据类型转换

--2.6 混合运算及数据类型转换

--讨论题:数据类型

-2.7 顺序结构程序实例

--2.7.1 第一个程序:三角形

--Video

--三角形面积.c

--讨论题:工业产值

--讨论题:程序无效结果

-2.7 顺序结构程序实例--作业

选择结构的程序设计

-3.1 程序中的路径选择实现

--3.1.1_1 第三章

--3.1.1_2 神奇的if_else

--打印学生成绩.c

--一元二次方程.c

-3.1 程序中的路径选择实现--作业

-3.2 路径中的再选择——嵌套判断

--3.2.1_1 if语句的嵌套

--3.2.1_2三个数排序1029

--例程

--3.2.2 用户登录检查

--三个数排序_未优化.c

--三个数排序_优化.c

--讨论题:程序改错

-3.2 路径中的再选择——嵌套判断--作业

-3.3 复杂判断问题的C程序设计

--3.3 多级选择

--银行存款.c

--讨论题:多级选择

-3.4 多分支问题的C程序设计

--3.4.1 switch语句表达式

--3.4.2 加减乘除计算

--3.4.3 几类说明

--加减乘除运算.c

--讨论题:关于switch

-3.4 多分支问题的C程序设计--作业

-3.5 GOTO的适当使用

--3.5 GOTO的适当使用

-3.6 选择结构的程序实例

--3.6 程序展示

--计算第几天.c

--存款利息__switch实现.c

--讨论题:输出奇数

--讨论题:计算税金

-3.6 选择结构的程序实例--作业

-第四周作业--作业

循环结构的程序设计(一)

-4.1 需要重复执行的程序

--4.1.1----第四章~1

--4.1.2---while实现先判断后循环~1

--4.1.3----while循环的应用-录入速度~1

--求和.c

--打印学生成绩.c

--统计录入速度.c

--求平均数.c

-4.1 需要重复执行的程序--作业

-4.2 至少要执行一次的循环

--4.2.1至少要执行一次的循环

--4.2.2-do-while循环应用

--成绩录入_do while实现.c

--n的阶乘.c

--字符分类统计.c

--讨论题:关于while

-4.2 至少要执行一次的循环--作业

-4.3 已知循环次数用for语句

--4.3.1--用for语句控制循环次数

--4.3.2--循环的应用-求和

--求和问题.c

--斐波那契数列问题.c

--数列求和.c

--讨论题:循环语句的不同

--讨论题:循环语句

-4.3 已知循环次数用for语句--作业

-4.4 循环控制——简单循环应用

--4.4.1-循环的应用-找数-水仙花数

--4.4.2--循环的应用-求素数

--水仙花数.c

--讨论题:死循环

--讨论题:continue和break

--讨论题:猜数字

-循环结构的程序设计(一)--4.4 循环控制——简单循环应用

循环结构的程序设计(二)

-4.5 循环的嵌套

--4.5.1 循环的嵌套——九九乘法表

--4.5.2 循环的嵌套——打印三角形

--打印九九乘法表.c

--打印实心三角图案.c

--打印空心三角图案.c

--讨论题:程序运行

-4.5 循环的嵌套--作业

-4.6 break与continue

--4.6 循环中断与继续循环——break再讨论

--最大素数.c

--求正数个数及平均数.c

-4.6 break与continue--作业

-4.7 循环的综合应用

--4.7.1 数的排列组合问题

--4.7.2 循环综合应用——穷举算法

--4.7.3 循环综合应用——满足条件的数

--4.7.4 循环综合应用——求最后三位数

--4.7.5 循环综合应用——打印空心图案

--数的排列组合.c

--数的排列组合优化.c

--鸡兔同笼.c

--找满足条件的数.c

--输出14的13次方的最后三位数.c

--打印空心字符.c

--讨论题:打印图形

--讨论题:打印空心图形

--讨论题:计算闰年

-第六周作业

--虚拟实验:循环程序设计实验

-第六周作业--作业

数组(一)

-5.1 同类有序数据处理问题

--5.1.0 数组开篇

--5.1.1 同类有序数据存储问题

--讨论题:下标变量与下标

-5.2 一维数组的定义和引用

--5.2.1_1 数组的定义~1

--5.2.1_2 数组的初始化

--5.2.2 一维数组的输入输出

--5.2.3 一维数组的应用1--成绩排序(选择法)~2

--5.2.4 一维数组的应用2--Fibonacci数列

--数组定义.c

--数组初始化.c

--输出大于平均值的数.c

--反向输出.c

--选择法_成绩排序.c

--求斐波那契数列前n项.c

--讨论题:对称数

--讨论题:关于'\0'

-5.2 一维数组的定义和引用--作业

-5.3 一维字符串数组

--5.3 一维字符串数组11.24~1

--用函数测试字符串长度.c

--讨论题:编程

-5.4 字符串处理函数

--5.4 字符数组的输入与输出

--字符串反向.c

--字符串函数

--讨论题:程序如何运行

--讨论题:黑色星期五

数组(二)

-5.5 二维数组的定义与使用

--5.5 二维数组定义

--二维数组的定义与初始化.c

-5.6 二维数组的输入输出

--5.6 二维数组的输入与输出

--二位数组输出_矩阵输出.c

--讨论题:随机数据存储

-5.6 二维数组的输入输出--作业

-5.7 二维数组的应用‍

--5.7.1二维数组的应用-转置矩阵

--5.7.2 用一维数组方式引用二维数组元素

--转置矩阵.c

--找二维数组最大数.c

--讨论题:修改程序

--讨论题:关于随机数函数 rand()

-5.8 二维字符数组

--5.8 单词排序

--单词排序.c

--讨论题:回文字符串

-5.8 二维字符数组--作业

-5.9 数组综合应用

--5.9.1 应用1——学生成绩统计

--统计成绩.c

--5.9.2 应用2——删除重复字符

--删除串中的重复字符串

--5.9.3 应用3——统计字符

--5.9_4数组的应用4--矩阵相乘

--统计字符次数.c

--讨论题:洗牌

-本期课程结束语

--end

-第八周编程作业

--虚拟实验:冒泡排序算法程序设计实验

期末复习

-《C语言程序设计(上)》期末复习参考

--html

期末复习答案

-《C语言程序设计(上)》期末复习参考答案

--html

2.5 几个很个别的运算笔记与讨论

也许你还感兴趣的课程:

© 柠檬大学-慕课导航 课程版权归原始院校所有,
本网站仅通过互联网进行慕课课程索引,不提供在线课程学习和视频,请同学们点击报名到课程提供网站进行学习。