200 likes | 354 Views
C 语言程序设计. 第一章 数据类型 , 运算符与表达式 第二章 顺序程序设计 第三章 选择结构程序设计 第四章 循环控制 第五章 数组. § 1-1 数据类型. 整型. 基本类型. 字符型. 单精度型. 实型 ( 浮点型 ). 数据类型. 双精度型. 枚举型. 数组类型. 构造类型. 结构体类型. 共用体类型. 指针类型. 空类型. §1-2 运算符. 算术运算符 + ( 加法或正值运算符 . 如 3+5, +3) - ( 减法或负值运算符 . 如 5-2, -3)
E N D
C语言程序设计 • 第一章 数据类型, 运算符与表达式 • 第二章 顺序程序设计 • 第三章 选择结构程序设计 • 第四章 循环控制 • 第五章 数组
§ 1-1 数据类型 整型 基本类型 字符型 单精度型 实型(浮点型) 数据类型 双精度型 枚举型 数组类型 构造类型 结构体类型 共用体类型 指针类型 空类型
§1-2 运算符 • 算术运算符 • + ( 加法或正值运算符. 如3+5, +3) • - ( 减法或负值运算符. 如5-2, -3) • * ( 乘法运算符. 如3*5) • / ( 除法运算符. 如5/3) • %( 模运算符, %两侧均应为整型数据, 如7%4的值为 3) • 关系运算符 • <, > (小于, 大于) • ==, != (等于, 不等于) • >=, <= (大于等于, 小于等于) • 逻辑运算符 • !, &&, || (非, 与, 或) • 赋值运算符 • = (赋值) • 逗号运算符 • , (逗号运算符)
§1-3 表达式 • 算术表达式 • a*b/c-1.5+’a’ • 赋值表达式 • a=a+3 • a+=3 • a=(b=5) • 逗号表达式 • 3+5, 6+8, a=x*3.6
先执行A操作, 再执行B操作, 两者是顺序执行的关系. 图中(b)是N-S结构化流程图. §2-1 顺序结构 A A B B (a) (b)
printf函数 (例题) d格式符. 输出十进制整数 %d %md %ld O格式符. 以八进制输出整数 X格式符.以十六进制输出整数 U格式符. 输出unsigned数据 c格式符. 用来输出一个字符 s格式符.用来输出一个字符串 f格式符. 输出实数, 以小数形式 e格式符. 输出实数, 以指数形式 §2-2 格式输出
printf函数 (例题) d格式符. 输出十进制整数 %d %md %ld O格式符. 以八进制输出整数 X格式符.以十六进制输出整数 U格式符. 输出unsigned数据 c格式符. 用来输出一个字符 s格式符.用来输出一个字符串 f格式符. 输出实数, 以小数形式 e格式符. 输出实数, 以指数形式 例: main() {int a=5,b=7; long n=1234567; unsigned u=65535 printf(“%d%d\n”,a,b); printf(“%3d%3d\n”,a,b); printf(“%ld,%lo,%x\n”,n,n,n); printf(“%u,%o,%x,%d\n”,u,u,u,u); } 运行结果: §2-2 格式输出
printf函数 (例题) d格式符. 输出十进制整数 %d %md %ld O格式符. 以八进制输出整数 X格式符.以十六进制输出整数 U格式符. 输出unsigned数据 c格式符. 用来输出一个字符 s格式符.用来输出一个字符串 f格式符. 输出实数, 以小数形式 e格式符. 输出实数, 以指数形式 例: main() {int a=5,b=7; long n=1234567; unsigned u=65535 printf(“%d%d\n”,a,b); printf(“%3d%3d\n”,a,b); printf(“%ld,%lo,%x\n”,n,n,n); printf(“%u,%o,%x,%d\n”,u,u,u,u); } 运行结果: 57 5 7 1234567,4553207,12d687 65535,177777,ffff, 65535 §2-2 格式输出
2. scanf函数 (例题) d格式符. 输入十进制整数 %d %md O格式符. 以八进制输入整数 X格式符.以十六进制输入整数 U格式符. 输入unsigned数据 c格式符. 用来输入一个字符 s格式符.用来输入一个字符串 f格式符. 输入实数, 以小数形式 e格式符. 输入实数, 以指数形式 §2-3 格式输入
2. scanf函数 (例题) d格式符. 输入十进制整数 %d %md O格式符. 以八进制输入整数 X格式符.以十六进制输入整数 U格式符. 输入unsigned数据 c格式符. 用来输入一个字符 s格式符.用来输入一个字符串 f格式符. 输入实数, 以小数形式 e格式符. 输入实数, 以指数形式 例: 若a=10, b=20, c1=‘A’, c2=‘a’, x=1.5, y=-3.75, z=67.8, 用下面scanf函数输入数据,请问在键盘上如何输入? scanf(“%5d%5d%c%c%f%f”, &a, &b, &c1, &c2, &x, &y, &z); 答: §2-3 格式输入
2. scanf函数 (例题) d格式符. 输入十进制整数 %d %md O格式符. 以八进制输入整数 X格式符.以十六进制输入整数 U格式符. 输入unsigned数据 c格式符. 用来输入一个字符 s格式符.用来输入一个字符串 f格式符. 输入实数, 以小数形式 e格式符. 输入实数, 以指数形式 例: 若a=10, b=20, c1=‘A’, c2=‘a’, x=1.5, y=-3.75, z=67.8, 用下面scanf函数输入数据,请问在键盘上如何输入? scanf(“%5d%5d%c%c%f%f”, &a, &b, &c1, &c2, &x, &y, &z); 答: 10 20Aa1.5 –3.75 67.8 §2-3 格式输入
§3-1 选择结构-1 • If 语句的两种形式: 1. If (表达式) 语句 例如: If (x>y) printf”%d”, x); 表达式 假 真 语句
§3-1 选择结构-2 2. If (表达式) 语句1 else 语句2 例如: If (x>y) printf”%d”, x); Else printf(“%d”,y); 表达式 真 假 语句1 语句2
§3-2多分支switch 结构 表达式 二. 多分支switch 结构 switch (表达式) { case 常量表达式1:语句1 case 常量表达式2:语句2 …… case 常量表达式n:语句n default : 语句n+1 } 必须是整型,字符型或枚举型 常量表达式1 常量表达式n 其它 常量表达式2 语句1 语句2 语句n 语句n+1 …
第四章 循环控制 循环结构三种语句: • 用while语句 • 用do-while语句 • 用for语句
一般形式: While (表达式) 语句 功能: 当表达式为非0值时,执行while 语句中的内嵌语句。 特点: 先判断表达式,后执行语句。 流程图: 例题: §4-1 while语句
一般形式: While (表达式) 语句 功能: 当表达式为非0值时,执行while 语句中的内嵌语句。 特点: 先判断表达式,后执行语句。 流程图: 例题: §4-1 while语句 0 表达式 当表达式值为真 非0 循环体语句 语句 (a) (b)
while 语句的例题 求1+2+…+100=? 思路: 程序: i=1 表达式 假 i=1 真 当i<=100 sum=sum+i i=i+1 sum=sum+i i=i+1
循环体若包含一个以上语句,应用花括号括起来循环体若包含一个以上语句,应用花括号括起来 程序: main() { int i,sum=0; i=1; while(i<=100) { sum=sum+i; i++; } printf(“%d”,sum); } 循环体中应有使循环趋向于结束的语句
数组 数组是有序数据的集合。数组中的每一个元素都属于同一个数据类型。用一个统一的数组名和下标来唯一地确定数组中的元素。 • 一维数组 • 定义 int a[10]; • 引用 a[0]=0; • 初始化 int a[4]={1,2,3,4} • 二维数组 • 字符数组 • 定义 char c[3]; • 引用 c[2]=‘a’; • 初始化 char c1[]={‘H’,’e’,’l’},c2[]=“Hel”; • 字符串和字符串结束标志 H e l \0 \0 H e l