基本数据类型操作符和表达式_第1页
基本数据类型操作符和表达式_第2页
基本数据类型操作符和表达式_第3页
基本数据类型操作符和表达式_第4页
基本数据类型操作符和表达式_第5页
已阅读5页,还剩80页未读 继续免费阅读

下载本文档

版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领

文档简介

基本数据类型操作符和表达式第1页,课件共85页,创作于2023年2月

计算机处理的基本对象是数据。变量和常量则是程序的最基本的数据形式,将它们用操作符(也称为运算符)连接起来,便构成了表达式。本章介绍C语言中关于变量、常量、操作符和表达式的语法规则。这些语法规则是C语言的基本要素。第2页,课件共85页,创作于2023年2月

数据类型2.1整型数据2.2实型数据2.3字符型数据与字符串2.4第3页,课件共85页,创作于2023年2月

变量说明与初始化2.5运算符和表达式2.6小结2.7第4页,课件共85页,创作于2023年2月2.1数据类型

在C语言中,数据的类型分为基本数据类型、构造类型、指针类型和空值类型。对于每一种数据类型的数据,又可分成几种不同类型,如图2-1所示。第5页,课件共85页,创作于2023年2月

图2-1C语言的数据类型第6页,课件共85页,创作于2023年2月

通常将整型和实型统称为数值型。构造类型是由若干数据类型组合在一起构造成的复杂数据类型。指针类型可以表示数据的存储地址。空值类型表示没有数据值。第7页,课件共85页,创作于2023年2月

各种类型数据又可分为常量和变量。常量是程序运行中其值不能改变的数据。每个变量有自己的名字,叫变量名,变量用来存储在程序运行中其值可以发生变化的数据,一般用于存储原始数据、中间计算结果和最终计算结果等。第8页,课件共85页,创作于2023年2月2.2整型数据

2.2.1整型常量在C语言中使用以下3种不同进位制的整型常量。第9页,课件共85页,创作于2023年2月

(1)十进制数:例如,13,−15,0等。(2)

八进制数:八进制数的书写方法是在数字前加一个数字0,例如,015,−013,017,00等。(3)十六进制数:十六进制数的书写方法是在数字前加一个0x,例如,0x0,−0x15,0xaf等。第10页,课件共85页,创作于2023年2月

为了扩大整型数据的取值范围,C语言还提供了一种长整型常量。长整型常量在计算机中占用4个字节,相应的取值范围扩大到−2147483648~+2147483647。第11页,课件共85页,创作于2023年2月

2.2.2整型变量整型变量在计算机内存中占两个字节(即16bit),取值范围为从−32768~+32767(−215~215−1)。用以说明整型变量的关键字(也称为数据类型符)为int。第12页,课件共85页,创作于2023年2月

定义变量数据类型语句的一般格式为:数据类型符变量名1,变量名2,…C语言规定,每个变量在使用前,都必须先定义。第13页,课件共85页,创作于2023年2月

在关键字int前加上修饰符,可改变整型变量在内存所占位数和取值范围。第14页,课件共85页,创作于2023年2月

下列4种修饰符可以用来修饰整型变量:(1)signed 带符号的整型变量;(2)unsigned 无符号的整型变量;(3)long 长型整型变量;(4)short 短型整型变量。第15页,课件共85页,创作于2023年2月

在表2-1中列出了用这些修饰符修饰整型变量后,整型变量在计算机内存中所占位数和取值范围。第16页,课件共85页,创作于2023年2月

第17页,课件共85页,创作于2023年2月2.3实型数据

实型数据也称做浮点数,是一种带小数点的数。第18页,课件共85页,创作于2023年2月

2.3.1实型常量实型常量就是带小数点的10进制常数。在C语言中实型数据有两种表达(书写)方式:一种是用数字和小数点表示的,另一种是用指数方式表示的。第19页,课件共85页,创作于2023年2月

实型常量在计算机内存中一般占用4个字节,其数值取值范围是10−38~1038。有效数字是7位。第20页,课件共85页,创作于2023年2月

当一个实型常量的数值超过了它能表达的精度时,C语言可以自动将其精度扩大到15~16位(双精度)的有效数字。第21页,课件共85页,创作于2023年2月

2.3.2实型变量实型变量用来存储实型数据。实型变量分为如下两种。第22页,课件共85页,创作于2023年2月

(1)单精度实型变量或简称实型变量或浮点型变量,其类型标识符为float。(2)双精度实型变量或称双精度浮点型变量,其类型标识符为double。在表2-2中列出了以上两种实型变量在计算机内存中的所占位数和取值范围。第23页,课件共85页,创作于2023年2月

第24页,课件共85页,创作于2023年2月2.4字符型数据与字符串

2.4.1字符型常量

C语言的字符型常量是用单引号括起来的单个字符,如‘a’,‘B’,‘*’等都是字符型常量。第25页,课件共85页,创作于2023年2月

