课前挑战--标识符;数据类型
一、主题讨论
二、标识符部分课前预习挑战答题
三、数据类型部分课前预习挑战答题
四、相关知识提前学习
标识符的概念
程序设计时,需要用合法的标识符为程序的构成成分(如变量、常量和函数等)命名。标识符是指在程序设计时为常量、变量及用户自定义对象所设定的名称,即用以标识的符号。C语言规定标识符只能由字母、数字和下划线三种字符组成,且第一个字符必须为字母或下划线。C语言的标识符分为关键字和用户自定义标识符两种。
关键字是由C语言规定的具有特定含义的字符串(英文单词),又称为保留字。C语言共有32个关键字,主要用于定义数据类型和构成语句。
表1: C语言关键字
C语言中所有关键字均为小写,比如if是关键字,而IF则不是关键字。关键字不允许作为用户标识符使用。
命名注意事项
用户根据需要,可以自行对程序中的变量、符号常量、函数等进行命名。命名时应注意以下几点:
(1)必须按照C语言规定的标识符命名原则,只能由字母、数字和下划线组成,且第一个字符必须是字母或下划线。
(2)C语言严格区分大小写字母,例如SUM和sum被认为是不同的标识符。不应该通过大小写区分标识符。
(3)ANSI C没有对标识符的长度(字符个数)进行统一规定,但不同的系统都根据自己的设计需要而有不同的规定,在设计程序时应了解所用系统对标识符长度的规定。
(4)命名时应尽量采用有意义的名称,做到“见名知义”,以便于阅读理解,增强程序的可读性。例如描述年龄的变量用age来表示,描述性别的变量用sex来表示。
数据类型是数据的一个非常重要的特征,它不仅确定了数据的性质与取值范围,而且还确定了数据所能参加的运算方式以及数据在内存中的存储方式。
对数据类型的理解应从形式和运算规则两个方面着手。例如一个整型(int)类型的数据,其内涵为一定范围的自然数集合( IBM PC系列微机上取值范围规定为-32768~32767之间的整数)以及定义在该集合上的加、减、乘、除、取余等运算操作。
整型
由于计算机资源有限,任何计算机只能表示整数的一个子集,即计算机中的整数在一个规定的取值范围内表示。C语言提供的整型数据有:基本型(int)、短整型(short int 、short)、长整型(long int、long)、无符号整型(unsigned int、unsigned long、unsigned short)。 常用的各种整数类型的表示范围及所占内存的字节数如表1所示(16位机)。
表1 各种整数类型的数据范围及所占内存的字节数
一般而言,对于一个在-32768~32767之间变化的整型数据,可以将其定义为int,当根本不可能出现负值时,可以将其定义为unsigned;当数据的变化范围远远超出-32768~32767或0~65535时,应将其定义为long或unsigned long。
C语言没有规定各种整数的二进制编码长度,遵循的原则是以一个机器字(word)存放一个int型数据,而longint型数据的字节数应不小于int型,short int型不长于int型。
浮点型
现实中的许多测量数据往往含有小数,这类数据在C语言中用实数类型表示。C语言提供了单精度(float型)、双精度(double型)和长双精度(long double型)三种实数类型。常用的实数范围及占用内存字节数见表2(16位机)。
表2 实型数据范围
由于实型变量是由有限的单元组成,能够提供的有效数字是有限的,故实数的存储存在误差。例如采用float型存储数据12345.123456789;由于float型只能接受7位有效数字,所以保留两位小数,数值保存为12345.12。实数运算时,只有有效位之内的数据是正确的。
字符型
C语言提供两种字符数据类型,所表示的字符型范围见表3。
表3 字符型数据范围
字符类型的数据包括计算机所用编码字符集中的所有字符。常用的ASCII字符集包括128个字符,扩展的ASCII字符集包括256个字符。字符型数据只占一个字节的存储空间,该字节内存放的不是字符本身,而是对应该字符的编码值(如ASCII码值)。
字符型数据和整型数据在内存中均以二进制(ASCII)码形式存储,一个字符型相当于1个字节的小整型,因此字符型可以像整数一样参与各种运算,这对字符处理非常方便。例如通过字符+/-32可以实现大小写字母的转换。
五、课前预习本章节PPT