原则:使用变量前,先定义,后使用。 (1)基本型:用int表示;
(2)短整型:用short int或short表示; (3)长整型:用long int或long表示; (4)无符号型:
无符号整型:用unsigned int或unsigned表示;
无符号短整型:用unsigned short int或unsigned short表示; 无符号长整型:用unsigned long int或unsigned long表示; 2.2.3 整型变量使用
不同的整型数据,应根据其特性和取值范围,将其定义成不同类型的整型变量。
例2.2不同类型的数据进行算术运算。 源程序a2.c Main() {
Int a,b,s1,s2; Unsigned x; a=10;b=-30;x=20; S1=a+x;s2=b+x;
Printf(“a+x=%d,b+x=%d\\n”,s1,s2); } C:\\>a2
运行结果为 a+x=30,b+x=-10 2.2.3 整型变量使用
不同的整型数据,应根据其特性和取值范围,将其定义成不同类型的整型变量。
例2.3 整型数据各类型所能表示的范围 源程序a3.c main() {int a,b; long c,d; unsigned e,f; a=32767;b=1; c=2147483647;d=1; e=65535;f=1;
Printf(“int: %d,%d,\\n”,a,a+b); Printf(“long: %d,%ld\\n”,c,c+d); Printf (“unsigned: %u,%u\\n”,e,e+f); } C:\\>a3 运行结果为 Int: 372767,-32768
Long: 2147483647,-2147483648
Unsigned:65535,0 2.3 字符型数据 2.3.1 字符型常量
字符常量是由一对单引号括起来的单个字符构成,例如:‘A’,‘b’,’2’,’%’’;’等。一个字符型常量是该字符集中对应的编码值:‘0’~‘9’的ASCⅡ编码值是48~57。显然‘0’与数字0是不同的。
2.3.2 字符型变量
字符型数据分为两类:一般字符类型(char) 和无符号字符类型(unsigned char)。
例2.4 字符型数据与整型数据可以通用 源程序a3.c Main() {char c1,c2;
Printf(“%c,%c\\n”,c1,c2); Printf(“%d,%d\\n”,c1,c2); } C:\\>a4 运行结果为 A,B
65,66
2.3.3 字符串常量
字符串常量是由一对双引号括起来的字符序列,例:“fsdf”,”A”等。 字符串常量中不能直接包括单引号、双引号和反斜杠“\\“。 字符串常量与字符常量的区别:
(1)字符串常量是用双引号括起来的字符序列。 (2)字符串常量有串尾标记”\\0”; (3)字符串常量允许扩展表示法;
(4)C语言中没有专门的字符串变量。字符串如果需要存放在变量中,需要用字符型数组来存放。
注意:不要将单个字符组成的字符串常量与字符常量混淆。‘a’为字符串常量,不能把一个字符串常量赋给一个字符变量。例如:下面的用法都是错误的: Char c1,c2; C1=“a” C2=“CHINA”;
字符‘\\0’由系统自动加入到每个字符串的结束处,不必由编程人员加入。
字符串“CHINA”在内存中的存放形式如下图,其长度是六个字节,而不是5个字节。字符‘\\0’所对应的ASCⅡ值为0,即“空”字符。 2.4 浮点型数据
2.4.1 浮点型常量
浮点型常量有两种表示形式。 十进制数形式
它是由数字和小数组成,如:3. 14159,-7.2,8.9 指数法形式
如:180000.0用指数法可表示为1.8e5,1.8称为尾数,5称为指数。 0.00123用指数法可表示为1.23e-3 注意:
(1)字母e 或E之前(即尾数部分)必须是有数字的。 (2)e或E后面的指数部分必须是整数。 如:e-3,9.8e3.1,e5都是不合法的。 2.4.2 浮点型变量(实型变量)
把带有小数点的数称为浮点数,或实型数。浮点型变量又称为实型变量,按能表示数的精度,分为:单精度浮点型变量和双精度浮点型变量,其定认方法如下:
float a,b; /*单精度变量的定义*/ double c,d; /*双精度变量的定义*/
单精度:占4个字节,有效位为7位,数值范围为10-37~1038 双精度:占8个字节,有效位为15~16位,数值范围约为10-307~10308 浮点型常量不存在单精度型和双精度型之分。 2.5 变量的初始化