收藏 分享(赏)

C语言4C数据类型、运算符与表达式.ppt

上传人:dreamzhangning 文档编号:3336643 上传时间:2018-10-15 格式:PPT 页数:42 大小:335.50KB
下载 相关 举报
C语言4C数据类型、运算符与表达式.ppt_第1页
第1页 / 共42页
C语言4C数据类型、运算符与表达式.ppt_第2页
第2页 / 共42页
C语言4C数据类型、运算符与表达式.ppt_第3页
第3页 / 共42页
C语言4C数据类型、运算符与表达式.ppt_第4页
第4页 / 共42页
C语言4C数据类型、运算符与表达式.ppt_第5页
第5页 / 共42页
点击查看更多>>
资源描述

1、C语言程序设计,第4章 C数据类型、运算符与表达式,第4章 C数据类型、运算符与表达式,数据类型概述 常量 变量 运算符与表达式 C语言中的类型转换,4.1 数据类型概述,程序 文件 对数据的描述(指定数据类型和组织形式) 对操作的描述(操作步骤) 程序 = 算法+数据结构+程序设计方法+语言工具环境 对数据进行操作,一、程序,二、C语言的数据类型,数据类型总表,数据类型决定: 1. 数据占内存字节数 2. 数据取值范围 3. 其上可进行的操作,一般用大写字母 是宏定义预处理命令,不是C语句 直接常量: 整型常量 实型常量 字符常量 字符串常量,如 #define PRICE 30,定义:程序

2、运行时其值不能改变的量(即常数) 分类: 符号常量:用标识符代表常量 定义格式: #define 符号常量 常量,例 符号常量举例#define PRICE 30 main() int num,total;num=10;total=num*PRICE;printf(“total=%d“,total); ,4.2 常量,C常量一览表,整型常量的几点说明 整型常量的类型 根据其值所在范围确定其数据类型 整型常量的后缀 在整常量后加字母l或L,认为它是long int 型常量,单字符常量,字符常量 定义:用单引号括起来的单个普通字符或转义字符.,如 a A ? n 101,字符常量的值:该字符的AS

3、CII码值,如 A65, a97,048 , n10,单字符常量有如下几种表示方法 1)直接形式。只能表示ASCII字符中可输入的字符。 2)八进制形式。格式ddd。“ddd”表示13位八进制数 其值代表的是某个字符的ASCII值。“”是转义字符。 3)十六进制形式。xhh,x是十六进制的前缀。 4)转义字符。特殊的字符常量。,如 101 -A 012 -n376 - x61 -a60 -0 483 -(),例: A-101-x41-65,转义字符:反斜线后面跟一个字符或一个代码值表示,例 转义字符举例 main() printf(“101 x42 Cn“);printf(“I say:“Ho

4、w are you?“n“);printf(“C Programn“);printf(“Turbo C“); ,运行结果:(屏幕显示) A B C Isay:”How are you?” C Program Turbo C,字符串常量,字符串:双引号括起来的一串字符 字符串结束标志:0 字符串的内部表示方法注意: 字符和字符串表示形式的区别 数字和数字字符的区别 空字符0和空格字符 的区别,符号常量,标识符形式的常量 例:求圆周长,#define PI 3.1416 main() float r,l; printf(“INPUT r=“); scanf(“%f“, ,#define PI 3.

5、1416 无法输入 pi 不符合习惯,4.3 变量,变量的类型 变量的基本操作: 赋值,向变量中存入数据值; 取值(引用),取得变量当前存储的值,以便在计算过程中使用。 变量定义 变量的初始化,一、变量的概念,在程序运行过程中,其值可以改变的量称为变量 一个变量应该有一个名字 在内存中占据一定的存储单元 变量在使用前必须有一个确定的值,注意变量名与变量值的区别,二、变量的类型,整型,实型,字符型,有,有,无,无,signed int,signed short,signed long,unsigned int,unsigned short,unsigned long,float,double,c

6、har,有,16,16,32,16,16,32,32,64,8,-21474936482147493648,-3276832767,-3276832767,1.7e-3081.7e308,065535,065535,04294967295,3.4e-383.4e38,0255,三、变量的定义,格式: 修饰符 定义符 变量表列;int a,b; 功能: 分配内存 建立变量名与内存地址间的对应关系,int a,b; a=3; b=a+2;,四、变量的初始化,赋值运算符 = : 格式:变量=值(常量、变量、表达式) 例如:x=-x; 变量赋初值 定义时初始化(必须为常量或常量表达式)int a=3,

