C语言程序设计--第2-讲 字符集.ppt
《C语言程序设计--第2-讲 字符集.ppt》由会员分享,可在线阅读,更多相关《C语言程序设计--第2-讲 字符集.ppt(92页珍藏版)》请在淘文阁 - 分享文档赚钱的网站上搜索。
1、C语言程序设计 第二讲(1)C 文件可以由文件可以由一个或多个一个或多个C源程序源程序组成组成(2)C 源程序可以由源程序可以由一个或多个函数一个或多个函数组成组成(3)C 文件文件有且仅有一个主函数有且仅有一个主函数(main函数)函数)(4)C 源程序中用预处理命令调用库函数或其它程序。源程序中用预处理命令调用库函数或其它程序。(5)每个执行语句以分号结尾。)每个执行语句以分号结尾。(6)变量要先定义再应用)变量要先定义再应用上节提要:上节提要:(7)一个函数由两部分组成:)一个函数由两部分组成:函数的说明部分:函数名后有一对圆括号函数的说明部分:函数名后有一对圆括号函函 数数 体体 部部
2、 分:花括号分:花括号+执行语句执行语句(8)C 程序书写区分大小写程序书写区分大小写(9)printf(“格式化字符串格式化字符串”,参数表)。,参数表)。(10)可以用)可以用/*/或或/对对C源程序做注解源程序做注解上节提要:上节提要:语言的字符集语言的字符集n每一种可书写的语言,全部可用的字符的每一种可书写的语言,全部可用的字符的集合称为集合称为字符集字符集英语英语的字符集的字符集a-z26个字母个字母阿拉伯数字阿拉伯数字的字符集为的字符集为0-9汉语汉语的字符集的字符集(中文字符,太多了)(中文字符,太多了)n两个或两个以上的字符组合称为两个或两个以上的字符组合称为词汇词汇。语言的字
3、符集 n语言字符集由语言字符集由字母,数字,空格,标点和特殊字符字母,数字,空格,标点和特殊字符组成。组成。在字符常量,字符串常量和注释中还可以使用汉字或其它在字符常量,字符串常量和注释中还可以使用汉字或其它可表示的图形符号。可表示的图形符号。1.字母字母大小写英文字母大小写英文字母2.数字数字093.空白符空白符空格符、制表符空格符、制表符(t)、换行符、换行符(n)等统称为空白符。等统称为空白符。空白符只在字符常量和字符串常量中起作用空白符只在字符常量和字符串常量中起作用。4.标点和特殊字符标点和特殊字符标点:标点:冒号,逗号,大中小括号冒号,逗号,大中小括号特殊字符:特殊字符:+-*/%
4、等等一、语言词汇一、语言词汇n在语言中使用的词汇分为六类:在语言中使用的词汇分为六类:标识符,标识符,关键字,运算符,分隔符,常量,注释符关键字,运算符,分隔符,常量,注释符等。等。n1.标识符标识符在程序中使用的变量名、函数名、标号等统在程序中使用的变量名、函数名、标号等统称为标识符称为标识符。除库函数的函数名由系统定义外,其余都由除库函数的函数名由系统定义外,其余都由用户自定义。用户自定义。标识符是只能由标识符是只能由字母字母、数字数字和和下划线下划线(_)组成的组成的字符串,并且其字符串,并且其第一个字符必须是字母或下划第一个字符必须是字母或下划线线。u由英文字母、数字和下划线组成,大小
5、写敏感由英文字母、数字和下划线组成,大小写敏感u不可以不可以是数字开头是数字开头u直观,见名知意,便于记忆和阅读直观,见名知意,便于记忆和阅读最好使用英文单词或其组合最好使用英文单词或其组合切忌使用汉语拼音切忌使用汉语拼音u下划线和大小写通常用来增强可读性下划线和大小写通常用来增强可读性Variablename(太长,不建议)(太长,不建议)variable_name(UNIX风格)风格)VariableName,variableName(Windows风格)风格)u不允许使用关键字作为标识符的名字不允许使用关键字作为标识符的名字nint,float,for,while,if等等u某些功能的变
6、量采用习惯命名某些功能的变量采用习惯命名如:如:for语句所采用的循环变量习惯用语句所采用的循环变量习惯用i,j,k标识符命名标识符命名n在使用标识符时还必须注意以下几点:在使用标识符时还必须注意以下几点:n(1)标准标准C不限制标识符的长度,但它受各种版本的不限制标识符的长度,但它受各种版本的C语言编译系统语言编译系统限制,同时也受到具体机器的限制。例如在某版本限制,同时也受到具体机器的限制。例如在某版本C中规定标识符前中规定标识符前八位有效,当两个标识符前八位相同时,则被认为是同一个标识符。八位有效,当两个标识符前八位相同时,则被认为是同一个标识符。定义标识符最好不要超过定义标识符最好不要
7、超过8个。个。n(2)在标识符中,大小写是有区别的。例如在标识符中,大小写是有区别的。例如BOOK和和book是两个不是两个不同的标识符。同的标识符。最好全部用小写最好全部用小写n(3)标识符虽然可由程序员随意定义,但标识符是用于标识某个量标识符虽然可由程序员随意定义,但标识符是用于标识某个量的符号。因此,命名应尽量有相应的意义,以便于阅读理解,作到的符号。因此,命名应尽量有相应的意义,以便于阅读理解,作到“顾名思义顾名思义”。n以下标识符是合法的:以下标识符是合法的:a,x,x3,BOOK_1,sum5n以下标识符是非法的:以下标识符是非法的:3s以数字开头以数字开头U.S中间有非法字符中间
8、有非法字符.s*T出现非法字符出现非法字符*-3x以减号开头以减号开头bowy-1出现非法字符出现非法字符-(减号减号)Goodbye中间有空格中间有空格int关键字关键字n2.关键字关键字关键字是关键字是由语言规定的具有特定意义的字符串由语言规定的具有特定意义的字符串,通常也称为,通常也称为保保留字留字。用户定义的标识符不应与关键字相同。语言的关键字分为以。用户定义的标识符不应与关键字相同。语言的关键字分为以下几类:下几类:n(1)类型说明符类型说明符用于定义、说明变量、函数或其它数据结构的类型。如用于定义、说明变量、函数或其它数据结构的类型。如int,doublen(2)控制语句符控制语句
9、符用于表示一个语句的功能。如用于表示一个语句的功能。如if就是条件语句的语句定义符。就是条件语句的语句定义符。nANSI C一共只有32个关键字 autobreakcasecharconstcontinue defaultdo double else enum extern float for goto if int long register return short signed static sizeof struct switch typedef union unsigned void volatile whilen(1)数据类型说明符(数据类型说明符(12个)个)长长短短(单单)双正
10、双正负负 long short double unsigned singned 无无值值整型浮点字符(整型浮点字符(指指针针)void int float char 联联合枚合枚举结举结构(构(数数组组)union struct enum(2)变量类型(变量类型(4个):个):外部外部静态自动静态自动寄存器寄存器externstaticautoregister(3)常量()常量(1个)个):constn(2)程序结构语句定义符(程序结构语句定义符(12个)个)n判断:判断:Ifelsen循环:循环:fordowhilen转移:转移:goton跳出:跳出:breakcontinuen返回:返回:
11、returnn开关:开关:switchcasedefaultn3、其它关键字、其它关键字nsizeof 大小大小ntypedef类类型定型定义义nvolatile可可变变的的变变量量n数据为什么要区分类型?数据为什么要区分类型?n不同类型的数据代表不同的不同类型的数据代表不同的数据表示形式数据表示形式合法的取值范围合法的取值范围占用内存空间大小占用内存空间大小可参与的运算种类可参与的运算种类数据类型(数据类型(Data TypeData Type)语言的数据类型语言的数据类型 n数据类型是按被说明变量的性质,表示形式,占据存储空间的多少,构造特点来划分的。n在语言中,数据类型可分为:基本数据类
12、型,构造数据类型,指针类型,空类型四大类。n数据类型:基本 构造 空 指针基本类型基本类型构造类型构造类型指针类型指针类型空类型空类型 void整型整型浮点型(实型)浮点型(实型)字符型字符型 char枚举类型枚举类型 enum基本整型基本整型(singned)int长整型长整型 long(int)短整型短整型 short(int)数据类型数据类型无符号整型无符号整型 unsigned(int)单精度实型单精度实型 float双精度实型双精度实型 double数组类型数组类型结构体类型结构体类型 struct 联合类型联合类型 union 数据类型(数据类型(Data TypeData Typ
13、e)1、基本数据类型:基本数据类型最主要的特点是,、基本数据类型:基本数据类型最主要的特点是,其值不可其值不可以再分解为其它类型以再分解为其它类型。也就是说,基本数据类型是自我。也就是说,基本数据类型是自我说明的。说明的。2、构造数据类型:构造数据类型是、构造数据类型:构造数据类型是根据已定义的一个或多个根据已定义的一个或多个数据类型用构造的方法来定义的数据类型用构造的方法来定义的。也就是说,一个构造。也就是说,一个构造类型的值类型的值可以分解成若干个可以分解成若干个“成员成员”或或“元素元素”。每个。每个“成员成员”都是一个基本数据类型或又是一个构造类型。都是一个基本数据类型或又是一个构造类
14、型。在在C语言中,构造类型有以下几种:语言中,构造类型有以下几种:n数组类型数组类型n结构体类型结构体类型n联合类型联合类型计算机中的数据单位:b,B,KB,MB,GB,TBnbit,位,位bnByte,字节,字节BnKilobyte(KB),KnMegabyte(MB),兆,兆MnGigabyte(GB),GnTerabyte(TB),T1 TB 1 TB=1,024 GB1,024 GB1 GB1 GB =1,024 MB1,024 MB1 MB1 MB =1,024 KB1,024 KB1 KB1 KB =1,024 B1,024 B1 B 1 B=8 b8 b思考:为什么是思考:为什么
15、是1024而不是更容易计算的而不是更容易计算的1000?1024是是2的的10次方次方注意:硬盘的容量计算与此不注意:硬盘的容量计算与此不同,硬盘的同,硬盘的1K是是1000思考:为什么是思考:为什么是8而不是更直观的而不是更直观的10?uint 整数,在目前绝大多数机器上占整数,在目前绝大多数机器上占4个字节。个字节。TC2中是中是2个字节个字节inta=64;ufloat 浮点数浮点数单精度浮点数,一般是单精度浮点数,一般是4 4个字节长个字节长 float b=64.0;float b=64.0;uchar 字符字符字符,一般是字符,一般是1 1个字节长个字节长用来表示用来表示25625
16、6个个ASCIIASCII字符,或者字符,或者0-2550-255的整数。的整数。char=a;基本数据类型基本数据类型ushort int,短整型,短整型,2个字节。通常简写为个字节。通常简写为shortulong int,长整型,长整型,4个字节。通常简写为个字节。通常简写为longsingle 单精度浮点数单精度浮点数 4个字节个字节double双精度双精度浮点数浮点数8个字节个字节long double?usigned用来修饰用来修饰char、int、short和和long,说明他们是有符号的整,说明他们是有符号的整数(正整数、数(正整数、0和负整数)。一般和负整数)。一般缺省缺省都是
17、都是有符号有符号的,所以这的,所以这个修饰符通常省略个修饰符通常省略uunsigned用来修饰用来修饰char、int、short和和long,说明他们是无符号的整,说明他们是无符号的整数(正整数和数(正整数和0)数据类型修饰符数据类型修饰符数据的存储形式n计算机中,所有的数据都是以二进制进行存储的。n因为用一个两位的十六进制数就可以表示8位的二进制数,为方便阅读,都是以16进制的形式写出。n常用字符与ASCII码对应。使用使用ULTRAEDIT打开打开flashfxp.exe文件,进行十六进制编辑:文件,进行十六进制编辑:以以13为为例:例:二二进进制数制数为为:1101int型型(2字字节
18、节,15位有效数字,最高位位有效数字,最高位为为符号位):符号位):0000000000001101long int型型(4字字节节,31位有效数字,最高位为符号位)位有效数字,最高位为符号位):00000000000000000000000000001101unsigned int型型(2字节,字节,16位有效数字,无符号位)位有效数字,无符号位):0000000000001101unsigned long int型(型(4字节,字节,31位有效数字,无符号位)位有效数字,无符号位):00000000000000000000000000001101整型数据整型数据在内存中的存放形式在内存中的
19、存放形式0D0D000D0D00Turbo C中各中各类类整型量所分配的内存字整型量所分配的内存字节节数及数的表示范数及数的表示范围围。类类型型说说明符明符数的范数的范围围字字节节数数int-3276832767 即即-215(215-1)2unsigned int065535 即即0(216-1)2short int-3276832767 即即-215(215-1)2unsigned short int065535 即即0(216-1)2long int-21474836482147483647即即-231(231-1)4unsigned long04294967295 即即0(232-1)
20、4uTC2中中int的范围是的范围是-3276832767u如果我们给它一个小于如果我们给它一个小于-32768或者大于或者大于32767的数会如何呢?的数会如何呢?小蛇能吞小蛇能吞小蛇能吞小蛇能吞下大象吗下大象吗下大象吗下大象吗?超出取值范围会怎样?超出取值范围会怎样?u一台安装了一台安装了Windows95/98的机器,如果的机器,如果连续运行连续运行49.7天没有重新启动,可能死机天没有重新启动,可能死机u原因:原因:Windows自启动时刻起,有一个计数器,记录自启动时刻起,有一个计数器,记录系统已经运行了多少毫秒。这个计数器是个系统已经运行了多少毫秒。这个计数器是个unsignedl
21、ong 类型的变量类型的变量unsignedlong 的最大值是:的最大值是:4294967295一天有一天有24*60*60*1000=86400000毫秒毫秒4294967295/86400000=49.71026961805当当49.7天的时候,此计数器会溢出,引起死机天的时候,此计数器会溢出,引起死机溢出(溢出(Overflow)造成的危害)造成的危害2 浮点型数据 浮点型常量的表示方法浮点型常量的表示方法两种表两种表示形式示形式小数小数指数指数0.1230.1231.23e-31.23e-3注意注意:字母e(或E)之前必须有数字,且e后面的指数必须为整数1e31e3、1.8e-31.
22、8e-3、-123e-6-123e-6、-.1e-3-.1e-3e3e3、2.1e3.52.1e3.5、.e3.e3、e e 3.4 浮点型数据规范化的指数形式:规范化的指数形式:在字母e(或E)之前的小数部分中,小数点左边 应有一位(且只能有一位)非零的数字.例如例如:123.456可以表示为:123.456e0,12.3456e1,1.23456e2,0.123456e3,0.0123456e4,0.00123456e 其中的1.23456e31.23456e3称为“规范化的指数形式”。3.4 浮点型数据3.4.2浮点型变量浮点型变量(1)(1)浮点型数据在内存中的存放形式浮点型数据在内存
23、中的存放形式 一个浮点型数据一般在内存中占4个字节(32位)。与整型数据的存储方式不同,浮点型数据是按照指数形式存储的。系统把一个浮点型数据分成小数部分和指数部分,分别存放。指数部分采用规范化的指数形式。图3-7 计算机中用二进制表示浮点数n使用二进制表示只有使用二进制表示只有0和和1,那么对于小数就只能用下面的方式来表示:,那么对于小数就只能用下面的方式来表示:a12-1+a22-2+a32-3+.+an2-nn其中其中a1等数可以是等数可以是0或者或者1,从理论上将,使用这种表示方法可以表示一个有限,从理论上将,使用这种表示方法可以表示一个有限的小数。的小数。IEEE 754标准n一个一个
24、浮点数浮点数V在在IEEE754标准中可以用标准中可以用V(-1)SM2E的形式表示的形式表示n在表示浮点数时在表示浮点数时,每个浮点数均由三部分组成每个浮点数均由三部分组成:n符号位符号位S,指数部分指数部分E和和有效数字有效数字MnS=0表示正数表示正数,S=1表示负数表示负数n有效数字有效数字M是二进制小数,是二进制小数,M的的每一位数只能是每一位数只能是0或或1以以0.75为例为例n十进制数十进制数0.75=0.5+0.25=1*1/2+1*1/4=1*2-1+1*2-2n写成二进制的格式:写成二进制的格式:0.75d=1.1*2-1bn219.125 d=11011011.001 b
25、换算过程:换算过程:n=1*128+1*64+0*32+1*16+1*8+0*4+1*2+1*1+0*0.5+0*0.25+1*0.125n=1*27+1*26+0*25+1*24+1*23+0*22+1*21+1*20+0*2-1+0*2-2+1*2-3n=11011011.001bn=1.1011011001*27bn写成计算机存储的规范格式n01000011010110110010000000000000符号位符号位 s,正数则正数则 s=0指数位指数位E:用:用127代表代表0,E大于大于0则为则为127+E,E小于小于0则为则为127-E省略整数省略整数1后得到有效数字(或后得到有效
- 配套讲稿:
如PPT文件的首页显示word图标,表示该PPT已包含配套word讲稿。双击word图标可打开word文档。
- 特殊限制:
部分文档作品中含有的国旗、国徽等图片,仅作为作品整体效果示例展示,禁止商用。设计者仅对作品中独创性部分享有著作权。
- 关 键 词:
- C语言程序设计-第2-讲 字符集 语言程序设计
限制150内