第2章语言的基本数据类型精.ppt
《第2章语言的基本数据类型精.ppt》由会员分享,可在线阅读,更多相关《第2章语言的基本数据类型精.ppt(67页珍藏版)》请在淘文阁 - 分享文档赚钱的网站上搜索。
1、第2章语言的基本数据类型第1页,本讲稿共67页 C语言数据类型语言数据类型 常量与变量常量与变量 整型数据整型数据 实型数据实型数据 字符型数据字符型数据 各类数值类型间的混合运算各类数值类型间的混合运算第2页,本讲稿共67页2.1 C语言数据类型语言数据类型 著名计算机科学家Nikiklaus Wirth曾经提出了一个非常著名的公式:数据结构+算法=程序。可见在一个程序中必须存在以下两点:(1)数据结构:是指程序中对数据的具体描述及数据的组织形式,它包括数据的类型和数据的组织形式。不同的计算机语言所允许定义和使用的数据结构是不同的,比如在C语言中提供的“结构体”数据结构,而在FORTRAN语
2、言中就不支持这种数据结构。W第3页,本讲稿共67页 (2)算法:是指程序中具体的操作步骤,它处理的对象是数据,而数据是以某种特定的形式存在(如整数、实数、字符数等)于程序中,因而算法处理的对象实际上是各种不同的数据类型。可以说算法是程序的灵魂,数据结构是程序的加工对象,在处理同一类问题时,如果数据结构不同,算法也不同。因而在考虑算法时,必须注意合理地选择数据结构。通常在处理复杂问题时,应当综合考虑数据结构和算法,选择最优的数据结构及算法。第4页,本讲稿共67页 在C语言中,数据结构通常是以数据类型的形式出现的,具体数据类型如图2.1.1所示。图2.1.1 C语言中的数据类型第5页,本讲稿共67
3、页2.2 常量与变量常量与变量 常量和变量是C语言中的两种重要的数据组织形式。顾名思义,常量就是其值不能被改变的量;变量就是其值可以被任意改变的量。在C语言中,各类数据是计算机处理的主要对象,这些数据在计算机处理的过程中,就是以常量和变量的形式表达和存储的。第6页,本讲稿共67页2.2.1 常量和符号常量常量和符号常量 在C语言中,把在程序运行过程中其值保持恒定不变的数据称为常量。根据类型的不同可以将常量分为以下4种:(1)整型常量:是以整数形式存在的常量,如21,0,-21等。(2)实型常量:是以浮点形式存在的常量,如2.6,-3.7等。(3)字符常量:是以字符形式存在的常量,如a,f,x等
4、。(4)字符串常量:是以字符串形式存在的常量,如student,for,int等。第7页,本讲稿共67页 常量不仅可以直接表示,也可以用一个标识符来代替,这种用标识符代表的常量称为符号常量,该标识符其实就是常量的别名。符号常量的一般格式如下:#define 标识符 字符串第8页,本讲稿共67页例2.1 编写一个求圆面积的程序,要求输入圆的半径,输出圆面积。程序#include#define PI 3.14main()float rad,area;printf(Input the radius of the round:n);scanf(%fn,&rad);area=PI*rad*rad;pri
5、ntf(The area of the round is);printf(%fn,area);第9页,本讲稿共67页输入Input the radius of the round:12.54输出The area of the round is 493.770020#define表示宏定义命令,一般情况下符号常量名用大写,变量名用小写,以示区别,在程序中使用符号常量,具有以下优点:(1)含义清楚。在定义符号常量时,可以按“见名知意”的原则为符号常量命名,这样在检查程序时可以很方便地分清常量的含义。比如可以用PI代表圆周率,用area表示面积等。第10页,本讲稿共67页 (2)修改方便。如果需要修
6、改常量值时,只须在符号常量定义的位置修改即可,这样其值在整个程序中都将发生改变。在C语言中,系统提供了一个测试某一种类型数据所占存储空间长度的运算符“sizeof”,其格式如下:sizeof(类型表示符)例如:利用运算符sizeof求整型int所占的内存空间。sizeof(int);第11页,本讲稿共67页2.2.2 变量变量 变量就是在程序的运行过程中,其值可以根据需要经常更新的数据。变量可分为整型变量、实型变量、字符变量等。每个变量都必须具备4个基本要素,即变量名、变量值、变量对应的内存空间和变量的数据类型。第12页,本讲稿共67页1变量名为了区分不同的变量,每个变量必须具有自己的名称,在
7、对变量命名时应该遵循以下3点:(1)变量名只能由字母、数字和下画线3种字符组成。(2)数字不能作为第1个字符。(3)英文大写字母和小写字母是不同的字符。下面是合法的标识符和变量名:num,day,mouth,year,max12,Student,_round等。下面的则是不合法的标识符和变量名:M.D.jack,¥1982,#86,sohu,ab,deng-lei等。第13页,本讲稿共67页 注意:在C语言中,英文大写字母和小写字母被认为是两个不同的字符,如num和NUM就是两个不同的变量名。一般情况下,变量名用小写字母表示,而符号常量名用大写字母表示。第14页,本讲稿共67页 2变量的定义
8、常量在使用前可以不用定义,但是变量在使用前必须先定义。定义变量的实质就是在内存中为变量分配一定大小的空间。定义变量的一般形式如下:例如:int num1,num2;/*定义整型变量num1,num2*/float f1,f2;/*定义浮点型变量f1,f2*/char c1,c2;/*定义字符型变量c1,c2*/第15页,本讲稿共67页 3变量的用法 为变量赋值的过程称为变量的初始化。一般情况下,变量初始化的方法有以下3种:(1)定义变量的同时为其赋值。例如:int num=5;(2)定义变量后再为其赋值。例如:float pi;pi=3.14;/*此处“=”表示赋值运算符*/(3)同时定义多个
9、变量并分别为它们赋值。例如:int num1=12;num2=14;num3=16;第16页,本讲稿共67页2.3 整型数据整型数据 在C语言中,用于表达和处理整数的数据称为整型数据。整型数据有整型常量和整型变量之分。2.3.1 整型常量整型常量 整型常量即整常量,在C语言中,整型常量可用以下3种形式表示:(1)十进制整数:如1982,-86,0等。(2)八进制整数:通常把以数字0开头的数称为八进制数,如0154,-0123等。其中,(0154)8=182+581+480=(108)10(-0123)8=-(182+281+380)=(-83)10第17页,本讲稿共67页 (3)十六进制整数:
10、通常把以数字0 x开头的数称为十六进制数,如0 x154,-0 x123等。其中,(0 x154)16=1162+5161+4160=(340)10(-0 x123)16=-(1162+2161+3160)=(-291)10第18页,本讲稿共67页例2.2 整型常量3种形式的应用。程序#includemain()int num1,num2,num3;num1=125;num2=0125;num3=0 x125;第19页,本讲稿共67页printf(The algorism numbers are);printf(%d,%d,%dn,num1,num2,num3);/*以十进制形式输出*/pri
11、ntf(The octavo numbers are);printf(%o,%o,%on,num1,num2,num3);/*以八进制形式输出*/printf(The hex numbers are);printf(%x,%x,%xn,num1,num2,num3);/*以十六进制形式输出*/第20页,本讲稿共67页输出The algorism numbers are 125,85,293The octavo numbers are 175,125,445The hex numbers are 7d,55,125分析“%d”,“%o”,“%x”为格式转换控制符,分别用于输出十进制、八进制、十六
12、进制整数。第21页,本讲稿共67页2.3.2 整型变量及分类整型变量及分类 整型变量是用来存储整型数据的,数据在计算机内部是以二进制形式存放的,根据数据的表示范围可以将整型变量分为3种。1有符号与无符号基本整型变量 有符号基本整型变量一般是以signed int表示的,或直接表示为int,通常用到的都是有符号基本整型变量;无符号基本整型变量一般是以unsigned int表示的,或表示为unsigned,使用无符号整型变量是为了充分利用变量的表示范围,节约内存。无符号整型变量只能存放不带符号的整数,如123,456等,而不能存放负数,如-123,-456等。第22页,本讲稿共67页 2有符号与
13、无符号长整型变量 有符号长整型变量一般以signed long int表示,或直接用long表示;无符号长整型变量一般以unsigned long int表示,或直接用unsigned long表示。3有符号与无符号短整型变量 有符号短整型变量一般以signed short int表示,或直接用short表示;无符号长整型变量一般以unsigned short int表示,或直接用unsigned short表示。ANSI标准定义了整数数据的字节长度和数的取值范围,如表2.1所示。其中,表中“”内的部分表示可以省略,不影响变量在内存中数的取值范围,如signed long int与long是等
14、价的。第23页,本讲稿共67页数据类型字节长度数的取值范围signed int2-32 76832 767即-215(215-1)unsigned int2065 535即0(216-1)signed long int4-2 147 483 6482 147 483 647即-231(231-1)unsigned long int404 294 967 295即0(232-1)signed short int2-32 76832767即-215(215-1)unsigned short int2065 535即0(216-1)表2.1 整型数据的字节长度和数的取值范围第24页,本讲稿共67页例
15、2.3 整型数据溢出的应用。程序#includemain()int num1=32767,num2;num2=num1+1;printf(%d,%dn,num1,num2);输出32767,-32768第25页,本讲稿共67页 分析 有符号基本整型变量int的范围是-32 76832 767即215(215-1),在上例中num1=32 767,由于计算机只识别二进制数,因而将num1转换成二进制数。当num1+1后,其结果超出了有符号基本整型变量的范围,此情况称为数据溢出,当达到最大值后,就又从最小值开始计数,因而当32 767加1后得不到32 768,而得到有符号基本整型变量取值的最小值-
16、32 768,如图2.3.1所示。第26页,本讲稿共67页num1:32 7670111111111111111num2:-32 7681000000000000000图2.3.1 整型数据溢出第27页,本讲稿共67页2.4 实型数据实型数据 在C语言中,用于表达和处理实数的数据称为实型数据。实型数据有实型常量和实型变量之分。2.4.1 实型常量实型常量 实型常量即实数,在C语言中又称为浮点数,实型常量可用以下两种形式表示:(1)普通形式:一般用小数表示,书写时小数点不能省略。如3.14,.15,5.,0.0等,其中,0.0,0.和.0是等价的。第28页,本讲稿共67页 (2)指数形式:即科学
17、计数法,在C语言中,指数的表示主要靠字母“e”或“E”来实现,e或E跟一个整数表示以10为底数的幂。如3.14e-2表示3.1410-2即0.0314,5.14E3表示5.14103即5140。值得注意的是C语言中规定字母“e”或“E”的前后都必须有数字,并且后面的数字必须为整数,如e5,e.,3.14e2.5等都是不合法的指数形式。第29页,本讲稿共67页例2.4 实型常量的应用。程序#includemain()float x,y;x=3.14e4;y=3.14E-4;printf(x=%fn,x);printf(y=%fn,y);输出x=31400.000000y=0.000314第30页
- 配套讲稿:
如PPT文件的首页显示word图标,表示该PPT已包含配套word讲稿。双击word图标可打开word文档。
- 特殊限制:
部分文档作品中含有的国旗、国徽等图片,仅作为作品整体效果示例展示,禁止商用。设计者仅对作品中独创性部分享有著作权。
- 关 键 词:
- 语言 基本 数据类型
限制150内