第3章基本数据类型与数据运算.ppt_第1页
第3章基本数据类型与数据运算.ppt_第2页
第3章基本数据类型与数据运算.ppt_第3页
第3章基本数据类型与数据运算.ppt_第4页
第3章基本数据类型与数据运算.ppt_第5页
已阅读5页,还剩56页未读 继续免费阅读

下载本文档

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

文档简介

1、学习目标 理解C语言标识符的概念并能灵活运用,理解并掌握基本数据类型及其相互转换,掌握常量与变量的概念并能灵活运用,重点掌握各种运算符及表达式的使用方法。,第3章 基本数据类型与数据运算,学习内容,3.1 基本标识符,3.1.1保留关键字 在C语言中有一些标识符被称为保留关键字(共32个),系统已经预先定义了它们的具体含义,它们具有特殊的用途,不允许用户再作它用。 1.标识数据类型 float,int,long,short,char,double等。 2.标识流程控制 break,continue,else,for等。 3.标识存储类型 auto,static等。 4.标识运算符 sizeof

2、,1.编译预处理命令define,include,ifdef等。 2.标准库函数名fabs,sqrt,pow,printf等。 3.1.3用户自定义标识符 命名规则:(1)以字母或下划线开头,且后跟字母、数字、下划线的组合。 (2)变量名不能包含除“_”(下划线)以外的任何特殊字符,如:%、#、逗号、空格等。 (3)变量名不能包含空白字符(换行符、空格和制表符称为空白字符)。 (4)要区分字母的大小写。如SUN、SUn、Sun、sun等都是不同的标识符。,3.1.2 预定义标识符,【注意】(1)通常变量名、函数名用小写,而符号常量名用大写。 (2)不要使用系统关键字、预定义标识符作为用户自定义

3、的标识符。 (3)定义标识符时应该做到“见名知意”,以增加程序的可读性。 (4)ANSI C和C+标准都没有限定标识符的长度,但各个C和C+编译系统都有自己的规定。为保证程序的可移植性,建议标识符的命名不要超过8个字符。,3.2 数据类型,表3.1 ANSI C标准中的数据类型,【注意】(1)在字长大于16位的系统中,short int与signed char可能不等,不能缩写。 (2)因字符型、整数的缺省定义是有符号数,所以singed可省略,但也可以使用。 (3)C编译程序允许使用整型的简写形式,即所有的int均可缺省。 (4)某些实现允许将unsigned用于浮点型,如unsigned

4、double,但该用法降低了程序的可移植性,建议不要采用。,3.3.1常量 常量是指那些在程序执行过程中其值保持不变的量。常量不需要类型说明就可以直接使用,常量的类型是由常量本身隐含决定的。常量通常用于定义具有如下特点的数据:在程序中保持不变,在程序内部频繁使用,需要用比较简单的方式替代某些值等。语言的常量按其表现形式可以分为直接常量和符号常量两种。,3.3 常量与变量,3.3.1.1直接常量 直接常量就是用数字直接表示的常量,在程序中可以直接使用,具体可分为以下几种基本类型。 1.整型常量 整型常量即整型常数,它可以用十进制、八进制、十六进制三种形式进行表示。凡以数字0开头,由07组成的序列

5、均作为八进制数处理;凡以0 x(或0X)开头的数字、字符af(或AF)组成的序列均作为十六进制数处理;其它情况下的数字序列均作为十进制数处理。,【说明】(1)整型常数在不加特别说明时总是正值。如果需要的是负值,则负号-必须置于常数表达式的前面。 (2)每个常数都要根据其值的需要给出一种数据类型。当整型常数应用于某一表达式时(或出现有负号),常数类型自动进行相应的转换。十进制常数可等价于带符号的整型(或长整型),这取决于所需的常数的尺寸。 (3)八进制和十六进制常数可对应整型、无符号整型、长整型、无符号长整型,具体类型也取决于常数的大小,但必须注意取值范围。,2.实型常量 实型常量又称浮点常量,

