您好,欢迎访问三七文档
第二章数据类型、运算符与表达式..........................................................................................-2-2.1知识概要.........................................................................................................................-2-2.1.1C语言字符集与标识符........................................................................................-2-2.1.2常量与变量..........................................................................................................-3-2.1.3数据类型..............................................................................................................-5-2.1.4运算符..................................................................................................................-6-2.1.5表达式..................................................................................................................-8-2.2知识难点辨析.................................................................................................................-9-2.3课内实训项目...............................................................................................................-10-2.3.1基础实训:数据类型........................................................................................-10-2.3.2基础实训:运算符和表达式............................................................................-15-2.3.3查错实训............................................................................................................-18-2.3.4提高实训............................................................................................................-20-2.4课外实训题目...............................................................................................................-20-2.5习题.............................................................................................................................-21--2-第二章数据类型、运算符与表达式C语言之所以有强大的功能和灵活的代码编写方式,其中原因之一就是因为C语言的数据类型和运算符十分丰富。C语言具有13种数据类型和34个运算符。通过本章的学习和实践,应该理解和掌握C语言的基本数据类型、运算符以及相应表达式的使用。2.1知识概要2.1.1C语言字符集与标识符1.C语言字符集字符是组成语言的最基本的元素。C语言字符集有字母、数字、空格、运算符、标点符号和特殊字符组成。在字符常量,字符串常量和注释中还可以使用汉字或其它可表示的图形符号。(1)字母:小写字母a~z共26个,大写字母A~Z共26个。(2)数字:0~9共10个。(3)空白符:空格符、制表符、换行符等统称为空白符。(4)运算符:算术运算符、关系运算符、逻辑运算符、位运算符等。(5)标点和特殊符号:分号、逗号、圆括号、方括号、!、?、^等。2.C语言词汇在C语言中使用的词汇分为六类:标识符、关键字、运算符、分隔符、常量、注释符等。(1)标识符在程序中使用的变量名、函数名、标号等统称为标识符。除标准函数名由系统定义外,其余都由用户自定义。C语言规定,标识符只能是字母、数字和下划线组成的字符串,并且其第一个字符必须是字母或下划线,字母的大小写有区别。(2)关键字关键字是C语言规定的具有特定意义的字符串,也称为保留字。用户定义的标识符不应与关键字相同。C语言的关键字分为以下几类:①类型说明符:用来定义、说明变量、函数或其它数据结构的类型。包括auto、char、const、double、enum、extern、float、int、long、register、short、signed、static、struct、typedef、unsigned、union、void、volatile。②语句定义符:用来表示一个语句的功能。与分支结构有关的语句:if()~else~、switch(){case、default、break}、与循环结构有关的语句:for()~、while()~、do~while()、continue、break、goto及函数值返回语句:return。③运算定义符:用来表示运算。求数据在内存中占的字节数:sizeof。-3-2.1.2常量与变量1.常量所谓常量是指在程序运行过程中,其值不能被改变的量。常量有两种方式:符号常量和数值常量。(1)符号常量符号常量的定义格式如下:#define符号常量标识符常量值#define是C语言的预处理指令,说明程序中的符号常量标识符代表了常量值。(2)数值常量①整型常量整型常量按不同的进制区分有3种表示方法。十进制整数常量由0~9的数字组成,如865、-234等。八进制整数常量由0~7的数字组成,以0开头为标识,如017、0352等。十六进制整数常量由0~9的数字和A~F(不区别大小写)的字母组成,以0X或0x开头,如0X67、0x8A等。此外,在整型常数后添加一个L(或l)字母表示该数为长整型数,如32L;若加上一个U(或u)字母表示该数为无符号整型数,如567u;若加上一个ul或UL字母表示该数为无符号长整型数,如674ul。②浮点型常量浮点型常量由整数部分和小数部分组成。浮点型常量有两种表示形式:一种是小数表示法,它由整数部分和小数部分组成。这两部分可以省略其中一个,不能两者都省略。如95.、.35、57.68等。另一种表示是科学表示法,一般用来表示很大或很小的浮点数,表示方法是在小数表示法后面加E(或e)表示指数,指数部分可正可负,但必须是整数。如3.14e+3、8.1E-5等。浮点型常量默认类型为double,浮点型常量后面加字母F或f,表示此数为单精度浮点数,而字母L或l,表示此数为长双精度类型(longdouble)。如1234F、0.3e-5f表示单精度类型,5.3e4L表示长精度类型。③字符常量字符型常量分为普通字符常量和转义字符常量两种。普通字符常量是用单撇号括起来的一个字符,如'b'、'&'、'+'、'9'等。转义字符常量是以“\”开头的字符序列。表2.1中列出的字符称为“转义字符”,意思是将反斜杠“\”后面的字符转换成另外的含义。如'\n'中的“n”不代表字母n,而是代表换行。表2.1转义字符及其含义字符形式含义符号ASCII代码\a响铃BEL007-4-\b退格,将当前位置移到前一列BS008\n换行,将当前位置移到下一行开头LF010\v垂直制表,竖向跳格VT011\f换页,走纸将当前位置移到下页开头FF012\r回车,将当前位置移到本行开头CR013\t水平制表(跳到下一个tab位置)HT111\\反斜杠字符“\”\092\'单引号(撇号)字符'044\双引号字符034\?问号?063\0空字符NUL0\ddd1~3位八进制数所代表的字符0DDD\xhh1~2位十六进制数所代表的字符0xHH⑤字符串常量用双引号引起来的一串字符序列称为字符串常量。如abcd、Hello!、123+28等。字符串常量在存储时,系统会自动在字符串尾部加上一个结束标志'\0'。但'\0'并不是字符串的一部分,它只作为字符串的结束标志,在内存中,占一个字节。例如:字符串常量abcd,在内存中的存储形式,如图2.1所示。aBCD\0图2.1字符串存放示例2.变量所谓变量是指在程序的运行过程中,其值可以改变的量。使用变量前必须先定义(声明),变量是用来保存常量的。变量有三个要素:名字、类型和值。(1)变量的名字变量名字是一个标识符,所以要符合标识符命名的规则。变量名字中的字母区别大小写。C语言对于变量名字的长度没有限制,变量名的有效长度依赖于机器类型。(2)变量的类型每种变量都应该有一种类型,在定义或说明变量时要指出其类型。一个变量的类型不仅决定了该变量存储在内存中所占的大小(字节数),而且也规定该变量的合法操作。因此,类型对变量来说是很重要的。(3)变量的值变量存在有两个有用的值:一个是变量所表示的数据值,另一个是变量的地址值。(4)变量的定义定义变量是用一个说明语句实现的,其格式如下:[存储类型]数据类型变量名表;-5-2.1.3数据类型高级语言中数据类型决定数据的存储空间的大小及表示形式、数值的取值范围和数值的运算方式。C语言中数据类型十分丰富,包括基本数据类型、构造数据类型、指针类型和空类型四类,如图2.2所示。下面主要介绍基本数据类型,其它类型在后面的章节中介绍。短整型(shortint)整型基本整型(int)长整型(longint)字符型(char)基本类型单精度(float)浮点型双精度(double)长双精度(longdouble)枚举(enum)数据类型数组构造类型结构体(struct)共用体(union)指针类型空类型(void)图2.2C语言数据类型1.整型在C语言中,整型数据分为有符号(signed)和无符号(unsigned)两类,每类又包含长整型(longint)、基本整型(int)和短整型(shortint),见表2.2。表2.2整型数据类型表类别类型类型标识字节表示范围有符号有符号基本整型[signed]int2-32768~32767有符号短整型[signed]short[int]2-32768~32767有符号长整型[signed]long[int]4-2147483648~2147483647无符号无符号基本整型unsigned[int]20~65535无符号短整型unsignedshort[int]20~65535无符号长整型unsignedlong[int]40~4294967295整型数据是按二进制数的补码形式存储的,例如十进制整数-90的二进制形式为-1100011,则在内存中的存储形式如图2.3所示。
本文标题:第二章数据类型
链接地址:https://www.777doc.com/doc-2186676 .html