C语言程序设计多媒体整套课件完整版电子教案课件汇总(最新).ppt
《C语言程序设计多媒体整套课件完整版电子教案课件汇总(最新).ppt》由会员分享,可在线阅读,更多相关《C语言程序设计多媒体整套课件完整版电子教案课件汇总(最新).ppt(371页珍藏版)》请在得力文库 - 分享文档赚钱的网站上搜索。
1、第第2章章数据类型、运算符与表达式数据类型、运算符与表达式C C语言程序设计语言程序设计C语言程序设计第2章 数据类型、运算符与表达式2本章主要内容本章主要内容2.1 2.1 基本字符、标识符和关键字基本字符、标识符和关键字2.2 2.2 数据类型与变量数据类型与变量2.3 2.3 基本类型与数据表示基本类型与数据表示2.4 2.4 运算符与表达式运算符与表达式2.5 2.5 计算和类型计算和类型C语言程序设计第2章 数据类型、运算符与表达式32.1基本字符、标识符和关键字基本字符、标识符和关键字 2.1.1 基本字符 一个C程序就是C语言基本字符的一个符合规定形式的序列。C语言的基本字符包括
2、:(1)数字字符(0,1,2,3,4,5,6,7,8,9)。(2)大小写英文字母(az,AZ)。(3)其他一些可打印(可以显示)的字符(如各种标点符号、运算符号、括号等),包括:!%&*()_ -+=:;“,.?/|(4)还有一些特殊字符(如空格符、换行符、制表符等)。空格符、换行符、制表符等统称为空白字符。空白字符在程序中主要用于分隔其他成分。按规定,C 程序中大部分地方增加空白字符都不影响程序的意义。因此用户写程序时常利用这种性质,通过加入一些空白字符,把程序排成适当的格式,以增强程序的可读性。C语言程序设计第2章 数据类型、运算符与表达式4例如:例如:算术运算符:算术运算符:+-*/%+
3、-+-*/%+-关系运算符:关系运算符:=条件运算符条件运算符:?:和赋值运算符:和赋值运算符:=其他分隔符其他分隔符:().,;2.1基本字符、标识符和关键字基本字符、标识符和关键字C语言程序设计第2章 数据类型、运算符与表达式5 2.1.2 名字(标识符)的构成 一个标识符是字母、数字字符和下划线的一个连续序列,其中不能有空白字符,而且要求第一个字符必须是字母或下划线。如果一个字符序列中出现了非字母、数字、下划线的字符,那么它就不是一个标识符了。下面是一些非标识符的字符序列:+=3set a32$sin(2+5):ab4=C语言还规定,标识符中同一字母的大写形式和小写形式将看作不同字符,这
4、样,a和A不同,name、Name、NAME、naMe 和nMAE 是互不相同的标识符。下面是一些标识符的例子:abcd Beijing C_Programming_f2048 sia a3b06 xt386ex A_great_machine Small_talk_80 FORTRAN_90 以下划线开始的标识符保留给系统使用,用户不要使用这种标识符,以免与系统内部的名字冲突造成程序问题。2.1基本字符、标识符和关键字基本字符、标识符和关键字C语言程序设计第2章 数据类型、运算符与表达式6 2.1.3 关键字关键字 所谓关键字就是已被Turbo C 2.0本身使用,不能作其他用途使用的名字。
5、如关键字不能用做变量名、函数名等。Turbo C 2.0有以下关键字:(1)扩展的11个 asm _cs _ds _es _ss cdecl far near huge interrupt pascal (2)由ANSI标准定义的32个 auto double int struct break else long switch case enum register typedef char extern return union const float short unsigned continue for signed void default goto sizeof volatile do
6、 if while static2.1基本字符、标识符和关键字基本字符、标识符和关键字C语言程序设计第2章 数据类型、运算符与表达式72.2数据类型与变量数据类型与变量2.2.1 数据类型 字符型(char)整型(short,int,long,unsigned)基本类型 数值类型 单精度型(float)实型 双精度型(double)枚举类型(enum)数据类型 数组类型()构造类型 结构体类型(struct)共用体类型(union)指针类型(*)空类型(void)C语言程序设计第2章 数据类型、运算符与表达式8表2-1 ANSI标准中的数据类型及其范围类类型型长度(字节)长度(字节)范范围围c
7、har(字符型)(字符型)1ASC字符字符unsignedchar(无符号字符)(无符号字符)10255signedchar(有符号字符型)(有符号字符型)1-128127int(整型)(整型)2-3276832767unsignedint(无符号整型)(无符号整型)2065535signedint(有符号整型)(有符号整型)2同同intshort(短整型)(短整型)1-128127unsignedshortint(无符号短整型)(无符号短整型)10255signedshortint(有符号短整型)(有符号短整型)1同同shortintlongint(长整型)(长整型)4-2147483648
8、2147483649signedlongint(有符号长整型)(有符号长整型)4-21474836482147483649unsignedlongint(无符号长整型)(无符号长整型)404294967296float(单精度型)(单精度型)4提供提供7位有效数字位有效数字double(双精度型)(双精度型)8提供提供16位有效数字位有效数字double(长双精度型)(长双精度型)10提供提供19位有效数字位有效数字void(空值)(空值)0无值无值C语言程序设计第2章 数据类型、运算符与表达式9 说明:表中的长度和范围的取值是在假定CPU的字长为16 bit的情况下。注意:(1)程序中书写的
9、、执行中处理的每个基本数据都属于某个确定的数据类型。(2)类型确定了属于它的数据对象的许多性质,特别是确定了数据的表示范围。在具体的C语言系统中,每种类型都有确定的表示(编码)方式,这就确定了可能表示的数据范围。例如,一个整数类型中的所有整数只是数学中整数的一个子集,其中只包含有限个整数值,存在该类型能表示的最小和最大整数。其他整数在这个类型中没有容身之地,无法在此类型中表示。2.2数据类型与变量数据类型与变量C语言程序设计第2章 数据类型、运算符与表达式10 2.2.2 2.2.2 变量变量 1变量说明。所谓变量,就是在程序运行中其值可以变化的量,从赋值的角度讲,它在不同时期可以赋予不同的值
10、。Turbo C 2.0规定所有变量在使用前都必须首先说明。一条变量说明语句由数据类型和其后的一个或多个变量名组成。变量说明的形式如下:类型;此处类型是指Turbo C 2.0的有效数据类型。变量表是一个或多个标识符名,每个标识符之间用“,”分隔。例 2.1 int i,j,k;unsigned char c,str5,*p;float a,b;double x,y;2.2 数据类型与变量 C语言程序设计第2章 数据类型、运算符与表达式11 2变量的初始化。变量的初始化是指变量在被说明的同时赋给的一个初值。Turbo C 2.0中外部变量和静态全局变量在程序开始处被初始化,局部变量(包括静态局
11、部变量)是在进入定义它们的函数或复合语句时才作初始化。所有全局变量在没有明确的初始化时将被自动清零,而局部变量和寄存器变量在未赋值前其值是不确定的。对于外部变量和静态变量,初值必须是常数表达式,而自动变量和寄存器变量可以是任意的表达式,这个表达式可以包括常数和前面说明过的变量和函数。2.2 数据类型与变量 C语言程序设计第2章 数据类型、运算符与表达式12例例2.2floatf0,f1=0.2;/*定义全局变量定义全局变量,在初始化时在初始化时f0被清零被清零,f1被赋被赋0.2*/main()staticinti=10,j;/*定义静态局部变量定义静态局部变量,初始化时初始化时i被赋被赋10
12、,j不确定不确定*/intk=i*5;/*定义局部变量定义局部变量,初始化时初始化时k被赋被赋10*5=50*/charc=y;/*定义字符型变量并初始化定义字符型变量并初始化*/2.2 数据类型与变量 C语言程序设计第2章 数据类型、运算符与表达式13 3 3变量的赋值变量的赋值 变量赋值是给已说明的变量赋予一个特定值。变量赋值是给已说明的变量赋予一个特定值。(1 1)整型变量和浮点型变量)整型变量和浮点型变量 这两种变量采用下列格式赋值:这两种变量采用下列格式赋值:变量名变量名=表达式表达式;例例2.32.3 main()main()intint a,ma,m;/*;/*定义局部整型变量定
13、义局部整型变量a,ma,m*/*/float n;float n;/*/*定义局部浮点变量定义局部浮点变量f*/f*/a=100 a=100,m=20;m=20;/*/*给变量赋值给变量赋值*/n=a*m*0.1;n=a*m*0.1;说明:说明:Turbo C 2.0Turbo C 2.0中允许给多个变量赋同一值时用连等中允许给多个变量赋同一值时用连等的方式。的方式。2.2 数据类型与变量 C语言程序设计第2章 数据类型、运算符与表达式14(2 2)字符型变量)字符型变量 字符型变量可以用三种方法赋值。字符型变量可以用三种方法赋值。例例2.42.4 main()main()char a0,a1
14、,a2;/*char a0,a1,a2;/*定义局部字符型变量定义局部字符型变量a0,a1,a2*/a0,a1,a2*/a0=b;/*a0=b;/*将字母将字母b b赋给赋给a0*/a0*/a1=50;/*a1=50;/*将数字将数字2(2(十进制十进制ASCASC值为值为50)50)赋给赋给a1*/a1*/a2=x0d;a2=x0d;/*/*将回车符赋给将回车符赋给a2*/a2*/2.2 数据类型与变量 C语言程序设计第2章 数据类型、运算符与表达式15 2.3.1 2.3.1 整数类型和整数的表示整数类型和整数的表示 C C语言提供了多个整数类型以适应不同需要。不同整数类型语言提供了多个整
15、数类型以适应不同需要。不同整数类型间的差异在于它们可能具有不同的二进制编码位数,因此表示范间的差异在于它们可能具有不同的二进制编码位数,因此表示范围可能不同。程序中用得最多的是一般整数类型(简称为围可能不同。程序中用得最多的是一般整数类型(简称为“整数整数类型类型”或或“整型整型”)和长整数类型(简称为)和长整数类型(简称为“长整型长整型”)。整数)。整数类型的类型名是类型的类型名是intint;长整型的类型名为;长整型的类型名为long long intint,可简写为,可简写为longlong。intint 和和long long 都是关键字。都是关键字。1 1整数类型整数类型 整数(整数
16、(intint 类型的数据)有几种书写形式,程序中的整数一类型的数据)有几种书写形式,程序中的整数一般采用十进制写法。般采用十进制写法。(1 1)十进制数:用十进制方式写出的一个整数就是普通数字)十进制数:用十进制方式写出的一个整数就是普通数字字符组成的一个连续序列,其中不能有空格、换行或其他字符。字符组成的一个连续序列,其中不能有空格、换行或其他字符。C C 语言规定十进制表示的数字序列的第一个字符不是语言规定十进制表示的数字序列的第一个字符不是0 0,除非要,除非要写的整数本身就是写的整数本身就是0 0。2.3 基本类型与数据表示 C语言程序设计第2章 数据类型、运算符与表达式16 (2)
17、八进制数:用八进制形式写出的整数是由数字0 开始的连续数字序列,在序列中只允许0-7这8个数字。下面是用八进制写法写出的一些整数和长整数:0236 0527 06254 0531 0765432L (3)十六进制数:整数的十六进制形式是由0 x 或0X 开头的数字序列。由于数字只有10 个,而在十六进制写法中需要16 个数字,C语言采用计算机领域通行的方式,用字母a-f 或A-F 表示其余的6 个十六进制数字,其对应关系如下。字母:a/A b/B c/C d/D E/E f/F 数字:10 1 1 12 13 14 15 下面是用十六进制形式写出的一些整数和长整数:0 x2073 0 xA3B
18、5 0XABCD 0XFFFF 0XF0F00000L2.3 基本类型与数据表示 C语言程序设计第2章 数据类型、运算符与表达式17 2 2表示范围表示范围 C语言没有规定各种整数类型的表示范围,也就是说,没有规定各种整数的二进制编码长度。对于int 和long,只规定了long 类型的表示范围不小于int,但也允许它们的表示范围相同。具体C语言系统则会对整型和长整型规定明确的表示方式和表示范围。例如,早期微型机的一些C系统采用16位二进制表示的整数(一个int 占2个字节)和32位表示的长整数(一个long占4个字节)。这样,整型的表示范围就是-32 76832767,即-215215-1。
19、长整型表示范围是-2147483 6482147483 647,即-231231-1。在许多新的微机C语言系统中,整数和长整数都采用32 位的二进制数表示。C语言允许在整数的前面写正负号,加上负号的整数就表示负整数。2.3 基本类型与数据表示 C语言程序设计第2章 数据类型、运算符与表达式182.3.2实数类型和实数的表示实数类型和实数的表示1 1实数类型实数类型 C语言提供了三种表示实数的类型:单精度浮点数类型(简称浮点类型),类型名为float;双精度浮点数类型(简称双精度类型),类型名为double;长双精度类型,类型名为long double。这些类型的数据也分别称做“浮点数”、“双精
20、度数”和“长双精度数”。所有整数类型和实数类型统称为算术类型。(1)浮点类型的数用4个字节32 位二进制表示。这样表示的数大约有7 位十进制有效数字,数值的表示范围约为(3.410-383.41038)。2.3 基本类型与数据表示 C语言程序设计第2章 数据类型、运算符与表达式19(2)双精度类型的数用8个字节64 位二进制表示,这样表示的数大约有16 位十进制有效数字,数值的表示范围约为(1.710-308 1.710308)。(3)长双精度类型的数用10个字节80位二进制表示,这样表示的数大约有19位十进制有效数字,其数值的表示范围约为(1.210-4932L 1.2104932 L)。对
21、于浮点数也有类似情况。例如,在一些C 语言系统中,long double 采用与double 同样的表示方式。有关具体C 语言系统中浮点数表示的情况,也应查阅系统手册,还可以查阅名为float.h 的标准文件。2.3 基本类型与数据表示 C语言程序设计第2章 数据类型、运算符与表达式202 2实型常数表示实型常数表示C语言中最基本的实数类型是双精度类型。双精度数书写形式中的基本部分是一个数字序列,在序列中或者包含了一个表示小数点的圆点“.”(可以是第一个或最后一个字符),或者在表示数值的数字序列后面有一个指数部分。指数部分是以e 或E 开头的另一(可以包括正负号的)数字序列,指数以10为底,这
22、种形式称为科学记数法。也可以既有小数点,又有指数部分。下面是一些双精度数的例子:3.2 3.2E-3 2.45e17 0.038 105.4E-10 304.24E82.3 基本类型与数据表示 C语言程序设计第2章 数据类型、运算符与表达式21浮点数的写法与双精度数类似,只是在数最后应附后缀字符f 或者F。表示长双精度数的后缀用l 和L。下面是一些浮点数类型和长双精度类型数的例子:13.2F 1.7853E-2F 24.68700f .32F 0.337f。12.869L 3.417E34L .05L 5.E88L 1.L。负实数同样通过在数前加负号表示。说明:(1)实型常数只有一种进制(十进
23、制)。(2)所有实型常数都被默认为double。(3)绝对值小于1的实型数,其小数点前面的零可以省略。如0.22可写为.22,0.0015E-3可写为-.0015E-3。(4)Turbo C默认格式输出实型数时,最多只保留小数点后6位。2.3 基本类型与数据表示 C语言程序设计第2章 数据类型、运算符与表达式222.3.3 2.3.3 字符类型和字符的表示字符类型和字符的表示字符类型数据主要用于程序的输入输出。此外,文字处理也是计算机的一个重要应用领域,该应用领域的应用程序必须能使用和处理字符形式的数据。由于大部分程序都需要与用户打交道,需要接收用户的输入信息(如用户给程序发的命令,或者提供的
24、数据),还需要给用户输出信息,因此字符类型的数据在程序中的使用很广泛。1 1字符类型字符类型加上不同的修饰符,可以定义有符号和无符号两种类型的字符型变量。char a:/*a被定义为有符号字符变量*/unsigned char l;/*l被定义为无符号字符变量*/2.3 基本类型与数据表示 C语言程序设计第2章 数据类型、运算符与表达式23 字符在计算机中是以其ASC码方式表示的,其长度为1个字节,有符号字符型数的取值范围为-128-127,无符号字符型数的取值范围是0-255。因此在Turbo C语言中,字符型数据在操作时将按整型数处理,如果某个变量定义成char,则表明该变量是有符号的,即
25、它将转换成有符号的整型数。Turbo C中规定ASC码值大于0 x80的字符将被认为是负数。如ASC码值为0 x8c的字符,定义成char时,被转换成十六进制的整数0 xff8c。这是因为当ASC码值大于0 x80时,该字节的最高位为1,计算机会认为该数为负数,对于0 x8c表示的数实际上是-74(8c的各位取反再加1),而-74转换成两字节整型数并在计算机中表示时就是0 xff8c(对0074各位取反再加1)。因此只有定义为unsigned char 0 x8c,转换成整型数时才是8c。这一点在处理大于0 x80的ASC码字符时(如汉字码)要特别注意。一般汉字均定义为unsigned cha
- 配套讲稿:
如PPT文件的首页显示word图标,表示该PPT已包含配套word讲稿。双击word图标可打开word文档。
- 特殊限制:
部分文档作品中含有的国旗、国徽等图片,仅作为作品整体效果示例展示,禁止商用。设计者仅对作品中独创性部分享有著作权。
- 关 键 词:
- 语言程序设计 多媒体 整套 课件 完整版 电子 教案 汇总 最新
限制150内