C-语言程序设计-第二章-数据类型和表达式课件.ppt
- 【下载声明】
1. 本站全部试题类文档,若标题没写含答案,则无答案;标题注明含答案的文档,主观题也可能无答案。请谨慎下单,一旦售出,不予退换。
2. 本站全部PPT文档均不含视频和音频,PPT中出现的音频或视频标识(或文字)仅表示流程,实际无音频或视频文件。请谨慎下单,一旦售出,不予退换。
3. 本页资料《C-语言程序设计-第二章-数据类型和表达式课件.ppt》由用户(晟晟文业)主动上传,其收益全归该用户。163文库仅提供信息存储空间,仅对该用户上传内容的表现方式做保护处理,对上传内容本身不做任何修改或编辑。 若此文所含内容侵犯了您的版权或隐私,请立即通知163文库(点击联系客服),我们立即给予删除!
4. 请根据预览情况,自愿下载本文。本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。
5. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007及以上版本和PDF阅读器,压缩文件请下载最新的WinRAR软件解压。
- 配套讲稿:
如PPT文件的首页显示word图标,表示该PPT已包含配套word讲稿。双击word图标可打开word文档。
- 特殊限制:
部分文档作品中含有的国旗、国徽等图片,仅作为作品整体效果示例展示,禁止商用。设计者仅对作品中独创性部分享有著作权。
- 关 键 词:
- 语言程序设计 第二 数据类型 表达式 课件
- 资源描述:
-
1、第二章第二章 数据类型和表达式数据类型和表达式 第一节第一节 基本数据类型基本数据类型第二章一、常用的基本数据类型:一、常用的基本数据类型:在C+语言中基本数据类型有5种:1、整型、整型(int):2、浮点型浮点型(实型):float(单精度浮点型)double(双精度浮点型)3、字符型字符型(char)4、空值型空值型(void):常用于函数和指针。5、布尔型布尔型(bool):取值为真(true)和假(false)。为了满足各种情况的需求,除了void类型和bool类型外,在基本数据类型前面还可以加上下面的修饰第二章符来增加原来的含意:signed表示有符号 unsigned表示无符号 l
2、ong表示长型 short表示短型 这4种修饰符都适用于整型和字符型,只有Long还适用于双精度浮点型(long double)。二、二、C+语言的基本数据类型表语言的基本数据类型表 见教材表2-1。第二节第二节 常量和变量常量和变量第二章 一、常量:一、常量:常量:常量:是在程序中不被改变的量。常量有各种不同的数据类型,不同数据类型的常量是由其表示方法决定的。1 1、常量种类:、常量种类:(1)、整型常量整型常量:可以用十进制、八进制和十六进制 来表示,没有小数部分。八进制:以0为前缀,其后由07数字组成。十六进制:以0 x或0X为前缀,其后由09的数字和 AF(af)的字母组成。(2)、浮
3、点型常量浮点型常量:是由整数部分和小数部分组成 的,只有十进制来表示,有小数表示法(一般表示 形式)和科学表示法两种表示形式。第二章 科学表示法是在小数表示法后面加E(e),表示 指数。如:4.5e-2.3。(3)、字符常量字符常量:是用一对单引号括起一个字符来表 示的。如:A C+中的字符可用该字符的图形符号来表示,也 可用转义序列表示法即字符的ASCII码值来表示。转义序列表示法转义序列表示法:用符号开头,后面是字符的 ASCII码值,其中表示消除其后字符的原有含义。有两种形式:用字符的八进制 ddd,和用字符的 十六进制xhh。如:A表示为:101或 x41。实 际应用中,无图形符号的字
4、符常用转义序列表示法。应用中,无图形符号的字符常用转义序列表示法。(4)、字符串常量字符串常量:是用双引号括起来的字符序列。第二章又称串常量或字符串。注意注意:(a)、在一个字符串占多行时,每行最后用反斜线 表示续行符,说明下面一行的字符与上面是同一行 的。如:tabctxyz!mnptefg!(b)、由于双引号是字符串的定界符,因此在字符 串中再出现双引号时必须以“”表示。如:Please enter Y or N:这个字符串表示:Please enterYor N:第二章 字符串常量与字符常量的区别字符串常量与字符常量的区别:(a)、字符常量用单引号括起,而串常量用双引号括 起。(b)、一
5、个字符常量被存放在内存中,仅占1个字节,而串常量要占多个字节。(c)、字符常量与串常量所具有的操作功能也不相 同。例如,字符常量具有加法和减法运算,而字符 串常量不具有这种运算。(5)、布尔常量布尔常量:布尔常量的值只有true 和false 两种。(6)、符号常量符号常量:在程序中用以替代常量的标示符。如:pi用来替代。第二章2 2、定义常量的方法:、定义常量的方法:const const 类型类型常量名常量名=初值初值;例如:const double PI=3.1415;二、变量:二、变量:变量变量是在程序执行中其值可以改变的量。它具有三个基本要素:名字、类型、值名字、类型、值。1、变量的
6、名字:变量的名字:同标识符,即按标识符的规定来命名变量。2 2、变量的类型:、变量的类型:每种变量都应该具有一种类型,在定义或说明变第二章量时一定要指出其类型。变量类型包括数据类型和存储类两部分,而数据类型又包含基本数据类型(5种)和构造数据类型两种。3 3、变量的值:、变量的值:变量存在有两个两个有用的值:即变量所表示的数据值和变量的地址值。4 4、变量的定义格式:、变量的定义格式:任何一个变量在被引用之前必须定义,但在同一个程序块内,不可以定义同名变量,而在不同程序块内可以定义同名变量。定义变量的格式为:类型类型变量名表变量名表;第三节第三节 数数 组组 类类 型型第二章一、一、数组的定义
7、:数组的定义:1、概念:、概念:数组:数组:是数目固定、类型相同的若干个变量的有序集合。数组中的每个变量称为一个元素。数组是一种构造数据类型。2、数组定义的格式、数组定义的格式:2 例如:int a3;char b35;float c357;二、二、数组的赋值:数组的赋值:数组的赋值:数组的赋值:是给数组的各个元素赋值。是给数组的各个元素赋值。第二章1 1、数组元素的表示:、数组元素的表示:数组元素可用下标表示,也可用指针表示。数组元素的下标表示法数组元素的下标表示法:2 注意:注意:数组下标是从0开始,并且各个元素在内存中是按其下标的升序顺序连续存放的。例如:int a5;该数组 a是一个一
8、维数组,该数组的5个元素依次升序表示为a0,a1,a2,a3,a4。int b23;/二维数组 int c224;/三维数组第二章2 2、数组元素初始化数组元素初始化 数组元素的初始化:数组元素的初始化:是在定义数组时,使用初始值表给数组的各元素赋初值。初始值表:初始值表:由一对花括号()括起来的若干个数据项组成,数据项之间用逗号分隔。例如:(1)、int a 3=3,5,7;(2)、int b 2 3=1,2,3,4,5,6;或=1,2,3,4,5,6;规定数组元素的个数要大于或等于初始值表中数规定数组元素的个数要大于或等于初始值表中数据项的个数据项的个数,否则会出错。第二章3 3、数组元素
9、赋值数组元素赋值 给数组元素赋值使用赋值表达式。如果数组元素的值间存在某种关系,可以用循环语句给各元素赋值。例1:int m3 m0=5;m1=3;m2=1;例2.:int a10,for(int i=0;i10;i+)ai=i*2+1;第二章三、字符数组:三、字符数组:字符数组字符数组:是指数组元素是是指数组元素是charchar型的一种数组。型的一种数组。前面所讲的数组的定义和赋值同样适用于字符数组。除此之外还有一些特殊的规定。可用一个字符串常量进行初始化。例例1 1:char s14=a,b,c,d;一维字符数组s1含有4个元素,初始化后,s10为a,s11为b,s12为c,s13为d。
10、s1的4个元素分别是一个有效字符。例例2 2:char s25=a,b,c,d,0;一维字符数组s2,它有5个元素,经过初始化后,该数组的前4个元素分别为字符a至d,而最后一个元素s24为0,因此,s2数组是一个字符串,它存放着第二章字符串常量“abcd”。例2中语句同于:char s25=abcd例例3 3:char s35=abcde;初始化数组s3用上述语句是错误的,最后一位应是0。如果用字符串常量“abcde”初始化数组可以:char s3 =“abcde”;或:char s36=“abcde”;对于二维、三维数组可以用前面讲过的初始值表的方法,也可以用字符串常量的方法。例例4 4:c
11、har ss34=a,b,c,0,m,n,p,0,x,y,z,0;char ss34=abc,mnp,xyz;char ss 4=abc,mnp,xyz;第四节第四节 指针和引用指针和引用 第二章一、一、指针:指针:1 1、指针的概念:指针的概念:指针指针:是一种存放某个变量或对象的地址值的特殊变量,它的类型是它所存放的变量或对象的类型。所以,指针也具有一般变量的三个要素,只是类型和值与一般变量存在不同。例如:int a(5);int*p=&a;2、指针的定义指针的定义格式格式:*,*,;第二章几种常见的指针定义:几种常见的指针定义:int*pi;/pi 是一个指向 int 型变量的指针flo
12、at*pl;/pl 是一个指向 float 型变量的指针char*pc;/pc 是一个指向 char 型变量的指针int(*pa)3;/pa 是一个指向一维数组的指针int(*pf)();/pf 是一个指向函数的指针,该函数 的返回值为int 型数值 int*pp;/pp 是一个指向指针的指针,即二级 指针3、指针的赋值指针的赋值:指针可赋初值,也可赋值。给指针赋的值是一个类型相同、级别一致的地址值。第二章、一般变量、数组元素、结构成员等其地址值都表 示为变量名前加运算符&。例:int a,b10;变量a的地址&a,数组中b0元素的地址&b0,。、数组的地址值用该数组名来表示。例:int b1
13、0,*p=b b;表明p是一个指向数组b的指针,即指向b数组的首首元素元素b0。、函数的地址值可用该函数的名字来表示,即一个指向函数的指针可用它所指向的函数名字来赋值。第二章例:double sin(double x);double(*pf)();pf=sin;表明pf是一个指向函数sin的指针,这里用 sin 给 pf赋值,实际上是让pf指针指向 sin 函数在内存中的入口地址入口地址。4 4、指针的运算指针的运算:指针是一种特殊的变量,指针所允许的运算是很有限的,仅有下述4 4种种运算:(1 1)、赋值运算:)、赋值运算:可以将一个指针所指向的变量的地址值赋给它,还第二章 可将一个数组的地
14、址值或者一个函数在内存中的入 口地址值赋给所对应的指针。而对于一个暂时不用的指针,为了安全起见,可以 先将O 值赋给指针,使它变为空指针,还可将一个已被 赋值的指针赋给另外一个相同类型的指针。(2 2)、加减整型数的运算:)、加减整型数的运算:可以加上或减去一个整数值,包括加1或减1运算。(3 3)、在一定条件下,两个指针可以相减:)、在一定条件下,两个指针可以相减:例如,指向同一个数组的不同元素的两个指针可以相减,其差便是这两个指针之间相隔元素个数。(4 4)、在一定条件下,两个指针可以比较:)、在一定条件下,两个指针可以比较:第二章 例如,指向同一个数组元素的两个指针可以比较,当这两个指针
15、相等时,说明这两个指针是指向同一个数组元素的。二、指针和数组指针和数组:在C+中,数组的元素可以用下标表示,也可用指针表示。1 1、指针可以表示数组元素、指针可以表示数组元素(1 1)、)、一维数组:维数组:例如:int a5;下标表示:ai(i=0,1,2,3,4)指针表示:*(a a+i)(i=0,1,2,3,4)指针表示法中,a是数组名,C+中规定任何一个数组的名字是一个常量指针,该指针的值便是该数组第二章的首元素的地址值。在一维数组中,数组名就是首元素地址。例中,a 与&a0是一样的。(2 2)、二维数组:)、二维数组:例如:例如:int b25;下标方法:bij (i=0,1;j=0
16、,1,2,3,4)指针方法:、一维数组的一维数组*(*(b+i)+j)、下标与指针混合:*(bi+j)/行数组用下标,列数组用指针 (*(b+i)j /行数组用指针,列数组用下标(3 3)三维数组:)三维数组:第二章 2、指针可作为函数参数及返回值指针可作为函数参数及返回值例:分析下列程序的输出结果。#include void main()static int a5=5,4,3,2,1;int i,j;i=a0+a4;j=*(a+2)+*(a+4);coutiendlj;输出结果:6 4第二章3、指向数组的指针和指针数组指向数组的指针和指针数组:(1 1)、)、指向数组的指针指向数组的指针:指
展开阅读全文