字符型常量在计算机内存中是用相应字符的ASCII存储的,占用一个字节的空间。第26页,课件共85页,创作于2023年2月

在C语言中字母是区分大小写的,所以,‘a’和‘A’是不同的字符型常量,由ASCII代码表可以知道,字符型常量‘a’存储的是十进制数97,而字符型常量‘A’存储的十进制数65。第27页,课件共85页,创作于2023年2月

因为在整型数与字符常量存在着这种对应关系,在C语言中字符型常量可以作为整型数来使用,整型数据(如果在ASCII范围内的话)也可以作为字符型数据来使用。第28页,课件共85页,创作于2023年2月

在C语言中支持一类特殊字符,它们以反斜杠“\”开头,称为反斜杠字符常量,或称转义字符。转义字符是将斜杠后面字符的含义转变为另一种意义了。第29页,课件共85页,创作于2023年2月

2.4.2字符型变量字符型变量是C语言的一种数据类型,用关键字(类型符)char说明,用于存储字符常量或数值。第30页,课件共85页,创作于2023年2月

字符型变量可以用变量修饰符signed和unsigned来修饰。表2-3列出了字符型变量在计算机内存中所占的位数和取值范围。类型符char和signedchar在意义上是没有区别的。第31页,课件共85页,创作于2023年2月

第32页,课件共85页,创作于2023年2月

一个字符型变量只能存储1个字符,它是以该字符的ASCII值存储的,并占一个字节的宽度。字符型变量和整型数变量之间可以相互通用。第33页,课件共85页,创作于2023年2月

2.4.3字符串常量字符串常量简称字符串。字符串不是一种数据类型,它是用双引号扩起来的一串字符。第34页,课件共85页,创作于2023年2月

字符串中的字母是区分大小写的。组成字符串的字符个数,叫做字符串长度。如果字符串中含有转义字符,则每个转义字符当作一个字符看待。第35页,课件共85页,创作于2023年2月

每个字符在内存占一个字节的空间。但每个字符串在内存中占用的实际字节数等于字符串的长度加1。第36页,课件共85页,创作于2023年2月

字符串常量与字符常量在书写格式上的区别就在于,字符常量是用单引号括起来的,而字符串常量是用是双引号括起来的。第37页,课件共85页,创作于2023年2月2.5变量说明与初始化

2.5.1变量说明(定义)在C语言中,变量是用变量名来表示的,变量名为一合法的C标识符。第38页,课件共85页,创作于2023年2月

在C程序中,变量在引用前,必须先进行说明,说明变量的属性,包括变量的名字和数据类型。变量说明也称为变量定义。第39页,课件共85页,创作于2023年2月

C语言的编译系统将根据变量说明,给变量分配相应的存储空间。变量说明语句的一般格式是:数据类型变量名列表;第40页,课件共85页,创作于2023年2月

其中,“数据类型”为前面介绍的C语言数据类型符(见表2-1、表2-2和表2-3),也可以是以后介绍的其他数据类型符。“变量名列表”是所要说明的一些同类型的变量名,变量名之间要用逗号分开。说明语句以分号结束。第41页,课件共85页,创作于2023年2月

2.5.2变量的初始化在对变量进行定义的同时给变量赋值称为变量的初始化。变量初始化的一般格式如下:变量类型变量名1=常量1,变量名2=常量2,…第42页,课件共85页,创作于2023年2月

变量的初始化是在程序运行到该变量所在的函数时进行的。如果定义变量时没有初始化,可以在以后用赋值语句给变量赋值。第43页,课件共85页,创作于2023年2月

一般情况下,如果变量在程序中没有初始化,则在赋值之前,它的值是不确定的,因此,程序中在引用某变量之前,该变量应该初始化或赋值。以后还会介绍在某些情况下,没有初始化的变量的初始值可以是确定的。第44页,课件共85页,创作于2023年2月2.6运算符和表达式

2.6.1运算符运算符也称操作符,是一种表示对数据进行何种运算处理的符号。编译器通过识别这些运算符,完成各种算术运算和逻辑运算。第45页,课件共85页,创作于2023年2月

运算的对象(数据)称为操作数。每个运算符代表某种运算功能,每种运算功能有自己的运算规则,如运算的优先级、结合性、运算对象类型和个数,以及运算结果的数据类型都有明确的规定。第46页,课件共85页,创作于2023年2月

C语言的基本运算符有以下几大类:算术运算符;逻辑运算符;关系运算符;位运算符;第47页,课件共85页,创作于2023年2月

赋值运算符;条件运算符;逗号运算符;数据长度运算符。第48页,课件共85页,创作于2023年2月

除了这些基本运算符外,还有一些专门用途的运算符,如:指针运算符;改变优先级运算符;成员运算符;下标运算符;其他。第49页,课件共85页,创作于2023年2月

2.6.2表达式用运算符把运算对象连接起来所组成的运算式,在C语言中叫做表达式。按照规定的运算规则,对表达式进行运算所得到的结果,称为表达式的值。第50页,课件共85页,创作于2023年2月

