c语言程序设计 第2章_基本语句.ppt
《c语言程序设计 第2章_基本语句.ppt》由会员分享,可在线阅读,更多相关《c语言程序设计 第2章_基本语句.ppt(153页珍藏版)》请在淘文阁 - 分享文档赚钱的网站上搜索。
1、C语言程序设计教程语言程序设计教程(第(第2版)版)第第2 2章章 基本的程序语句基本的程序语句本章主要内容本章主要内容1.用二进制表示的数2.基本数据类型及取值范围3.标识符、变量和常量4.基本运算符、表达式及运算的优先级5.标准输入/输出函数简介6.程序范例第2章 引言 一、整型数的二进制表示整型数分为有符号的和无符号的两种;有符号的整型数的正负号由字节的最高位来表示:0表示正数,1表示负数。整型数占用的字节数可为8位、16位或者32位。整型数的取值范围:2.1 用二进制表示的数字节数有符号的无符号的最小值最大值最小值最大值1128+1270255232768+32767065535421
2、47483648+214748364704294967295 二、浮点数的二进制表示浮点数分成单精度浮点数和双精度浮点数;单精度浮点数占32位(4个字节),双精度浮点数占64位(8个字节)。浮点型数据的一般表达式:(1)S2em e是实际的阶码值,代表浮点数的取值范围;m是尾数,代表浮点数的精度。2.1 用二进制表示的数(1)单精度浮点型数据的字节分配空间:2.1 用二进制表示的数S代表符号位,占1位。E称为“移码”,占8位。E的取值范围为0255,E=127+e 因此,e的取值范围为127+128);M代表有效位数或称为“小数”,m2=(1.M)2(2)双精度浮点型数据的字节分配空间:2.1
3、 用二进制表示的数S代表符号位,占1位。E称为“移码”,占11位。E的取值范围为02047,E=1023+e 因此,e的取值范围为1023+1024);M代表有效位数或称为“小数”,m2=(1.M)2浮点型数据的取值范围:2.1 用二进制表示的数数据类型字节数(位数)阶码(e)取值范围最小值最大值单精度浮点数4字节(32位)1271285.87747210393.4028241038双精度浮点数8字节(64位)102310241.112537103081.79769310308程序离不开数据,数据是程序的处理对象。程序离不开数据,数据是程序的处理对象。C语言语言中可以使用的数据类型包括:中可以
4、使用的数据类型包括:基本类型、构造类型、指针类型、空值类型基本类型、构造类型、指针类型、空值类型四大类。四大类。1.C语言提供5种基本数据类型。(1)字符型:用char表示。(2)整数型:用int表示。(3)单精度实数型:用float表示。(4)双精度实数型:用double表示。(5)空类型:用void表示。2.2 基本数据类型及取值范围基本数据类型及取值范围基本数据类型构造数据类型指针类型(*)空类型(void)数值类型字符类型(char)枚举类型(enum)整整 型型实型(浮点型)实型(浮点型)单精度型(float)双精度型(double)短整型(短整型(short)长整型(long)整型
5、(int)数组结构体(结构体(struct)共用体(共用体(union)C C数据类型:数据类型:(其它教材一般采用以上分类)数据类型决定了数据的大小、数据可执行的操作以及数据的取值范围。具体如下:2.2 基本数据类型及取值范围基本数据类型及取值范围 实实 现现 环环境境数据类型数据类型字字 节节 长长 度度TurboTurboC CBorlanBorlandC+dC+VisualVisualC+C+DevC+DevC+GCCGCCcharchar(字符型)(字符型)1 11 11 11 11 1shortshortintint(短整型)(短整型)2 22 22 22 22 2intint(整
6、型)(整型)2 22 24 44 44 4longlongintint(长整型)(长整型)4 44 44 44 44 4floatfloat(单精度浮点型)(单精度浮点型)4 44 44 44 44 4doubledouble(双双精精度度浮浮点点型)型)8 88 88 88 88 8 一、标识符一、标识符一、标识符一、标识符 标识符是对变量名、函数名、标号和其他各种用户定义的对象命名。建标识符是对变量名、函数名、标号和其他各种用户定义的对象命名。建议取有实际意义的标识符来命名。议取有实际意义的标识符来命名。标识符的第标识符的第1 1个字符必须是字母或下划线,标识符的长度可以是一个或多个字符必
7、须是字母或下划线,标识符的长度可以是一个或多个字符,最长不允许超过个字符,最长不允许超过3232个字符。例如:个字符。例如:scorescore、number12number12、student_namestudent_name等均为正确的标识符;等均为正确的标识符;8times 8times、price/teaprice/tea、low!valumelow!valume等均不为正确的标识符。等均不为正确的标识符。注意:注意:(1)(1)标识符区分大小写,标识符区分大小写,scorescore、ScoreScore、SCORESCORE代表三个不同的标识符。代表三个不同的标识符。(2)(2)标
8、识符不能和标识符不能和C C语言的关键字相同语言的关键字相同 (3)(3)标识符不能和用户自定义的函数或标识符不能和用户自定义的函数或C C语言库函数同名语言库函数同名 2.3 标识符、变量和常量C C语言中的数据按其特性可分为常量与变量两大类。语言中的数据按其特性可分为常量与变量两大类。语言中的数据按其特性可分为常量与变量两大类。语言中的数据按其特性可分为常量与变量两大类。常量是指在程序运行过程中,其值不能被改变的量。与数据常量是指在程序运行过程中,其值不能被改变的量。与数据常量是指在程序运行过程中,其值不能被改变的量。与数据常量是指在程序运行过程中,其值不能被改变的量。与数据类型结合起来分
9、类,可分为整型常量、浮点型常量、字符常类型结合起来分类,可分为整型常量、浮点型常量、字符常类型结合起来分类,可分为整型常量、浮点型常量、字符常类型结合起来分类,可分为整型常量、浮点型常量、字符常量、枚举常量等。量、枚举常量等。量、枚举常量等。量、枚举常量等。变量是指在程序运行过程中,其值可改变的量。同样的,变量是指在程序运行过程中,其值可改变的量。同样的,变量是指在程序运行过程中,其值可改变的量。同样的,变量是指在程序运行过程中,其值可改变的量。同样的,变量也可分为整型变量、浮点型变量、字符变量、枚举变量变量也可分为整型变量、浮点型变量、字符变量、枚举变量变量也可分为整型变量、浮点型变量、字符
10、变量、枚举变量变量也可分为整型变量、浮点型变量、字符变量、枚举变量等。等。等。等。*常量是可以不经说明而直接引用的,而变量则必须常量是可以不经说明而直接引用的,而变量则必须常量是可以不经说明而直接引用的,而变量则必须常量是可以不经说明而直接引用的,而变量则必须先定义后引用。先定义后引用。先定义后引用。先定义后引用。2.3 标识符、变量和常量 一、常量一、常量常量有两种常量有两种常量有两种常量有两种:直接常量和符号常量。直接常量和符号常量。直接常量和符号常量。直接常量和符号常量。1 1、直接常量(字面常量)、直接常量(字面常量)、直接常量(字面常量)、直接常量(字面常量)直接常量分为发下几种:直
11、接常量分为发下几种:直接常量分为发下几种:直接常量分为发下几种:(1 1)整型常量:)整型常量:)整型常量:)整型常量:1212、0 0、-35-35等等等等(2 2)实型常量(浮点型):)实型常量(浮点型):)实型常量(浮点型):)实型常量(浮点型):45.6345.63、.25.25、8.08.0、8.8.等等等等(3 3)字符常量:)字符常量:)字符常量:)字符常量:aa、bb等。等。等。等。2.3 标识符、变量和常量 (1)整型常量 可采用十进制、八进制、十六进制来表示整型常量。八进制数的前面用数字0开头,十六进制数前面用数字0和字母X开头(0 x或0X)2.3 标识符、变量和常量(2
12、)实型常量实型常量的两种表示法:在在C语言中有两种表示形式:十语言中有两种表示形式:十进制小数形式和指数形式。进制小数形式和指数形式。例如:231.467.36E74.58E50.0945对太大或太小的数,通常是采用指数形式指数形式。如上面的7.36E7、4.58E5。2.3 标识符、变量和常量C程序中实数有两种表示形式:1、十进制小数形式、十进制小数形式.该形式由数码该形式由数码09和小数和小数点组成,即为数学中的小数。点组成,即为数学中的小数。如如123.45、-.123、0.0、.25、32.等。等。2、十进制指数形式、十进制指数形式.该形式由十进制数加阶码该形式由十进制数加阶码标志标志
13、“E”或或“e“及阶码(只能为整数,及阶码(只能为整数,可以带符号)组成。可以带符号)组成。如如123e-3(或或123E-3)(即即12310-3),12.35E3(即即12.35103)。错例:错例:e3、2.1e3.5、.e3等。等。规范化指数形式:小数部分小数点左边规范化指数形式:小数部分小数点左边有且仅有一位非零数字。有且仅有一位非零数字。如如1.2345e5。例4:了解实型常量的两种表示法。/*example2_4.c (浮点计数法,科学计数法)*/#includemain()printf(“123.4456的浮点数表示:%6fn,123.456);printf(“1.23456E
14、2的浮点数表示:%6fn,1.23456e2);printf(“12345.6E-2的浮点数表示:%6fn,12345.6e-2);printf(“12345.6的科学计数法表示:%En,12345.6);2.3 标识符、变量和常量(3)字符常量 字符常量是由一对单引号括起来的单个字符。如:A、S、9、$等均为字符常量。注注1 1:单引号只起定界作用,并不代表字符。注注2 2:单引号()和反斜杠()本身作为字符时要通过转义字符()。如:和 分别代表单个字符单引号()和反斜杠()。2.3 标识符、变量和常量字符型常量的特点:字符常量只能用单引号括起来字符常量只能用单引号括起来,不能用双引不能用双
15、引号或其它字符括起来号或其它字符括起来字符常量只能是单个字符字符常量只能是单个字符,不能是字符串。不能是字符串。单引号内的字符可以为字符集中的任意字单引号内的字符可以为字符集中的任意字符符.在C语言中,字符是按其所对应的ASCII的值来存储的,一个字符占一个字节。部分字符所对应ASCII码值如下:2.3 标识符、变量和常量字符字符0 01 19 9A AB BY YZ Za ab by yz zASCII码值(十进制)484957656689909798121 122字符和与之对应的ASCII详见附录 注意:注意:数字3和字符3的区别:2.3 标识符、变量和常量含义含义表达式表达式值值字节数字
16、节数常量33占2个字节字符351占1个字节字符也可以参与运算:字符也可以参与运算:如:如:A+6;运算结果为71,对应的字符为H。87;运算结果为49,对应的字符为1。y32;运算结果为89,对应的字符为Y。例5:了解字符常量与其顺序值的关系。/*example2_5.c 字符常量与其顺序值的关系*/#includemain()printf(%d-%cn,A,A);printf(%d-%cn,A+5,A+5);printf(%d-%cn,A+70,A+70);2.3 标识符、变量和常量程序运行结果:65-A70-F135-?3 一种特殊的字符常量转义字符转义字符用反斜杠后面跟一个字符或一个八进
17、制或十六进制数表示。如:a,0,n等。代表ASCII字符中不可打印的控制字符和特定功能的字符。表示特殊字符,如:单引号()、双引号()和反斜杠()等。常用的转义字符见表2-12。2.3 标识符、变量和常量注意 转义字符中的字母只能是小写字母,每个转义字符只能看作一个字符。表2-12中的r、v和f对屏幕输出不起作用,但会在控制打印机输出执行时响应其操作。在程序中,使用不可打印字符时,通常用转义字符表示。2.3 标识符、变量和常量常用的转义字符及其含义常用的转义字符及其含义转义字符转义字符转义字符转义字符转义字符的意义转义字符的意义转义字符的意义转义字符的意义ASCIIASCII代码代码代码代码n
18、n回车换行回车换行1010t t横向跳到下一制表位置横向跳到下一制表位置9 9bb退格退格8 8r r回车回车1313f f走纸换页走纸换页1212 反斜线符反斜线符“/”/”9292 单引号符单引号符3939”双引号符双引号符3434aa鸣铃鸣铃7 7 dddddd1313位八进制数所代表的字符位八进制数所代表的字符 xhhxhh1212位十六进制数所代表的字位十六进制数所代表的字符符用数字表示的转义字符ddd-代表代表ASCII码是八进制数码是八进制数ddd(1-3位)的位)的字符。如,字符。如,0-空操作字符、空操作字符、101-A。xhh-代表代表ASCII码是十六进制数码是十六进制数
19、hh(1-2位)的位)的字符。如,字符。如,x41-A。广义来说,广义来说,C语言字符集中的任何一个字符均可用语言字符集中的任何一个字符均可用转义字符来表示。以上的转义字符来表示。以上的ddd和和xhh正是为此而提出的。正是为此而提出的。转义字符的使用举例转义字符的使用举例转义字符的使用举例转义字符的使用举例例:转义字符例:转义字符的使用的使用Main()Main()intint a,b,ca,b,c;a=5;b=6;c=7;a=5;b=6;c=7;printfprintf(“(“ababctderfnctderfn”);”);printf(“hijktLbMnprintf(“hijktLbM
20、n”);”);/*转义字符代表特殊的字符转义字符代表特殊的字符,注意分析其运行结果,注意分析其运行结果*/输出结果为:输出结果为:f ab c de hijk M 2 2、字符串常量、字符串常量 字符串常量是指用一对双引号括起来的一串字符。如:world,TRUE or FLASE,8765431.0037,T 均为字符串常量。注:双引号()和反斜杠()本身作为字符串时要通过转义字符()。如:和 分别代表字符串()和反斜杠()。2.3 标识符、变量和常量注意字符常量与字符串常量的区别:在C语言中,字符串常量在内存中存储时,系统自动在字符串的末尾加一个“串结束标志”:0 该结束标志的ASC码值为
21、0,字符为空NULL。因此,长度为n个字符的字符串常量,在内存中占有n+1个字节的存储空间。如:字符串“World”,共5个字符,需占用6个字节,其存储形式为:2.3 标识符、变量和常量World0 3 3 3 3、符号常量、符号常量、符号常量、符号常量 即用一个标识符来代表一个常量(通常用大写字母表示)。即用一个标识符来代表一个常量(通常用大写字母表示)。即用一个标识符来代表一个常量(通常用大写字母表示)。即用一个标识符来代表一个常量(通常用大写字母表示)。符号常量在使用之前必须先定义,其一般形式为:符号常量在使用之前必须先定义,其一般形式为:符号常量在使用之前必须先定义,其一般形式为:符号
22、常量在使用之前必须先定义,其一般形式为:#define#define标识符标识符标识符标识符常量常量常量常量 其中,其中,其中,其中,#define#define也是一条预处理命令,其功能是把该标识符定也是一条预处理命令,其功能是把该标识符定也是一条预处理命令,其功能是把该标识符定也是一条预处理命令,其功能是把该标识符定义为其后的常量值。一经定义,以后在程序中所有出现该标识符义为其后的常量值。一经定义,以后在程序中所有出现该标识符义为其后的常量值。一经定义,以后在程序中所有出现该标识符义为其后的常量值。一经定义,以后在程序中所有出现该标识符的地方皆用该常量值代之。的地方皆用该常量值代之。的地方
23、皆用该常量值代之。的地方皆用该常量值代之。如:如:#define PI 3.1415926#define PI 3.1415926#define TRUE 1#define TRUE 1#define FALSE 0#define FALSE 0 其中其中PIPI、TRUETRUE、FLASEFLASE均为符号常量;均为符号常量;其值分别为其值分别为3.14159263.1415926,1 1,0 0。2.3 标识符、变量和常量关于符号常量的几点说明:关于符号常量的几点说明:关于符号常量的几点说明:关于符号常量的几点说明:(1 1)为了和变量区别,符号常量标识一般用大写字母,)为了和变量区别,
24、符号常量标识一般用大写字母,)为了和变量区别,符号常量标识一般用大写字母,)为了和变量区别,符号常量标识一般用大写字母,而变量标识符一般用小写字母。而变量标识符一般用小写字母。而变量标识符一般用小写字母。而变量标识符一般用小写字母。(2 2)符号常量与变量不同,它的值在程序运行过程中不)符号常量与变量不同,它的值在程序运行过程中不)符号常量与变量不同,它的值在程序运行过程中不)符号常量与变量不同,它的值在程序运行过程中不能改变,也不能再被赋值。能改变,也不能再被赋值。能改变,也不能再被赋值。能改变,也不能再被赋值。(3 3)使用符号常量的好处:一是含义清楚,二是能做到)使用符号常量的好处:一是
25、含义清楚,二是能做到)使用符号常量的好处:一是含义清楚,二是能做到)使用符号常量的好处:一是含义清楚,二是能做到“一改皆改一改皆改一改皆改一改皆改”从而减少程序在修改时的工作量。从而减少程序在修改时的工作量。从而减少程序在修改时的工作量。从而减少程序在修改时的工作量。例:符号常量的使用例:符号常量的使用例:符号常量的使用例:符号常量的使用#definePI3.14159#definePI3.14159main()main()floatfloatr,circle,arear,circle,area;r=2.3;r=2.3;circle=2*circle=2*PIPI*r;*r;area=area
- 配套讲稿:
如PPT文件的首页显示word图标,表示该PPT已包含配套word讲稿。双击word图标可打开word文档。
- 特殊限制:
部分文档作品中含有的国旗、国徽等图片,仅作为作品整体效果示例展示,禁止商用。设计者仅对作品中独创性部分享有著作权。
- 关 键 词:
- c语言程序设计 第2章_基本语句 语言程序设计 基本 语句
限制150内