6、是一个用十进制表示的符号实数,只有十进制一种表示方式(但可进一步分为十进制小数和十进制指数两种形式)。符号实数的值包括整数部分、尾数部分和指数部分。 格式: n1.n2E|e+|-n3 其中n1,n2,n3分别是一位或多位十进制数字(从09),E(或e)是数符号,小数点之前是整数部分,小数点之后是尾数部分,它们是可省略的,小数点在没有尾数时可以省略,指数部分用E或e开头,幂指数可以为负,当没有符号时视为正,指数的基数为10,【说明】(1)默认情况下,实型常量为正值,如果要表示负值,需要在常量前使用负号。 (2)在实型常量中不得出现任何空白符号。 (3)所有的实型常量均视为双精度类型。 (4)实

7、型常量的整数部分为0时可以省略。 (5)注意字母E(或e)的前后都必须有数字,且E(或e)后面的指数必须为整数。 如e8,2.3e,3.5,e,.e8等都是不合法的指数形式。,3.字符常量 字符常量是指用一对单引号括起来的一个字符。如 a , 9 , ! 。字符常量中的单引号仅起定界作用,并不表示字符本身。单引号括起来的字符不能是单引号()和反斜杠(),它们特有的表示方法在转义字符中介绍。在C语言中,字符是按其所对应的ASCII码值来存储的,一个字符占一个字节,详细对应关系见附录A。 【注意】(1)注意字符数字(09)和数字(09)的含义和在计算机中的存储方式是截然不同的,前者是字符常量,存储

8、的是相应的ASCII值;后者是整型常量,存储的是相应的二进制数。 (2)由于C语言中字符常量是按短整数(short型)存储的,所以字符常量可以像整数一样在程序中参与相关的运算。,4 字符串常量 字符串常量是指用一对双引号括起来的一串字符。双引号仅起定界作用,双引号括起来的字符串中不能含双引号()和反斜杠(),它们特有的表示法在转义字符中介绍。如China,C program,YES (8) (sinx)3.6 = pow(sin(x),3.6); (x为弧度) 【例3.26】理解下列为变量进行初始化的例子。 (1)int i=369,k=800; /*定义整型变量 i、k,并赋初值*/ (2)

9、char b=A,c=66; /*定义字符型变量 b、c,并赋初值*/ (3)double f1=68.689; /*定义双精度浮点型变量 f1,并赋初值*/ (4)static int size=8; /*定义静态变量size,并赋初值*/ (5)int m=k/size; /*定义整型变量m,并用一表达式给它赋初值,此时的k,size必须已有值*/ (6)int a1=606,a2=606,a3=606; /*定义整型变量 a1、a2、a3,并赋相同初值*/,【例3.27】理解下列复合赋值运算符使用的例子。 设变量定义如下:int k1=10,k2=10,k3=10,k4=10,k5=10

10、,k6=10,k7=10; 则: (1)k1+=k2运算后,k1的值为20,k2的值不变,表达式值为20 (2)k1-=k2运算后,k1的值为0,k2的值不变,表达式值为0 (3)k1*k2运算后,k1的值为100,k2的值不变,表达式值为100 (4)k1/=k2运算后,k1的值为1,k2的值不变,表达式值为1 (5)k4+=k5-=k6*=k7/=2运算后,k4、k5、k6、k7的值依次为-30、-40、50、5,【例3.28】理解下列算术、关系、逻辑、赋值等运算符混合使用的例子。 #include void main() int a,b,c,d; a=1188!(8866-!99); c=1122%3 输出结果:a=1,b=1,c=1,d=0,【例3.29】理解转义字符使用的例子。 #include void main() char x,y,z,s; x=p;y=m;z=n; s=376; /*八进制376代表的字符是“”*/ printf(%c%c%c%cn, x,y,z,s); printf(%ct%ct%ct%cn, x,y,z,s); printf(%cn%cn%cn%cn, x,y,z,s); ,结果: pmn p m n p m n ,【例3.30】理解下列算术运算符的优先级和结合性的

温馨提示

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

评论

0/150

提交评论