在C语言中,就是用圆括号来提高运算顺序的。在C语言中,括号也看作是运算符(提高运算符运算优先级),而且它的优先级别最高。第51页,课件共85页,创作于2023年2月

对优先级相同的运算符,C语言还规定了结合性。若是按自左向右的顺序进行运算,则结合性称为自左向右的;若是按自右向左的顺序进行运算,则结合性称为自右向左的。第52页,课件共85页,创作于2023年2月

表2-4列出了C语言的各种运算符、名称、优先级和结合性。第53页,课件共85页,创作于2023年2月

表达式描述数据的加工过程。在书写表达式时,不仅要正确理解所使用的每个运算符的功能,还要正确掌握运算符的优先级和结合性。第54页,课件共85页,创作于2023年2月

利用圆括号,可以像一般数学计算那样,可以任意地改变表达式的运算顺序。第55页,课件共85页,创作于2023年2月

表达式值的数据类型,因运算对象的不同而不同。归纳起来可分为整型、实型和逻辑型。第56页,课件共85页,创作于2023年2月

逻辑型数据是只有两个可能值的数据,这两个值是:真和假。在C语言中,“真”用数字1表示,“假”用数字0表示。因此,逻辑值也可以按整型数看待。第57页,课件共85页,创作于2023年2月

第58页,课件共85页,创作于2023年2月

第59页,课件共85页,创作于2023年2月

第60页,课件共85页,创作于2023年2月

第61页,课件共85页,创作于2023年2月

从构成表达式的运算符来看,可以把表达式分成以下几种。(1)算术表达式:由算术运算符连接数值型运算对象构成的表达式为算术表达式,计算的结果仍为数值型。第62页,课件共85页,创作于2023年2月

(2)关系表达式:由关系运算符连接表达式构成的表达式关系表达式,关系表达式的运算的结果为逻辑值。关系表达式的一般形式为:表达式1关系运算符表达式2第63页,课件共85页,创作于2023年2月

(3)逻辑表达式:由逻辑运算符连接表达式构成的表达式为逻辑表达式,逻辑表达式的运算结果为逻辑值。逻辑表达式的一般形式为:表达式1逻辑运算符表达式2

逻辑运算符表达式第64页,课件共85页,创作于2023年2月

(4)条件表达式:由条件运算符连接表达式构成的表达式,其一般形式为:表达式1?表达式2:表达式3第65页,课件共85页,创作于2023年2月

(5)赋值表达式:由赋值运算符或自反赋值运算符号“=”连接表达式构成的表达式称为赋值表达式。其一般形式为:变量赋值运算符表达式变量自反赋值运算符表达式第66页,课件共85页,创作于2023年2月

赋值表达式的运算功能是将赋值运算符右边表达式的值赋给赋值运算符左边的变量。第67页,课件共85页,创作于2023年2月

(6)逗号表达式:由逗号运算符连接表达式构成的表达式称为逗号表达式,其一般形式为:表达式1,表达式2,表达式3,…第68页,课件共85页,创作于2023年2月

2.6.3表达式中数据类型的转换

C语言规定了如下的数据类型的转换原则。第69页,课件共85页,创作于2023年2月

(1)数据类型自动转换原则表达式中参加运算的各个运算对象,先转换成其中数据长度最长的数据类型,然后再计算。计算结果的数据类型就是其中数据长度最长的那个数据的数据类型。第70页,课件共85页,创作于2023年2月

字符型数据参加运算时,要转换为整型(int)或长度更大的其他数据类型,这取决于与字符型数据一起参加的运算对象的数据类型。第71页,课件共85页,创作于2023年2月

图2-3所示的例子说明了上述的类型转换原则。其中有:charch;inti;floatf;doubled;第72页,课件共85页,创作于2023年2月

图2-3数据类型转换第73页,课件共85页,创作于2023年2月

(2)强制性数据类型转换在表达式中,可以根据需要,把其中任意一个数据的类型转换为另一个数据类型,称为数据类型的强制转换。强制数据类型转换的一般格式是:(数据类型)表达式第74页,课件共85页,创作于2023年2月

(3)运算结果存入变量时的数据类型自动转换如果表达式的运算结果的数据类型与要存入的变量类型不一致,则将运算结果的数据自动转换成要赋予的变量的数据类型。第75页,课件共85页,创作于2023年2月

关于数据类型转换有一点要注意,表达式计算过程中,数据类型的转换是暂时的,只是为了用于当前计算,原来类型的值并未改变或丢失。第76页,课件共85页,创作于2023年2月小结

本章讨论了C语言的基本数据类型,常量、变量及变量初始化,操作符和表达式等基本语法问题。通过本章的学习,要掌握以下问题。第77页,课件共85页,创作于2023年2月

1.基本数据类型

C语言有4种基本数据类型,它们是:整型 integer;

字符型

温馨提示

  • 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
  • 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
  • 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
  • 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
  • 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
  • 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
  • 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。

评论

0/150

提交评论