版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领
文档简介
1、3.1 顺序顺序程序设计举例程序设计举例3.2 数据的表现形式及其运算数据的表现形式及其运算3.3 C语句语句3.4 数据的输入输出数据的输入输出3.5 常用库函数常用库函数3.1顺序程序设计举例顺序程序设计举例 例例3.1 有人用温度计测量出用华氏法表有人用温度计测量出用华氏法表示的温度示的温度(如如 F,今要求把它转换为以,今要求把它转换为以摄氏法表示的温度摄氏法表示的温度(如如 C) )。二者间的转换公式二者间的转换公式)32(95fcf代表华氏温度代表华氏温度,c代表摄氏温度代表摄氏温度 其中其中, , 已知已知 F F = 100= 100,求求 C C = = ?2.2.1 程序解
2、析程序解析#include int main( ) int c, f; /*定义变量定义变量*/ f = 100; /*设定变量值设定变量值*/ c = 5 * (f - 32) / 9; /计算得到变量计算得到变量c的值的值 printf(“f = %d, c = %dn”, f, c ); /输出变量的值输出变量的值程序运行结果 f =100, c = 37)32(95fc顺顺序序变量变量3.2 数据的数据的表现形式表现形式及其运算及其运算3.2.1 常量常量和和变量变量3.2.2 数据类型数据类型3.2.3 运算符和表达式运算符和表达式3.2.1 常量和变量常量和变量常量常量:在程序运行
3、过程中,其值:在程序运行过程中,其值不能被改变不能被改变 变量变量:在程序运行过程中,其值:在程序运行过程中,其值可以被改变可以被改变 #include int main( ) int c, f; /*定义变量定义变量*/ f = 100; /*设定变量值设定变量值*/ c = 5 * (f - 32) / 9; /计算得到变量计算得到变量c的值的值 printf(“f = %d, c = %dn”, f, c ); /输出变量的值输出变量的值3.2.1 常量和变量常量和变量常量常量:在程序运行过程中,其值:在程序运行过程中,其值不能被改变不能被改变 变量变量:在程序运行过程中,其值:在程序运
4、行过程中,其值可以被改变可以被改变 1.常量常量主要包括以下几类:主要包括以下几类:整型常量整型常量:如如1000,12345,0,-345实型常量实型常量:如:如0.34, -56.79 , 0.0 12.34e3 (代表代表12.34 103), 1.234E4注意:注意:e 或或E之前必须有数字,后面必须为整数之前必须有数字,后面必须为整数e3 错错,1e3对对12.34e1.5 错错3.2.1 常量和变量常量和变量常量常量:在程序运行过程中,其值:在程序运行过程中,其值不能被改变不能被改变 变量变量:在程序运行过程中,其值:在程序运行过程中,其值可以被改变可以被改变 1.常量常量主要包
5、括以下几类:主要包括以下几类:整型常量整型常量:如如1000,12345,0,-345实型常量实型常量:如:如0.34, -56.79 , 12.34e3 (代表代表12.34 103)1与与1.0的区别?的区别?1为整型常量,而为整型常量,而1.0为实型常量为实型常量怎样确定常量的类型怎样确定常量的类型-由书写决定由书写决定1/2= , 1.0/2= 0 0 .5 3.2.1 常量和变量常量和变量1.常量常量主要包括以下几类:主要包括以下几类: 整型常量整型常量:如如1000,12345,0,-345 实型常量实型常量:如:如0.34, -56.79 , 12.34e3 (代表代表12.34
6、 103) 字符常量字符常量:l 普通字符,普通字符,用用 号号限定,限定,如如 a , ?, 3 注意:注意:普通字符常量用普通字符常量用 号号限定限定,并且里面并且里面只能有一个字符只能有一个字符字符常量错误的写法:字符常量错误的写法:123注意:注意: 里面是空格,也是一个常量里面是空格,也是一个常量注意:字符常量有值,其值为对应字符在注意:字符常量有值,其值为对应字符在ASCII码中的值码中的值3.2.1 常量和变量常量和变量 美国标准信息交换码(ASCII)是由美国国家标准学会(American National Standard Institute , ANSI )制定的。 ASC
7、II 码使用指定的7 位或8 位二进制数组合来表示128 或256 种可能的字符。标准ASCII 码也叫基础ASCII码,使用7 位二进制数来表示所有的大写和小写字母,数字0 到9、标点符号, 以及在美式英语中使用的特殊控制字符。3.2.1 常量和变量常量和变量字符字符0010 0000Space的二的二进制编码进制编码3.2.1 常量和变量常量和变量1.常量常量主要包括以下几类:主要包括以下几类: 整型常量整型常量:如如1000,12345,0,-345 实型常量实型常量:如:如0.34, -56.79 , 12.34e3 (代表代表12.34 103) 字符常量字符常量:l 普通字符,普通
8、字符,用用 号号限定,限定,如如 a , ?, 3 1与与 1 等价?等价?3.2.1 常量和变量常量和变量00110001字符字符1的二的二进制编码进制编码3.2.1 常量和变量常量和变量1.常量常量主要包括以下几类:主要包括以下几类: 整型常量整型常量:如如1000,12345,0,-345 实型常量实型常量:如:如0.34, -56.79 , 12.34e3 (代表代表12.34 103) 字符常量字符常量:l 普通字符,普通字符,用用 号号限定,限定,如如 a , ?, 3 1与与 1 等价?等价?1为整型常量:为整型常量:0000 00011为字符常量:为字符常量:001100013
9、.2.1 常量和变量常量和变量差值为差值为323.2.1 常量和变量常量和变量1.常量常量主要包括以下几类:主要包括以下几类:整型常量整型常量:如如1000,12345,0,-345实型常量实型常量:如:如0.34, -56.79 , 12.34e3 (代表代表12.34 103)字符常量字符常量:l 普通字符,用普通字符,用 号限定号限定l 转义字符,以字符转义字符,以字符开头的字符序列开头的字符序列printf (Lets go!);printf (Lets go!n);printf (Lets go!012);3.2.1 常量和变量常量和变量1.常量常量主要包括以下几类:主要包括以下几类
10、:整型常量整型常量:如如1000,12345,0,-345实型常量实型常量:如:如0.34, -56.79 , 12.34e3 (代表代表12.34 103)字符常量字符常量:l 普通字符,用普通字符,用 号限定号限定l 转义字符,以字符转义字符,以字符开头的字符序列开头的字符序列注意区分:注意区分:,斜杠:,斜杠:/ 与与 反斜杠:反斜杠: ,此处不此处不可互换可互换3.2.1 常量和变量常量和变量1.常量常量主要包括以下几类:主要包括以下几类: 整型常量整型常量:如如1000,12345,0,-345 实型常量实型常量:如:如0.34, -56.79 , 12.34e3 (代表代表12.3
11、4 103) 字符常量字符常量:如:如 a , ?, 3 字符串常量:如字符串常量:如 “boy” , “ 123 ”,“ a ” 注意:注意:字符串常量用字符串常量用 “”“”号号限定,里面可以限定,里面可以有多个字符有多个字符 字符串常量错误的写法:字符串常量错误的写法:1233.2.1 常量和变量常量和变量1.常量常量主要包括以下几类:主要包括以下几类: 整型常量整型常量:如如1000,12345,0,-345 实型常量实型常量:如:如0.34, -56.79 , 12.34e3 (代表代表12.34 103) 字符常量字符常量:如:如 a , ?, 3 字符串常量:如字符串常量:如 “
12、boy” , “ 123 ”,“ a ” 符号常量:符号常量:用用# define指令用一个符号名称代表一个常量指令用一个符号名称代表一个常量#define PI 3.1416 /注意没有分号注意没有分号s=PI*r*r;/圆面积圆面积3.2.1 常量和变量常量和变量2. 变量变量变量必须变量必须先定义先定义,后使用后使用定义定义变量变量时指定该变量的时指定该变量的名字名字和和类型类型变量定义的一般形式:变量定义的一般形式:类型名类型名 变量名变量名1 1,变量名变量名2 2,;如:如:intint c c, , f f; ; / /定义整型变量定义整型变量 floatfloat x; / x
13、; / 定义单精度浮点型变量定义单精度浮点型变量int , float 为类型名为类型名 由由C语言系统规定语言系统规定c,f,x 为变量名为变量名 可以自己取可以自己取3.2.1 常量和变量常量和变量2. 变量变量变量必须变量必须先定义先定义,后使用后使用定义定义变量变量时指定该变量的时指定该变量的名字名字和和类型类型变量取名:按变量取名:按标识符规则,标识符规则,只能由字母、数字和下只能由字母、数字和下划线划线3种字符组成,且第种字符组成,且第1个字符必须为字母或下个字符必须为字母或下划线。划线。例:例:sum,_total, month, Student_name, lotus_1_2_
14、,BASIC, li_ling ¥123,3D64,ab 3.2.1 常量和变量常量和变量2. 变量变量变量必须变量必须先定义先定义,后使用后使用定义定义变量变量时指定该变量的时指定该变量的名字名字和和类型类型变量取名:按变量取名:按标识符规则,标识符规则,只能由字母、数字和下只能由字母、数字和下划线划线3种字符组成,且第种字符组成,且第1个字符必须为字母或下个字符必须为字母或下划线。划线。变量取名建议:小写字母;见名知义变量取名建议:小写字母;见名知义注意:变量名区分大小写,避开关键字与函数名等注意:变量名区分大小写,避开关键字与函数名等3.2.1 常量和变量常量和变量2. 变量变量变量变量
15、的存储的存储 存储单元存储单元 1字节字节 0201maxa=3;注意:程序中变量的地址是动态分配的,注意:程序中变量的地址是动态分配的,也是就是说变量的地址是变的也是就是说变量的地址是变的存储地址存储地址3通过变量名a3.2.1 常量和变量常量和变量2. 变量变量变量变量的存储的存储 存储单元存储单元 1字节字节0201maxa=3;&a,取变量a的地址存储地址存储地址3printf(“%d n”, &a );输出结果输出结果: 201通过变量名aprintf(“%d n”, a );输出结果输出结果: 33.2.1 常量和变量常量和变量2. 变量变量变量变量的类型不同占用的
16、存储单元不同的类型不同占用的存储单元不同int a;double a;3.2.2 数据类型数据类型所谓所谓类型类型,就是对数据分配存储单元的安,就是对数据分配存储单元的安排,排,不同的类型不同的类型分配分配不同的长度不同的长度和和存储形存储形式式。3.2.2 数据类型数据类型C语言语言常用常用的数据类型的数据类型整型类型整型类型(用来表示整数)(用来表示整数)l基本整型基本整型(int) int a; int a=5;int a;整数在内存中以补码补码形式存放正整数:二进制负整数:绝对值的二进制,按位取反再加13.2.2 数据类型数据类型C语言语言常用常用的数据类型的数据类型整型类型整型类型(
17、用来表示整数)(用来表示整数)l基本整型基本整型(int) int a; int a=5;int a;5的二进制:1015的补码:的补码:3.2.2 数据类型数据类型C语言语言常用常用的数据类型的数据类型整型类型整型类型(用来表示整数)(用来表示整数)l基本整型基本整型(int) int a; int a=-5;int a;绝对值的二进制绝对值的二进制按位取反:按位取反:1变变0,0变变1加加13.2.2 数据类型数据类型C语言语言常用常用的数据类型的数据类型整型类型整型类型(用来表示整数)(用来表示整数)l基本整型基本整型(int) int a;l短整型短整型(short int)short
18、 int b; short c;l长整型长整型(long int) long int c; long d;区别区别:变量变量的类的类型不同占型不同占用的存储用的存储单元不同单元不同3.2.2 数据类型数据类型C语言语言常用常用的数据类型的数据类型整型类型整型类型(用来表示整数)(用来表示整数)l基本整型基本整型(int) int a;l短整型短整型(short int)short int b;l长整型长整型(long int) long int c;VC+6.0中占中占4字节字节 占占2个字节个字节 占占4个字节个字节int a;short int b;变量类型不同关系着变量的取值范围变量类型
19、不同关系着变量的取值范围3.2.2 数据类型数据类型int a;short int b;32位位-231231-1(-21474836482147483647)16位位-215215-1(-3276832767)0为正为正1为负为负0为正为正1为负为负基本整型基本整型(int)短整型短整型(short int)长整型长整型(long int) 无符号无符号基本整型基本整型(unsigned int)无符号无符号短整型短整型( unsigned short int)无符号无符号长整型长整型( unsigned long int) -231231-10232-1正整数的取值正整数的取值范围大范围大
20、2倍倍unsigned int a=-1; 结果错结果错3.2.2 数据类型数据类型C语言语言常用常用的数据类型的数据类型整型类型整型类型(用来表示整数)(用来表示整数)浮点类型浮点类型(用来表示小数)(用来表示小数)l单精度浮点型单精度浮点型(float)占占4个字节个字节 6位有效数字位有效数字float a; l双精度浮点型双精度浮点型(double)占占8个字节个字节, 15位有效数字位有效数字double b; l长长双精度型双精度型(long double)占占8个字节个字节, 15位有效数字位有效数字long double c; 3.2.2 数据类型数据类型C语言语言常用常用的数
21、据类型的数据类型 整型类型整型类型(用来表示整数)(用来表示整数)l基本整型基本整型(int)l短整型短整型(short int)l长整型长整型(long int) 浮点类型浮点类型(用来表示小数)(用来表示小数)l单精度浮点型单精度浮点型(float)l双精度浮点型双精度浮点型(double)l长长双精度型双精度型(long double) 字符型字符型(char)占)占1个字节个字节 char a; a=1; printf(“%d n”, a); 1 对应的对应的ASCII码的值码的值 3.2.1 常量和变量常量和变量00110001字符字符1的二的二进制编码进制编码1 字符0011000
22、11 整数0000000000000000 000000000000000113.2.2 数据类型数据类型C语言语言常用常用的数据类型的数据类型 整型类型整型类型(用来表示整数)(用来表示整数)l基本整型基本整型(int)l短整型短整型(short int)l长整型长整型(long int) 浮点类型浮点类型(用来表示小数)(用来表示小数)l单精度浮点型单精度浮点型(float)l双精度浮点型双精度浮点型(double)l长长双精度型双精度型(long double) 字符型字符型(char)占)占1个字节个字节 char a; a=1; printf(“%d n”, a); printf(“
23、%c n”, a); 3.2.1 常量和变量常量和变量%c%d注意注意: : 一个字符数一个字符数据既可以据既可以以字符形以字符形式式%c%c输出输出,也可以,也可以以整数形以整数形式式%d%d输出输出。00110001字符字符1的二的二进制编码进制编码3.2.3 运算符和表达式运算符和表达式#include int main( ) int c, f; /*定义变量定义变量*/ f = 100; /*设定变量值设定变量值*/ c = 5 * (f - 32) / 9; /计算得到变量计算得到变量c的值的值 printf(“f = %d, c = %dn”, f, c ); /输出变量的值输出变
24、量的值3.2.3 运算符和表达式运算符和表达式运算符运算符(1) 算术运算符算术运算符 (+ - * / % + -)(2) 关系运算符关系运算符 ( !)!)(3) 逻辑运算符逻辑运算符 (!(! |)(4) 位运算符位运算符 ( | )(5) 赋值运算符赋值运算符 (及其扩展赋值运算符)(及其扩展赋值运算符)(6) 条件运算符条件运算符 (?:)(?:)(7) 逗号运算符逗号运算符 (,),)(8) 指针运算符指针运算符 (*和)和)(9) 求字节数运算符求字节数运算符 (sizeof)(10) 强制类型转换运算符强制类型转换运算符 ( (类型类型) )(11) 成员运算符成员运算符 (.
25、-)(12) 下标运算符下标运算符 ( )(13) 其他其他 (如函数调用运算符()(如函数调用运算符()详见附录详见附录D3.2.3 运算符和表达式运算符和表达式1. 算术运算符算术运算符(1)基本的算术运算符基本的算术运算符+ :正号运算符正号运算符(单目运算符单目运算符) - :负号运算符负号运算符(单目运算符单目运算符)* :乘法运算符乘法运算符(双双目运算符目运算符)/ :除法运算符除法运算符(双双目运算符目运算符)% :求余运算符求余运算符(双双目运算符目运算符)+ :加法运算符加法运算符(双双目运算符目运算符) - :减法运算符减法运算符(双双目运算符目运算符) !注意事项!注意
26、事项 / / 整数除整数,得整数整数除整数,得整数如:如:1/2 1/2 0 0, 9/4 9/4 2 2,但,但 1.0/2 1.0/2 0.5 0.55 5 * * (f - 32) / 9 (f - 32) / 9 和和 5 5 / 9/ 9 * * ( (f - 32) f - 32) 等价吗?等价吗?不等价不等价5 5 * * (f - 32) / 9 (f - 32) / 9 结果为结果为3737;5 / 95 / 9 * * ( (f - 32)f - 32)结果为结果为0 05 .0/ 95 .0/ 9 * * ( (f - 32)f - 32)结果为结果为37.7777783
27、7.777778 % 只针对整型数据只针对整型数据如如: 565,941,100403.2.3 运算符和表达式运算符和表达式1. 算术运算符算术运算符(1)基本的算术运算符基本的算术运算符(2)自增、自减运算符)自增、自减运算符 + ,-+i,-i(在使用(在使用i之之前前,先使,先使i的值加(减)的值加(减)1)i+,i-(在使用(在使用i之之后后,使,使i的值加(减)的值加(减)1)3.2.3运算符和表达式运算符和表达式(2) 自增、自减运算符自增、自减运算符(单目单目运算符)运算符)int i,j;i=3;j=i+;printf(“j=%d,i=%d”,j,i)int i,j;i=3;j
28、=+i;printf(“j=%d,i=%d”,j,i)j=3,i=4j=4,i=43.2.3 运算符和表达式运算符和表达式运算符运算符(1) 算术运算符算术运算符 (+ - * / % + -)(2) 关系运算符关系运算符 ( !)!)(3) 逻辑运算符逻辑运算符 (!(! |)(4) 位运算符位运算符 ( | )(5) 赋值运算符赋值运算符 (及其扩展赋值运算符)(及其扩展赋值运算符)(6) 条件运算符条件运算符 (?:)(?:)(7) 逗号运算符逗号运算符 (,),)(8) 指针运算符指针运算符 (*和)和)(9) 求字节数运算符求字节数运算符 (sizeof)(10) 强制类型转换运算符
29、强制类型转换运算符 ( (类型类型) )(11) 成员运算符成员运算符 (.-)(12) 下标运算符下标运算符 ( )(13) 其他其他 (如函数调用运算符()(如函数调用运算符()详见附录详见附录D3.2.3运算符和表达式运算符和表达式2.条件运算符条件运算符 大于大于 小于小于 大于等于大于等于= 小于等于小于等于= !=等于等于 = 数学式数学式 x10 x10 x10 x = 10C关系表达式关系表达式x = 10 x != 10 x = 10上机实验上机实验时间:时间:6-14周,每个星期五下五周,每个星期五下五网络:网络:6,7节节通信:通信:8,9节节有体育课的可自由选择一个时间
30、有体育课的可自由选择一个时间地点:地点:20-102实验内容:请到邮箱中下载实验内容:请到邮箱中下载密码:密码:123qwe实验上交邮箱:实验上交邮箱: 上交实验上交实验5次次 上节内容回顾上节内容回顾1.常量常量主要包括以下几类:主要包括以下几类: 整型常量整型常量:如如1000,12345,0,-345 实型常量实型常量:如:如0.34, -56.79 , 12.34e3 (代表代表12.34 103) 字符常量字符常量:如:如 a , ?, 3 字符串常量:如字符串常量:如 “boy” , “ 123 ”,“ a ” 符号常量:符号常量:用用# define指令用一个符号名称代表一个常量
31、指令用一个符号名称代表一个常量#define PI 3.1416 /注意没有分号注意没有分号 1与与 1 等价?等价?1为整型常量:为整型常量:0000 00011为字符常量:为字符常量:00110001上节内容回顾上节内容回顾2. 变量变量变量必须变量必须先定义先定义,后使用后使用定义定义变量变量时指定该变量的时指定该变量的名字名字和和类型类型变量定义的一般形式:变量定义的一般形式:类型名类型名 变量名变量名1 1,变量名变量名2 2,;如:如:intint c c, , f f; ; / /定义整型变量定义整型变量 floatfloat x; / x; / 定义单精度浮点型变量定义单精度浮
32、点型变量int , float 为类型名为类型名 由由C语言系统规定语言系统规定c,f,x 为变量名为变量名 可以自己取可以自己取上节内容回顾上节内容回顾C语言语言常用常用的数据类型的数据类型整型类型整型类型(用来表示整数)(用来表示整数)l基本整型基本整型(int) 占占4个字节个字节l短整型短整型(short int)占)占2个字节个字节l长整型长整型(long int)占)占4个字节个字节浮点类型浮点类型(用来表示小数)(用来表示小数)l单精度浮点型单精度浮点型(float)占占4个字节个字节l双精度浮点型双精度浮点型(double)占占8个字节个字节l长长双精度型双精度型(long d
33、ouble)占)占8个字节个字节字符型字符型(char)占)占1个字节个字节 3.2.3 运算符和表达式运算符和表达式运算符运算符(1) 算术运算符算术运算符 (+ - * / % + -)(2) 关系运算符关系运算符 ( !)!)(3) 逻辑运算符逻辑运算符 (!(! |)(4) 位运算符位运算符 ( | )(5) 赋值运算符赋值运算符 (及其扩展赋值运算符)(及其扩展赋值运算符)(6) 条件运算符条件运算符 (?:)(?:)(7) 逗号运算符逗号运算符 (,),)(8) 指针运算符指针运算符 (*和)和)(9) 求字节数运算符求字节数运算符 (sizeof)(10) 强制类型转换运算符强制
34、类型转换运算符 ( (类型类型) )(11) 成员运算符成员运算符 (.-)(12) 下标运算符下标运算符 ( )(13) 其他其他 (如函数调用运算符()(如函数调用运算符()详见附录详见附录D3.2.3运算符和表达式运算符和表达式3.赋值运算符赋值运算符 =a=3;b=16;c=a*12+3*b;if(a=3)printf(“c=%dn”,c);赋值运算符左边必须是一个变量!赋值运算符左边必须是一个变量!注意:等号与赋值的区别注意:等号与赋值的区别x=y,表示判断表示判断X的值与的值与Y 的值是否相等。的值是否相等。 x=y,表示将,表示将y的值给的值给x3.2.3运算符和表达式运算符和表
35、达式3.赋值运算符赋值运算符 复合的赋值运算符复合的赋值运算符 赋值符号赋值符号“=”之前加上其它运算符,可以构成复之前加上其它运算符,可以构成复合的运算符。合的运算符。如果在如果在 “=”号前加一个号前加一个 “+”运算就成了运算就成了 “+=”a+=3 等价于等价于 a=a+3;x%=3等价于等价于x=x%3;x*=y+8等价于等价于 x=x*(y+8);3.2.3 运算符和表达式运算符和表达式运算符运算符(1) 算术运算符算术运算符 (+ - * / % + -)(2) 关系运算符关系运算符 ( !)!)(3) 逻辑运算符逻辑运算符 (!(! |)(4) 位运算符位运算符 ( | )(5
36、) 赋值运算符赋值运算符 (及其扩展赋值运算符)(及其扩展赋值运算符)(6) 条件运算符条件运算符 (?:)(?:)(7) 逗号运算符逗号运算符 (,),)(8) 指针运算符指针运算符 (*和)和)(9) 求字节数运算符求字节数运算符 (sizeof)(10) 强制类型转换运算符强制类型转换运算符 ( (类型类型) )(11) 成员运算符成员运算符 (.-)(12) 下标运算符下标运算符 ( )(13) 其他其他 (如函数调用运算符()(如函数调用运算符()详见附录详见附录D3.2.3 运算符和表达式运算符和表达式4. 强制类型转换运算符强制类型转换运算符 float a; int c; c=
37、a%2; /错错 %两侧为整数两侧为整数强制类型转换运算符强制类型转换运算符的的一般形式为一般形式为 (类型名)(表达式)(类型名)(表达式)u(double)a (将转换成(将转换成double类型)类型)u(int) (x+y) (将(将x+y的值转换成的值转换成int型)型) c=(int)a%2注意:注意:a的类型还是的类型还是float3.2.3 运算符和运算符和表达式表达式5. 不同类型数据间的混合运算不同类型数据间的混合运算有两种类型转换有两种类型转换u强制类型转换强制类型转换u系统自动进行的类型转换系统自动进行的类型转换int a=1;double b=2,c;c=a/b;/结
38、果按结果按double型型3.2.3 运算符和运算符和表达式表达式6. 表达式表达式用用运算符运算符将运算对象(包括常量、变量、函数等)将运算对象(包括常量、变量、函数等)连接起来、符合语法规则的式子,称为表达式连接起来、符合语法规则的式子,称为表达式a*12+3*ba*b/(c-1.5)+ ad=a*b/(c-1.5)+ a赋值表达式赋值表达式:变量变量 表达式表达式求值求值c=a+b=3 错错c=(a+b)=3c=a+(b=3) 对对 c = 5 * (f - 32) / 9 运算符运算符的的优先级优先级与与结合性结合性d=a*b/(c-1.5)+ a表达式中表达式中先按先按运算符的运算符
39、的优先级优先级当优先级别相同时,当优先级别相同时,再按结合方向再按结合方向自左至右自左至右自右至左自右至左注意:的结合顺序为注意:的结合顺序为自右而左自右而左。 “a=(b=5)”和和“a=b=5”等价等价 “a=b”和和“b=a”含义不同含义不同3.3 C语句语句3.3.1 C语句的分类语句的分类3.3.2 最基本的语句最基本的语句-赋值语句赋值语句3.3.1 C语句的作用和分类语句的作用和分类语句分为以下语句分为以下5类类:1. 控制语句控制语句9种:种:(1)if()else(条件语句)(条件语句)(2)for()(循环语句)循环语句)(3)while()(循环语句)(循环语句)(4)d
40、owhile()(循环语句)循环语句)(5)continue(结束本次循环语句结束本次循环语句)(6)break(中止执行中止执行switch或循环语句或循环语句)(7)switch (多分支选择语句多分支选择语句)(8)return (从函数返回语句从函数返回语句)(9)goto (转向语句,基本不用)(转向语句,基本不用)3.3.1 C语句的作用和分类语句的作用和分类语句分为以下语句分为以下5类类:1. 控制语句控制语句9种种 2. 函数调用语句函数调用语句 printf(“china”);3.3.1 C语句的作用和分类语句的作用和分类语句分为以下语句分为以下5类类:1. 控制语句控制语句
41、9种种 2. 函数调用语句函数调用语句3. 表达式语句表达式语句任何表达式都可以加上分号而成为语句任何表达式都可以加上分号而成为语句,最基本的是最基本的是赋值语句赋值语句 i+1;i=i+1;i+; 3.3.1 C语句的作用和分类语句的作用和分类语句分为以下语句分为以下5类类:1. 控制语句控制语句9种种 2. 函数调用语句函数调用语句3. 表达式语句表达式语句4.空语句空语句;/什么也不做什么也不做作为流程的转向点,循环语句的循环体(延迟)作为流程的转向点,循环语句的循环体(延迟)3.3.1 C语句的作用和分类语句的作用和分类语句分为以下语句分为以下5类类:1. 控制语句控制语句9种种 2.
42、 函数调用语句函数调用语句3. 表达式语句表达式语句4.空语句空语句5.复合语句复合语句用大括号将多个语句包括起来构成一个复合语句用大括号将多个语句包括起来构成一个复合语句 printf(“china”); printf(“I love you”); printf(“china”);3.3.2 最基本的语句最基本的语句-赋值语句赋值语句在在C程序中,最常用的语句是:程序中,最常用的语句是:u赋值语句赋值语句u输入输出语句输入输出语句其中最基本的是赋值语句其中最基本的是赋值语句1.赋值表达式和赋值语句赋值表达式和赋值语句u赋值表达式的末尾没有赋值表达式的末尾没有分号分号,而赋值语句有,而赋值语句
43、有分号分号c=a+2/表达式表达式c=a+2;/语句语句2.变量赋初值变量赋初值int a; a=3;相当于相当于int a=3,b,c;int a=3,b=3,c=3; int a=b=c=3;/错误错误int a,b,c; a=b=c=3;/变量要以逗号变量要以逗号分开定义分开定义3.类型转换类型转换 如果赋值运算符两侧的类型不一致,在赋值如果赋值运算符两侧的类型不一致,在赋值时要进行类型转换。时要进行类型转换。(1)整型数据之间的赋值,按存储单元的存)整型数据之间的赋值,按存储单元的存储形式直接传送储形式直接传送u short型型=int型型u char型型=int型或型或short型型
44、(1)整型数据之间的赋值,按存储单元的存)整型数据之间的赋值,按存储单元的存储形式直接传送储形式直接传送u short型型=int型型u char型型=int型或型或short型型例如:例如:int i=289; char c=a;c=i;如果用如果用“%c”%c” 得到字得到字符符“!”!”,! !的的ASCIIASCII码码为为3333。如果用如果用“%d”%d” 得得到字到字3333。(1)整型数据之间的赋值,按存储单元的存)整型数据之间的赋值,按存储单元的存储形式直接传送储形式直接传送u short型型=int型型(可能溢出可能溢出)u char型型=int型或型或short型型(可能
45、溢出可能溢出)例如:例如:int a=32767; short b; b=a+1;(2)实型数据之间以及整型与实型之间的赋)实型数据之间以及整型与实型之间的赋值,先转换类型后赋值。值,先转换类型后赋值。u int型型=float型或型或double型型(丢掉小数)(丢掉小数) int a; float b=3.5;a=b; ufloat型型=double型型(有效数字从(有效数字从15变为变为6) u float型或型或double型型=int型(增加数据精度)型(增加数据精度)udouble型型=float型(有效数字从型(有效数字从6变为变为15)3.类型转换类型转换 如果赋值运算符两侧的
46、类型不一致,在赋值如果赋值运算符两侧的类型不一致,在赋值时要进行类型转换。时要进行类型转换。u整型整型=整型(整型(可能溢出可能溢出)u int型型=float型或型或double型型(丢掉小数)(丢掉小数)ufloat型型=double型型(有效数字从(有效数字从15变为变为6) 3.4 数据的输入输出数据的输入输出3.4.1 有关数据输入输出的概念有关数据输入输出的概念3.4.2 输入输出举例输入输出举例3.4.3 用用printf函数输出数据函数输出数据3.4.4 用用scanf函数输入数据函数输入数据3.4.5 字符数据的输入输出字符数据的输入输出3.4.1 有关数据输入输出的概念有关
47、数据输入输出的概念几乎每一个几乎每一个C程序都包含输入输出程序都包含输入输出输入输出是程序中最基本的操作之一输入输出是程序中最基本的操作之一3.4.1 有关数据输入输出的概念有关数据输入输出的概念1. 所谓输入输出是所谓输入输出是以计算机主机为主体以计算机主机为主体而而言的言的从计算机向输出设备从计算机向输出设备(如显示器、打印机如显示器、打印机等等)输出数据称为输出输出数据称为输出从输入设备(如键盘、磁盘、光盘、扫描从输入设备(如键盘、磁盘、光盘、扫描仪等)仪等)向计算机输入数据称为输入向计算机输入数据称为输入3.4.1 有关数据输入输出的概念有关数据输入输出的概念2. 语言本身不提供输入输
48、出语句语言本身不提供输入输出语句在在C程序中用来实现输出和输入的,主要是程序中用来实现输出和输入的,主要是printf函数和函数和scanf函数函数。其中,。其中,printf和和scanf 是库函数的名字是库函数的名字这两个函数是这两个函数是格式格式输入输出函数输入输出函数,用这两用这两个函数时,个函数时,必须指定格式必须指定格式3.4.2 有关数据输入输出的概念有关数据输入输出的概念3.在使用在使用输入输出输入输出函数时,要在程序文函数时,要在程序文件的开头用预编译指令件的开头用预编译指令#include /从从C编译系统编译系统子目录中找子目录中找或或#include “stdio.h”
49、/从用户的当前目录从用户的当前目录中找中找3.4.3 用用printf函数输出数据函数输出数据1.printf函数的一般格式函数的一般格式printf(“格式控制字符串格式控制字符串”, 输出参数输出参数1, , 输出参数输出参数n);用双引号用双引号“”“”括起来,表示输出的格式括起来,表示输出的格式要输出的数据要输出的数据例如:例如:printf(“i=%d,c=%fn”,i,c);普通字符普通字符-原样输出原样输出3.4.3 用用printf函数输出数据函数输出数据1.printf函数的一般格式函数的一般格式printf(“格式控制字符串格式控制字符串”, 输出参数输出参数1, , 输出
50、参数输出参数n);用双引号用双引号“”“”括起来,表示输出的格式括起来,表示输出的格式要输出的数据要输出的数据例如:例如:printf(“i=%d,c=%fn”,i,c);格式声明,由格式声明,由%和格式字符组和格式字符组成成,被后面的输出参数值代替被后面的输出参数值代替3.4.3 用用printf函数输出数据函数输出数据1.printf函数的一般格式函数的一般格式printf(“格式控制字符串格式控制字符串”, 输出参数输出参数1, , 输出参数输出参数n);用双引号用双引号“”“”括起来,表示输出的格式括起来,表示输出的格式要输出的数据要输出的数据例如:例如:printf(“i=%d,c=
51、%fn”,i,c);转义字符转义字符3.4.3 用用printf函数输出数据函数输出数据1.printf函数的一般格式函数的一般格式printf(“格式控制字符串格式控制字符串”, 输出参数输出参数1, , 输出参数输出参数n);用双引号用双引号“”“”括起来,表示输出的格式括起来,表示输出的格式要输出的数据要输出的数据例如:例如:printf(“i=%d,c=%fn”,i,c);可以是常量、变量或表达式可以是常量、变量或表达式3.4.3 用用printf函数输出数据函数输出数据1.printf函数的一般格式函数的一般格式printf(“格式控制字符串格式控制字符串”, 输出参数输出参数1,
52、, 输出参数输出参数n);例如:例如:printf(“i=%d,c=%fn”,i,c);可以是常量、变量或表达式可以是常量、变量或表达式printf(“i=%d”,3);printf(“i=%d”,i);printf(“i=%d”,i+3);3.4.3 用用printf函数输出数据函数输出数据1.printf函数的一般格式函数的一般格式printf(“格式控制字符串格式控制字符串”, 输出参数输出参数1, , 输出参数输出参数n);用双引号用双引号“”“”括起来,表示输出的格式括起来,表示输出的格式要输出的数据要输出的数据例如:例如:printf(“i=%d,c=%fn”,i,c);3.4.3
53、 用用printf函数输出数据函数输出数据2. 常用常用格式字符格式字符d格式符格式符 %d输出输出有符号的十进制有符号的十进制整数整数(int)printf(“%dn%dn”,12,-345); 输出输出long型:型:%ld,输出输出short型:型:%hd3.4.3 用用printf函数输出数据函数输出数据2. 常用常用格式字符格式字符d格式符格式符 可以在格式声明中指定输出数据的域宽可以在格式声明中指定输出数据的域宽, %nd (输出占输出占n列,右对齐列,右对齐) %-nd (输出占输出占n列,左对齐列,左对齐)printf(%5dn%2dn%-5d,%dn,123,123,123,
54、123);3.4.3 用用printf函数输出数据函数输出数据2. 常用常用格式字符格式字符d格式符格式符。f格式符格式符。用来输出。用来输出实数实数(float,double)基本型基本型%f,实数中的整数部分全部输出,实数中的整数部分全部输出,只能得到位小数只能得到位小数double a=1000; printf(“%fn”,a/3);3.4.3 用用printf函数输出数据函数输出数据2. 常用常用格式字符格式字符d格式符格式符f格式符格式符。%f用来输出用来输出实数实数(float,double) 基本型基本型%f,实数中的整数部分全部输出,实数中的整数部分全部输出,只能得只能得到位小
55、数到位小数 指定指定数据宽度数据宽度m和和小数位数小数位数n。用。用%m.nfdouble a=1000; printf(%12.7fn%.7fn%fn%.0fn,a/3,a/3,a/3,a/3);3.4.3 用用printf函数输出数据函数输出数据2. 常用常用格式字符格式字符d格式符格式符。 %d输出输出整型整型数据数据。 f格式符格式符。%f用来输出用来输出实数实数。c格式符格式符。%c用来输出用来输出一个字符一个字符(char)char ch=a;printf(“%c”,ch);printf(“%d”,ch);3.4.3 用用printf函数输出数据函数输出数据2. 常用常用格式字符格
56、式字符d格式符格式符。 %d输出输出整型整型数据数据。 f格式符格式符。%f用来输出用来输出实数实数。c格式符格式符。%c用来输出用来输出一个字符一个字符(char)s格式符格式符。%S用来输出一个用来输出一个字符串字符串printf(“%sn”, “CHINA”);printf(“CHINAn”)3.4.4 用用scanf函数输入数据函数输入数据1.scanf函数的一般格式函数的一般格式scanf(“格式控制字符串格式控制字符串”, 输入参数输入参数1, , 输入参数输入参数n);用双引号用双引号“”“”括起来,表示输入的格式括起来,表示输入的格式类同类同printfprintf变量地址,变
57、量地址,& &变量名变量名例如:例如:scanf(a=%d,b=%f,c=%f,&a,&b,&c);普通字符普通字符原样输入原样输入3.4.4 用用scanf函数输入数据函数输入数据2.使用使用scanf函数时应注意的问题函数时应注意的问题scanf(a=%d,b=%d,c=%d,&a,&b,&c); 1 3 2 a=1,b=3,c=2 a=1 b=3 c=2 错错对对 (输入形式与双引号内一致(输入形式与双引号内一致)错错3.4.4 用用scanf函数输入数据函数输入数据2.使用使用scanf函数时应注意的问题函数时应注意的问题
58、scanf(%d %d %d,&a,&b,&c); 1 3 2 1 3 2 1 3 2 对对对对对对(空格与回车作为分隔符是等效的(空格与回车作为分隔符是等效的)3.4.4 用用scanf函数输入数据函数输入数据2.使用使用scanf函数时应注意的问题函数时应注意的问题scanf(”%d%d%d”,&a,&b,&c); 1 2 3 scanf(”%c%c%c”,&a,&b,&c);或 1 2 3 连续输入数值时,当数据连续输入数值时,当数据分不开分不开时,要以时,要以空格或回车空格或回车分开分开abc 对对两个两个字符字符
59、之间系统之间系统能区分能区分,不要插入分隔符,不要插入分隔符a b c 错错3.4.4 用用scanf函数输入数据函数输入数据2.使用使用scanf函数时应注意的问题函数时应注意的问题scanf(”%d%d%d ”,&a,&b,&c); scanf(”%d%d%dn”,&a,&b,&c); scanf格式控制字符串的最后不建议用空格或格式控制字符串的最后不建议用空格或nscanf 中的中的n不是回车不是回车3.4.4 用用scanf函数输入数据函数输入数据1.scanf函数的一般格式函数的一般格式scanf(“格式控制字符串格式控制字符串”, 输
60、入参数输入参数1, , 输入参数输入参数n);用双引号用双引号“”“”括起来,表示输入的格式括起来,表示输入的格式类同类同printfprintf变量地址,变量地址,& &变量名变量名例如:例如:scanf(a=%d,b=%f,c=%f,&a,&b,&c);格式声明格式声明3.4.4 用用scanf函数输入数据函数输入数据3.scanf函数的格式函数的格式声明声明%d 输输入入有符号十进制整数。有符号十进制整数。%f用来输用来输入入实数实数l%f输入输入float型,型,%lf输入输入double型型 int money; float year; double rate; scanf(%d%f%lf, &money, &year, &rate); c格式符格式符。%c用来输用来输入入一个字符一个字符(char)printf%dcharintdoublefloat%f%cscanf%dcharintdoublefloat%
温馨提示
- 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
- 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
- 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
- 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
- 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
- 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
- 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。
最新文档
- 2025-2026年天津市护理专业期末试卷
- 2025-2026年公众表达能力测试题库
- 2026年护士资格考试急救护理学专项训练习题课件
- 大数据企业培育认定申报材料参考模板
- Unit 6 Plan for Yourself Reading Plus 同步练习人教版英语八年级上册
- 外来施工人员入场安全教育培训考试卷及答案
- 危险化学品安全作业《过氧化工艺》安全生产模拟练习题题及答案
- 无菌导尿术模拟试题及答案
- 物业项目经理项目运营管理综合能力测试题及答案
- 现代人力资源管理理论与应用知识题及答案
- 重庆南开中学高2027届高三年级质量检测(一)英语+答案
- 新版2026秋新教材湘美版小学美术五年级上册(全册) 教学设计合集
- 2025高级会计师《高级会计实务》案例分析试题及答案
- 加油站储存经营的危化品“一书一签”
- 【直接打印】人教版(2024新版)八年级上册物理默写小纸条
- 螺杆空压机微电脑控制器MAM-KY12S(B)-(Ⅻ)型
- DL∕T 1779-2017 高压电气设备电晕放电检测用紫外成像仪技术条件
- 垃圾渗滤液应急处理服务投标方案技术标
- 第二章 分数(单元重点综合测试)(解析版)
- 应征入伍服兵役高等学校学生国家教育资助申请表
- 向日葵种植技术及作物套餐培训课件
评论
0/150
提交评论