哈工大课堂教学课件,觉得不错,太大,只能传上来那么多了
C 语 言 程 序 设 计
上一章我们学到了§1解决判定性问题——选择结构 §2 关系表达式>, <, >=, <=, ==,!= 取值为1(真),0(假)
第 三 章 c 语 言 程 序 设 计 基 础
§3 逻辑表达式&&, ||, ! 取值为1(真),0(假) 注意:a)短路原则;b)操作数非0为真,0为 假
哈工大课堂教学课件,觉得不错,太大,只能传上来那么多了
C 语 言 程 序 设 计
上一章我们学到了§4 按位运算与、或、异或、非、左移、右移
§5 格式化输入函数第 三 章 c 语 言 程 序 设 计 基 础
scanf(“格式控制串”,地址表) 格式控制串” 地址表) 格式控制串
§6 指针变量:存储其他变量地址的变量
哈工大课堂教学课件,觉得不错,太大,只能传上来那么多了
C 语 言 程 序 设 计
§指针与指针变量 指针与指针变量指针: 指针:一个变量的地址 指针变量: 指针变量:专门存放变量地址的变量指针 2000 …... …... 整型变量i
变量的地址 变量的地址第 三 章 c 语 言 程 序 设 计 基 础
2001 2002 2003 2004 2005
10
变量的内容 变量的内容变量i 变量i_pointer
2000
2006 指针变量 变量地址(指针) 变量地址(指针) 指向 变量 变量值 …... …...
指针变量
地址存入 指针变量
哈工大课堂教学课件,觉得不错,太大,只能传上来那么多了
C
§如何定义指针变量 如何定义指针变量 语言 程 序 设 计
指针变量与其所指向的变量之间的关系 指针变量与其所指向的变量之间的关系 与其所指向的变量i_pointer 2000 变量i 变量i 3 *i_pointer i &i i=3; *i_pointer i_pointer *i_pointer=3
指针变量的定义第 三 章 c 语 言 程 序 设 计 基 础
一般形式: 存储类型 存储类型] 指针名; 一般形式: [存储类型 数据类型 *指针名; 指针名 int *p1,*p2; p1,* 例 float 表示定义指针变量 *q ; 指针变量本身的存储类型 运算符 合法标识符 指针的目标变量的数据类型 static char ‘*’ 不是‘ 不是 *name; 注意: 注意: 1、int *p1, *p2; 与 int *p1, p2; p2; 2、指针变量名是p1,p2 ,不是*p1,*p2 指针变量名是p1,p2 ,不是 不是* 3、指针变量只能指向定义时所规定类型的变量 4、指针变量定义后,变量值不确定,应用前必须先赋值 指针变量定义后,变量值不确定,
哈工大课堂教学课件,觉得不错,太大,只能传上来那么多了
C 语 言 程 序 设 计
§选择结构1: if判断结构if (条件表达式 语句块1; 条件表达式) 语句块 ; 条件表达式
=0 1
§选择结构2: if-else判断结构if (条件表达式 语句块 ; 条件表达式) 条件表达式 语句块1; else 语句块 ; 语句块2;
第 三 章 c 语 言 程 序 设 计 基 础
§选择结构3: if-else if 判断结构if (表达式1) 语句块1; else if (表达式2) 语句块2; ······ else 语句块n+1;······
······
哈工大课堂教学课件,觉得不错,太大,只能传上来那么多了
C 语 言 程 序 设 计
§选择结构 : if语句的嵌套 选择结构4: 语句的嵌套 选择结构if (表达式) if (表达式) 语句1; else 语句2; else if (表达式) 语句3; else 语句4;
§选择结构 :switch判定性结构
选择结构5: 选择结构 判定性结构第 三 章 c 语 言 程 序 设 计 基 础
switch(表达式) { case常量表达式1: 语句块1; [break;] case常量表达式2: 语句块2; [break;] … case常量表达式n: 语句块n; [break;] [default : 语句块n+1;] }
哈工大课堂教学课件,觉得不错,太大,只能传上来那么多了
C 语 言 程 序 设 计
第三章 循环结构与应用循环结构是程序中一种很重要的结构。 循环结构是程序中一种很重要的结构。它会根据 条件反复执行某程序段,当然不能无限的执行下去, 条件反复执行某程序段,当然不能无限的执行下去,在 给定条件不成立时,循环就会停止。 给定条件不成立时,循环就会停止。给定的条件称为循 环条件,反复执行的程序段称为循环体。 环条件,反复执行的程序段称为循环体。
第 三 章 c 语 言 程 序 设 计 基 础
哈工大课堂教学课件,觉得不错,太大,只能传上来那么多了
C 语 言 程 序 设 计
§3.1 循环的概述语言提供了多种循环语句, C语言提供了多种循环语句,可以组成 各种不同形式的循环结构: 各种不同形式的循环结构: (1) for循环语句; 循环语句; 循环语句 (2) while循环语句; while循环语句 循环语句; (3) do-while循环语句; 循环语句; 循环语句
第 三 章 c 语 言 程 序 设 计 基 础
哈工大课堂教学课件,觉得不错,太大,只能传上来那么多了
C 语 言 程 序 设 计
§3.2 for循环 循环for一般形式为: 一般形式为: 一般形式为 for(设置初始值;循环条件判断;修改循环变量) 设置初始值;循环条件判断;
{第 三 章 c 语 言 程 序 设 计 基 础
语句1; 语句2;……
语句n;
}语句功能: 表达式2的值为非零时, 语句功能: 当表达式2的值为非零时,重复执行 语句序列。 语句序列。
哈工大课堂教学课件,觉得不错,太大,只能传上来那么多了
C 语 言 程 序 设 计
for(表达式1;表达式2;表达式3) 表达式1 表达式 表达式 表达式2 表达式3 { 语句序列; }表达式1 表达式1— 循环初始表达式,用于进入循环体前为循环变量赋初值 表达式,
第 三 章 c 语 言 程 序 设 计 基 础
由算术、赋值、逻辑和逗号表达式构成。 算术、赋值、逻辑和逗号表达式构成。 表达式构成
表达式2 表达式2— 循环控制表达式,用于控制循环体语句的执行次数由关 表达式,用于控制循环体语句的执行次数由关系表达式或逻辑表达式构成。 表达式或逻辑表达式构成。 逻辑表达式构成
表达式3 表达式3— 修改循环变量表达式,即每循环一次使得表达式1的值 表达式,即每循环一次使得表达式1就要变化一次。 算术、赋值、逻辑和逗号表达式构成。 就要变化一次。由算术、赋值、逻辑和逗号表达式构成。 表达式构成
哈工大课堂教学课件,觉得不错,太大,只能传上来那么多了
C 语 言 程 序 设 计
for语句的执行流程:
第 三 章 c 语 言 程 序 设 计 基 础
图3-1 for语句执行流程图
哈工大课堂教学课件,觉得不错,太大,只能传上来那么多了
C 语 言 程 序 设 计
输出1-10 输出1
第 三 章 c 语 言 程 序 设 计 基 础
main() { int n
; for(n=1; for(n=1; n<=10; n++) n++) printf(“%d,” ,n); } 1 , 2 , 3 , 4, 5 ,6 ,7, 8 , 9 , 10
哈工大课堂教学课件,觉得不错,太大,只能传上来那么多了
C 语 言 程 序 设 计
输出5个100 输出5
第 三 章 c 语 言 程 序 设 计 基 础
main() { int n, i=100; for(n=5 n>0 --) for(n=5; n>0; n--) for(n=1; n<=5; n++) printf(“%d,”, i); } 100 , 100 , 100 , 100 , 100
哈工大课堂教学课件,觉得不错,太大,只能传上来那么多了
C 语 言 程 序 设 计
例3-1 使用for循环求整数1加到100的值。
第 三 章 c 语 言 程 序 设 计 基 础
图3-3 高斯级数运算的流程图
哈工大课堂教学课件,觉得不错,太大,只能传上来那么多了
C 语 言 程 序 设 计
程序清单3-1 progression.c #include <stdio.h> void main(void) { int nSum;/* 用于保存计算和*/ int i; /* 循环控制变量,也是参与运算的操作数*/ nSum=0; for(i=1;i<101;i++) { nSum+=i; } printf("1+2+3+……+99+100=%d\n",nSum); }
第 三 章 c 语 言 程 序 设 计 基 础
哈工大课堂教学课件,觉得不错,太大,只能传上来那么多了
C 语 言 程 序 设 计
双目复合赋值运算符OP序号 1 2 3 4 5 6 7 8 9 10 复合运算符 += -= *= /= %= &= |= ^= <<= >>= 复合运算符的含义 相加并赋值 相减并赋值 相乘并赋值 相除并赋值 求模并赋值 按位AND AND并赋值 按位AND并赋值 按位OR OR并赋值 按位OR并赋值 按位XOR XOR并赋值 按位XOR并赋值 左移并赋值 右移并赋值
第 三 章 c 语 言 程 序 设 计 基 础