7、b=5; 使用前赋初值 int a;a=3; 变量名:内存地址 变量值:内存空间记录的数据,4.4 运算符与表达式,运算符:C语言中描述数据运算的特殊符号。 表达式:用运算符将C语言的各种运算对象连接起来,组成符合C语法要求的式子。 计算:表达式的求值过程。 C的运算符的三要素: 优先级(决定混合运算中的先后次序) 几目 (操作数的个数) 结合方向,一、算术运算符与表达式,五种基本算术运算符 +、-(减法/取负)、*、/、%(求余,模运算符) 算术表达式 由算术运算符、括号和任何有值的对象连接起来的符合C语言要求的式子称为算术运算表达式,二、 自增(减)运算符与表达式,自增(+)、自减(- -

8、)运算作用:自增运算使单个变量的值加,自减运算使单个变量的值减 1 表达式: 变量+(+变量),表达式与运算规则,自增、自减运算符单独使用时,前置和后置运算方法完全相同。 自增、自减运算符和其他运算符组成复合表达式时前置和后置运算是两种不同的方法: 前置运算运算符放在变量之前:变量、变量 先自增(减)后运算 后置运算运算符放在变量之后:变量、变量 先运算后自增(减),例4.1,例:a=1,b=2;k=(a+)+(b-)+(b+);,例4.2,例:a=1,b=2;k=(+a)+(-b)+(+b);,说明,自增、自减运算,常用于循环语句和指针变量中。 自增、自减运算符,不能用于常量和表达式。 在表

9、达式中,最好避免连续使同一变量进行自增或自减运算,三、 赋值运算符与表达式,简单的赋值运算符 := 作用:将一个数据(常量或表达式)赋给一个变量 表达式:变量=确定的值例如:a=4;c=a+b;,表达式计算,求解过程:1、计算整个表达式的值2、把表达式的值赋给变量,例如:float x;int a=1,b=2;x=a*b/a-a+1.5;,x = a * b / a a + 1.5,赋值表达式的值,赋值表达式的值即变量的值。,main() int a;float b;b=a=2.5;printf(“a=%d,b=%.2fn“,a,b); ,四、 复合赋值运算,复合赋值运算符是由赋值运算符之前再

10、加一个双目运算符构成的。 复合赋值运算的一般格式为:变量 双目运算符 = 表达式复合赋值运算符 等价于:变量= 变量 双目运算符 (表达式),复合赋值运算符,C 语言规定的10 种复合赋值运算符如下: += -= *= /= %= /*复合算术运算符 5 种*/ &= = |= = /*复合位运算符 5种*/ 例如: x += 3 /* 等价于x=x+3 */ y *= x + 6 /* 等价于y=y*(x+6),而不是y=y*x+6 */,表达式求解:,展开: 变量=变量 表达式,a+=4+5 a=a+(4+5),a*=4+5 a=a*(4+5),例4.3 求解表达式:a+=a-=a*a (

11、a=2),五、位运算符与表达式,运算符: & | 运算对象只能是整型或字符型的数据,不能为实型数据,单目 右结合,只有参与运算的两个二进位均为1时,结果位才为1,否则为0,参与运算的数以补码方式出现0&0=0 0&1=0 1&0=0 1&1=1,1.按位与运算,00000001 (1的二进制补码),故:9&5 运算结果为:1,2、按位或运算,只要参与运算的二个二进位有一个为1时,结果位就为1,参与运算的两个数均以补码出现0|0=0 0|1=1 1|0=1 1|1=1,00001101 (十进制为13),故:9|5 运算结果为:13,3、按位异或运算,参与运算的两数各对应的二进位相异或,当两对应

12、的二进位相异时,结果为1,参与运算数仍以补码出现相同为0,不同为100=0 01=1 10=1 11=0,00001100 (十进制为12),故:95 运算结果为:12,4、取反运算,对参与运算的数的各二进位按位求反 例如:,11110110 (-10的二进制补码),故:9 运算结果为:-10,5、左移运算,把“”左边的运算数的各二进位全部左移若干位,由“”右边的数指定移动的位数,高位丢弃,低位补0,故:34 运算结果为:48,5、右移运算,把“”左边的运算数的各二进位全部右移若干位,“”右边的数指定移动的位数,对于有符号数,在右移时,符号位将随同移动。当为正数时,最高位补0,而为负数时,很多

13、系统规定为补1。,故:152 运算结果为:3,六、 逗号表达式,运算符:( ,) 用逗号(,)把表达式连接起来的符合C语言的式子称为逗号表达式 求解: 求解所有表达式的值 逗号表达使得值是最后一个表达式的值 例如: a=(3,5,7) a=3,5,7,赋值表达式,逗号表达式,4.5 类型转换,在语言中,整型、实型和字符型数据间可以混合运算(字符数据与整型数据可以通用)。 如果一个运算符两侧的操作数的数据类型不同,则系统按“先转换、后运算”的原则,将数据自动转换成同一类型,然后进行运算。,一、自动类型转换,算术运算中的类型转换 当某一运算符两侧的操作数类型不一致时,应将低类型的数据转为高类型的数据 类型的判断:内存中所占字节数 赋值表达式中的类型转换 最终类型:变量的类型,赋值表达式中的类型转换,二、 强制类型转换,语言允许强制转换。数据类型强制转换的一般格式为: (要转换成的数据类型)(被转换的表达式) 当被转换的表达式是一个简单表达式时,外面的一对圆括号可以缺省。,作业,C程序设计P56 习题4-4、4-5、4-6、4-8 (书面作业) 4-1、4-2、4-3、4-7(自己练习),

展开阅读全文
相关资源
猜你喜欢
相关搜索

当前位置:首页 > 高等教育 > 大学课件

本站链接:文库   一言   我酷   合作


客服QQ:2549714901微博号:道客多多官方知乎号:道客多多

经营许可证编号: 粤ICP备2021046453号世界地图

道客多多©版权所有2020-2025营业执照举报