《c语言程序设计基础》2基本数据类型及运算.ppt
《《c语言程序设计基础》2基本数据类型及运算.ppt》由会员分享,可在线阅读,更多相关《《c语言程序设计基础》2基本数据类型及运算.ppt(149页珍藏版)》请在淘文阁 - 分享文档赚钱的网站上搜索。
1、第第2章章 基本数据基本数据类型及运算型及运算2第第2 2章章 基本数据类型及运算基本数据类型及运算本章内容本章内容 2.2 标准输入输出函数标准输入输出函数 2.3 运算符与表达式运算符与表达式 2.4 算术运算符与算术表达式算术运算符与算术表达式 2.1 数据类型数据类型 2.5 自增自减运算符及其表达式自增自减运算符及其表达式3第第2 2章章 基本数据类型及运算基本数据类型及运算 2.7 关系运算符和关系表达式关系运算符和关系表达式 2.8 逻辑运算符和逻辑表达式逻辑运算符和逻辑表达式 2.9 其他类型运算符和表达式其他类型运算符和表达式 2.6 赋值运算符和赋值表达式赋值运算符和赋值表
2、达式 2.11 库函数库函数 2.10 表达式的运算顺序和类型转换表达式的运算顺序和类型转换4 2.1 2.1 数据类型数据类型本节内容本节内容 2.1.2 常量与变量常量与变量 2.1.3 整型整型 2.1.4 实型实型 2.1.1 标识符标识符 2.1.5 字符型字符型5本章要点本章要点6 2.1 2.1 数据类型数据类型v圆的半径为圆的半径为5cm5cm,计算圆的面积并输出,计算圆的面积并输出程序中的数据:程序中的数据:r r、areaarea 5 5、3.143.14对数据的运算:对数据的运算:*、=#includevoidmain()floatr,area;r=5;area=3.14
3、*r*r;printf(%fn,area);7 2.1 2.1 数据类型数据类型v计算机在操作处理时,要完成以下工作:计算机在操作处理时,要完成以下工作:v在内存中要给半径在内存中要给半径 r r 和面积和面积 areaarea 开辟存储空间,开辟存储空间,存放存放它们的它们的值。值。应该留多大的地方来存放应该留多大的地方来存放其其值?值?v数据数据 5 5 和和 3.143.14 与与 r r、areaarea 不同,它们是在编不同,它们是在编写程序时就给出确定的值,在运算过程中不会改写程序时就给出确定的值,在运算过程中不会改变。变。这样的数计算机怎么处理?这样的数计算机怎么处理?v对对整数
4、整数 5 5 和和小数小数3.143.14,存放时是否有区别?存放时是否有区别?涉及数据类型涉及数据类型的基本知识的基本知识82.1 2.1 数据类型数据类型C C语言语言数据类型数据类型数组类型数组类型结构体类型结构体类型共用体类型共用体类型枚举类型枚举类型整型整型字符型字符型实型实型(浮点型浮点型)基本类型基本类型指针类型指针类型构造类型构造类型空类型空类型单精度型单精度型 双精度型双精度型 9 2.1.1 2.1.1 标识符标识符vC C程序是程序是基本字符基本字符的序列。的序列。v基本字符包括:基本字符包括:数字(数字(0 09 9)大小写字母(大小写字母(a az z,A AZ Z)
5、标点符号标点符号特殊字符:空格、换行、制表符特殊字符:空格、换行、制表符等,起分隔的等,起分隔的作用。增删空白一般不影响程序的意义。作用。增删空白一般不影响程序的意义。10 2.1.1 2.1.1 标识符标识符v标识符标识符是一个字符序列,用来标识程序中用到的是一个字符序列,用来标识程序中用到的常量、变量、函数、数组、语句标号以及符号常常量、变量、函数、数组、语句标号以及符号常量等的名称。量等的名称。vC C语言语言规定规定标识符应满足以下规则:标识符应满足以下规则:只能由只能由字母字母、下划线下划线和和数字数字组成组成第一个字符不能是数字第一个字符不能是数字标识符中的字母区别标识符中的字母区
6、别大小写大小写不能使用不能使用C C语言的语言的关键字关键字vC C语言中有语言中有3 3类标识符:关键字,系统预定义的标类标识符:关键字,系统预定义的标识符识符 ,用户标识符。,用户标识符。112.1.1 2.1.1 标识符标识符v关键字:关键字:C C语言规定的具有特定意义的字符串,通语言规定的具有特定意义的字符串,通常也称保留字(小写字母)。常也称保留字(小写字母)。标识数据类型(标识数据类型(1414个):个):intint、longlong、charchar、floatfloat、doubledouble等等标识存储类型(标识存储类型(5 5个):个):autoauto、static
7、static、registerregister等等标识流程控制(标识流程控制(1212个):个):gotogoto、breakbreak、ifif、elseelse、continuecontinue等等标识运算符(标识运算符(1 1个):个):sizeofsizeof 12 2.1.1 2.1.1 标识符标识符v2.1.1.2 2.1.1.2 预定义标识符预定义标识符v总是以固定的形式用于专门的地方,例如标识库函总是以固定的形式用于专门的地方,例如标识库函数名和编译预处理命令。数名和编译预处理命令。编译预处理命令:编译预处理命令:definedefine,endefendef,ifdefifd
8、ef,endifendif,includeinclude等等 。标准库函数:标准库函数:数学函数:数学函数:sqrtsqrt,sinsin,coscos,powpow,loglog,fabsfabs,expexp等。等。输入输出函数:输入输出函数:scanfscanf,printfprintf,getchargetchar,getsgets等。等。v2.1.1.3 2.1.1.3 用户自定义标识符用户自定义标识符v用户根据自己的需要定义的一类标识符,主要用于用户根据自己的需要定义的一类标识符,主要用于标识变量、函数、数组名等。标识变量、函数、数组名等。13 2.1.2 2.1.2 常量与变量常
9、量与变量v2.1.2.1 常量常量v常量是指在程序中固定不变的数据量。常量又可常量是指在程序中固定不变的数据量。常量又可分为直接常量和符号常量。分为直接常量和符号常量。直接常量:就是在程序中直接引用的数据:直接常量:就是在程序中直接引用的数据:整型常量:整型常量:1,0,-50,32767。实型常量:实型常量:3.14,-55.6,1.7e4。字符常量:字符常量:A,$,s。字符串常量:字符串常量:Good morning,how are you。14 2.1.2 2.1.2 常量与变量常量与变量v符号常量:是用标识符表示一个数据。定义符号常符号常量:是用标识符表示一个数据。定义符号常量:量:
10、#define#define 标识符标识符 常量常量v#define#define是一条预处理命令,称为宏定义,其功能是是一条预处理命令,称为宏定义,其功能是把该标识符定义为其后的常量值。一经定义,以后把该标识符定义为其后的常量值。一经定义,以后在程序中所有出现该标识符的地方均代之以该常量在程序中所有出现该标识符的地方均代之以该常量值。习惯上符号常量的标识符用大写字母。值。习惯上符号常量的标识符用大写字母。#define PI#define PI3.141593.14159v标识符标识符PIPI代表常量代表常量3.141593.14159。程序中,凡是出现标识。程序中,凡是出现标识符符PIPI
11、的地方都用的地方都用3.141593.14159替换。替换。15例例2.1在程序中使用符号常量在程序中使用符号常量#define PRICE 30#define PRICE 30#include#include void main()void main()int num,total;int num,total;num=10;num=10;total=num*PRICE;total=num*PRICE;printf(total=%dn,total);printf(total=%dn,total);符号常量符号常量符号常量符号常量:用一个标识符代表一个常量。符号常量的值在其作用域内不能改变,也不能
12、再被赋值。运行结果:运行结果:total=300total=300说明:说明:说明:说明:程序中用程序中用#define#define命令行定义命令行定义PRICEPRICE代表常量代表常量30,30,此后凡在本文件中出现的此后凡在本文件中出现的PRICEPRICE都代表都代表30,30,可以和常量一样进行运算可以和常量一样进行运算说明:说明:说明:说明:如再用赋值语句给如再用赋值语句给PRICE赋值是错的赋值是错的PRICE=40;/*/*错误,不能给符号常错误,不能给符号常量赋量赋不能对符号常量指定类型不能对符号常量指定类型int PRICE;/*/*错误,错误,PRICEPRICE不是变
13、量,不是变量,不能指定类型不能指定类型*/16 2.1.2 2.1.2 常量与变量常量与变量v2.1.2.2 2.1.2.2 变量变量v变量代表内存中具有特定属性的一个存储单元,变量代表内存中具有特定属性的一个存储单元,它用来存放数据,也就是变量的值,在程序运行它用来存放数据,也就是变量的值,在程序运行期间,这些值是可以改变的。期间,这些值是可以改变的。v变量名实际上是一个以一个名字对应代表一个地变量名实际上是一个以一个名字对应代表一个地址,在对程序编译连接时由编译系统给每一个变址,在对程序编译连接时由编译系统给每一个变量名分配对应的内存地址。从变量中取值,实际量名分配对应的内存地址。从变量中
14、取值,实际上是通过变量名找到相应的内存地址,从该存储上是通过变量名找到相应的内存地址,从该存储单元中读取数据。单元中读取数据。17 2.1.2 2.1.2 常量与变量常量与变量v2.1.2.2 2.1.2.2 变量变量vC C语言中语言中要求对所有用到的变量作强制定义,也就要求对所有用到的变量作强制定义,也就是是“先定义,后使用先定义,后使用”。v在定义变量时要指定变量名和变量的数据类型,在定义变量时要指定变量名和变量的数据类型,也可以同时为定义的变量赋初值。变量的数据类也可以同时为定义的变量赋初值。变量的数据类型决定了编译系统为其分配的空间大小。型决定了编译系统为其分配的空间大小。v 变量变
15、量“先定义,后使用先定义,后使用”的目的:的目的:未定义的,系统不作为变量名(编译时出错);未定义的,系统不作为变量名(编译时出错);编译时为变量分配相应存储单元;编译时为变量分配相应存储单元;根据变量类型,检查运算是否合法,如整型变量的求根据变量类型,检查运算是否合法,如整型变量的求余运算余运算 a%ba%b18 2.1.2 2.1.2 常量与变量常量与变量v变量定义必须放在变量使用之前,一般放在函数变量定义必须放在变量使用之前,一般放在函数体的开头部分,之后是程序的执行语句。主函数体的开头部分,之后是程序的执行语句。主函数mainmain()()的结构为:的结构为:vmain()main(
16、)v v 变量声明语句变量声明语句v 执行语句序列执行语句序列v 19 2.1.2 2.1.2 常量与变量常量与变量v定义变量的语句格式为:定义变量的语句格式为:v类型类型 变量表变量表;v类型可以是类型可以是intint、floatfloat、charchar、voidvoid或自定义类或自定义类型。变量表可以是一个或多个变量名,各变量之型。变量表可以是一个或多个变量名,各变量之间要用逗号分开,声明语句要以分号作为结束。间要用逗号分开,声明语句要以分号作为结束。int abc;/int abc;/声明一个名为声明一个名为abcabc的整型变量的整型变量float m,n,p;/float m
17、,n,p;/声明声明3 3个实型变量,名字分别为个实型变量,名字分别为m m、n n、p pv应注意,在初始化中不允许连续赋值,如应注意,在初始化中不允许连续赋值,如int int a=b=c=5a=b=c=5是不合法的。是不合法的。202.1.3 2.1.3 整型数据整型数据v2.1.3.1 2.1.3.1 整型常量整型常量十进制整型常量:十进制整常数没有前缀。十进制整型常量:十进制整常数没有前缀。八进制整型常量:以数字八进制整型常量:以数字0 0作为前缀。所用数码为作为前缀。所用数码为0 07 7。八进制数通常是无符号数。例如:。八进制数通常是无符号数。例如:012012(十进制为(十进制
18、为1010)、)、01030103(十进制为(十进制为6767)、)、01777770177777(十进制为(十进制为6553565535)十六进制整型常量:十六进制整型常量以十六进制整型常量:十六进制整型常量以0X0X或或0 x0 x为前为前缀。所用数码为缀。所用数码为0909,AFAF或或afaf。例如:。例如:0X1B0X1B(十进制(十进制为为2727)、)、0XC20XC2(十进制为(十进制为194194)、)、0XFFFF0XFFFF(十进制为(十进制为6553565535)。)。212.1.3 2.1.3 整型数据整型数据v长整型数来表示,即在基本整型数后加大写字母长整型数来表示
19、,即在基本整型数后加大写字母“L”L”或小写字母或小写字母“l”l”来表示。例如:来表示。例如:72767L72767L(十进制为(十进制为7276772767)、)、0200000L0200000L(十进制为(十进制为6553665536)、)、0X21FFFL0X21FFFL(十进制为(十进制为139263139263)等。长整)等。长整型数占型数占4 4个字节(个字节(3232位)存储空间。位)存储空间。v整型常量的无符号数的后缀为整型常量的无符号数的后缀为“U”U”或或“u”u”。例。例如:如:625u625u,0 x12Du0 x12Du,115Lu 115Lu 均为无符号数。均为无
20、符号数。v程序中是根据前缀来区分各种进制数的。整型常程序中是根据前缀来区分各种进制数的。整型常量后面加量后面加u u或或U U,则认为是,则认为是unsigned intunsigned int型,整型型,整型常量后面加常量后面加l l或或L L,则认为是,则认为是long intlong int型。型。222.1.3 2.1.3 整型数据整型数据v2.1.3.2 2.1.3.2 整型变量整型变量v整型变量用来存放整型常量。整型变量按其取值整型变量用来存放整型常量。整型变量按其取值范围可分为以下几类:范围可分为以下几类:基本型基本型类型说明符为类型说明符为intint,在内存中占,在内存中占2
21、 2个字节,其取值为基本个字节,其取值为基本整常数。整常数。短整型短整型类型说明符为类型说明符为short intshort int或或shortshort。所占字节和取值范围。所占字节和取值范围均与基本型相同。均与基本型相同。长整型长整型类型说明符为类型说明符为long intlong int或或long long,在内存中占,在内存中占4 4个字节,个字节,其取值为长整型数。其取值为长整型数。232.1.3 2.1.3 整型数据整型数据v整型变量还可添加类型说明符整型变量还可添加类型说明符unsignedunsigned,表示该,表示该变量是无符号型变量。无符号型与上述三种类型变量是无符号
22、型变量。无符号型与上述三种类型匹配可构成:匹配可构成:无符号基本型无符号基本型 类型说明符为类型说明符为unsigned intunsigned int或或unsignedunsigned。无符号短整型无符号短整型 类型说明符为类型说明符为unsigned shortunsigned short无符号长整型无符号长整型 类型说明符为类型说明符为unsigned longunsigned long242.1.3 2.1.3 整型数据整型数据数的数的类类型型 数的范数的范围围 字节数字节数 int int-3276832767-3276832767 4 4short int short int-3
23、276832767-3276832767 2 2long int long int-2147483648-2147483648 2147483647 2147483647 4 4unsigned int unsigned int 065535 065535 4 4unsigned short unsigned short 065535 065535 2 2unsigned long unsigned long 04294967295 04294967295 4 425例例2.2 整型变量的定义与使用整型变量的定义与使用#include void main()int a,b,c,d;/*指定、为
24、整型变量*unsigned;*指定为无符号整型变量*12;-24;10;printf(”,”,);说明:说明:说明:说明:可以看到不同种类的整型数据可以可以看到不同种类的整型数据可以进行算术运算进行算术运算 运行结果:运行结果:+=22=22,+=-14=-14 2.1.3 2.1.3 整型数据整型数据262.1.3 2.1.3 整型数据整型数据v2.1.3.3 2.1.3.3 整型数据在内存中的存储方式整型数据在内存中的存储方式v一个数分为正数和负数,在计算机中为了表示数,一个数分为正数和负数,在计算机中为了表示数,可以采用多种方法,一般有原码、反码、补码这可以采用多种方法,一般有原码、反码
25、、补码这三种表示形式,实际上,在计算机中,数值是用三种表示形式,实际上,在计算机中,数值是用补码表示的。补码表示的。原码:将最高位作为符号位(以原码:将最高位作为符号位(以0 0代表正,代表正,1 1代表负),代表负),其余各位代表数值本身的绝对值,即转换成相应的二进其余各位代表数值本身的绝对值,即转换成相应的二进制形式,我们以短整型(制形式,我们以短整型(intint)来举例:)来举例:+7+7的原码:的原码:0000000000000111 0000000000000111 -7-7的原码:的原码:272.1.3 2.1.3 整型数据整型数据反码:一个数如果为正,则它的原码与反码表示方法反
- 配套讲稿:
如PPT文件的首页显示word图标,表示该PPT已包含配套word讲稿。双击word图标可打开word文档。
- 特殊限制:
部分文档作品中含有的国旗、国徽等图片,仅作为作品整体效果示例展示,禁止商用。设计者仅对作品中独创性部分享有著作权。
- 关 键 词:
- c语言程序设计基础 语言程序设计 基础 基本 数据类型 运算
限制150内