第2章C语言基本数据类型及运算.ppt
《第2章C语言基本数据类型及运算.ppt》由会员分享,可在线阅读,更多相关《第2章C语言基本数据类型及运算.ppt(51页珍藏版)》请在三一文库上搜索。
1、第2章 C语言基本数据类型及运算,2.1 C语言的数据类型,2.2 常量,常量是程序中其值不发生变化的数据。 2.2.1 整型常量 进 制 数 表 示 方 式 举 例 八进制整型 由数字0开头 034,065,057 十进制整型 如同数学中的数字 123,-78,90 十六进制整型 由0X或0x开头 0x23,0Xff,0xac p31,限制在本区间使用,1基本整型常量和短整型-3276832767。 2长整型常量-21474836482147483647,整数后面加上字母l(或 L)。 3无符号整型常量表示的数据全部是正数,没有符号位。 int , short int,long int ,u
2、nsigned int unsigned short int,unsigned long int,实型数又称实数或浮点数,只用在十进制数中。 表示法如下: 3.14 .9999 -3.14159 0.3e05 6.89E-5 9.99e+16 6.89E-5 表示的是数学算式中的:6.8910-5。 类 型 二进制位数 有效数字 数 值 范 围 Float 32 7 10-381038 Double 64 1516 10-30810308 p31,2.2.2 实型常量,2.2.3 字符常量,字符常量是用单引号括起来的一个字符,它在计算机存储中占一个字节。 x,a,A,b,$,# 2.2.4 符
3、号常量 定义格式为:#define 符号常量 字符串 #define PI 3.14159 #define NULL 0 #define EOF 1 定义后当一般常量使用 p32,【例2.1】求一个圆柱体体积,用符号常量代替。 #include #define PI 3.14159 main() float r,h,v; scanf(“%f,%f“, ,2.2.5 字符串常量,字符串常量是用一对双引号括起来的零个或多个字符序列。 “I am a student“ ,”x“ ,” 都为字符串常量。 在内存中存储时,设定一个结束符0。 字符串的长度应为实际长度。,注意: 0和0不同,0是编码为0的
4、字符, 而0则是数字 0 所对应的字符 在字符串中有转义字符。 例如:“ab072cdef” 长度为7 ; “n33abcd” 长度为8,2.3 变量,变量是指在程序运行过程中其值可以发生变化的量。 2.3.1变量的数据类型及其定义 1.变量的数据类型(基本) 字符型、整型、单精度实型、双精度实型,它们分别用关键字char、int、float、double进行定义。另外,还有无符号整型和无值型,它们分别用关键字unsigned和void进行定义。 见表2,表3 p33,数据类型 变量列表; 系统默认类型int int a, b, c; char ch, str; double f_1, f_2
5、; float x, y, z, _w1, _w2; unsigned int u_1, u_2; long int g1, g2;,2.3.2 变量的存储类型及定义,变量的存储类型 CPU寄存器 (register) 内存 (内存中又分为两个区域,即为静态存储区和动态存储区。) 2. 变量的存储类型的定义 存储类型 数据类型 变量列表; 系统默认类型修饰为auto 类型(自动型) p34,(1) 自动变量 int a, b, c; char ch, str; double f_1, f_2; float x, y, z, _w1, _w2; unsigned int u_1, u_2; lo
6、ng int g1, g2;,【例2.2】定义自动整型和字符型变量。 #include main() auto char c1,c2; auto int i1,i2; scanf(“%d,%d“, 运行时输入:97,98 运行结果为:a,b 97,98,寄存器型变量的数据是存放在CPU 的通用寄存器中,可不通过内存来直接访问。Turboc C允许定义的寄存器型变量一般以2个为宜。动态管理使用. 【例2.3】函数内部定义寄存器变量。 #include main() register b; b=3; printf(“b=%d“,b); ,运行结果为: b=3,(3) 静态变量,静态变量存放在静态内
7、存数据区中 特点:静态变量在变量定义时就分配了固定的内存单元并根据所定义的数据类型存入默认值,在程序运行中一直占用内存单元不释放,直到程序运行结果后。 分类:静态变量又分为静态局部变量和静态全局变量。 静态局部变量 在函数或复合语句中定义的变量为静态变量称为静态局部变量. 特点:该变量在其函数中或复合语句中有效。静态局部变量所在的函数无论调用多少次,静态局部变量赋值语句只执行一次,但能够保留住函数多次调用的中间结果。p35,【例2.4】静态局部变量的使用 f() static int a=1; auto b=0; a=a+1; b=b+1; printf(“a=%d,b=%dn“,a,b);
8、,运行结果为: a=2,b=1 a=3,b=1 a=4,b=1,main() f(); f(); f(); ,静态全局变量,【例2.5】有一程序文件f1.c,在程序中使用了静态全局变量。 #include static int a=1; main() auto b=0; a=a+1; b=b+1; printf(“na=%d,b=%dn“,a,b); ,运行结果为: a=2,b=1,(4) 外部变量,Tubro C系统规定在某一个源程序中定义的全局变量,其它的多个文件可以使用,这就是所说的程序间的数据交流。 定义方法:使用关键字“extern”定义的变量称为外部变量(系统默认存储类型),在函数
9、体之外定义。 注意:如果全局变量如果不加“static”限制,都是外部变量。 外部和内部变量同名的处理: 外部变量如果与局部变量同名,在局部范围内局部变量优先。(具体应用见第5章)p37,变量定义可以出现在程序中的三个地方: 在函数的内部 在函数的参数中 在所有函数的外部 2.3.3 变量的初始化 存储类型符 数据类型符 变量1=初值1,变量2=初值2 ; static int a=1; auto int a=0,b=-3; p37,2.3.4 基本数据类型的使用 1. 整型变量 【例2.6】内存单元中同一个数据按有符号和无符号格式输出的情况。 #include main() unsigned
10、 int a=65535; int b=a; printf(“a=%un“,a); printf(“b=%dn“,b); printf(“a=%d,%o,%x,%un“,a,a,a,a); p37,运行结果为: a=65535 b=-1 a=-1,177777,ffff,65535,【例2.7】超出基本整型数据的最大允许值。 #include main() int a,b; a=32767; b=32768; printf(“%d,%d“,a,b); p38,实型变量分为单精度(float型)、双精度(double型)和长双精度型(long double型) 【例2.8】输出双精度数。 #in
11、clude main()double x,y; x=1111111111111.111111111; y=2222222222222.222222222; printf(“%fn“,x+y); ,实型变量,字符型变量,字符型变量在计算机内存储的是其字符对应的ASCII码值. 例如:char c1=A; 例2.9】输入英文字母A,转换成小写字母输出。 #include main() char c1,c2; c1=getchar( ) putchar(c1); c2=c1+32; putchar(c2); ,2.5 运算符及表达式,p40,2.4.1 算术运算符和算术表达式,算术运算包括加、减、乘
12、、除和求余运算。分别使用:+ 、- 、* 、/ 、% 表示。 见 P41 【例2.10】求两个整数相除的余数。 #include main() printf(“%d,%d,%d,%d“,7%3,7%(-3),-7%3,-7%(-3); ,2.5.2 关系运算符和关系表达式,关系运算是用来进行两个操作对象的比较的运算,关系运算的运算结果是一个逻辑值,即“真”值或“假”值。如果结果为“真”值,用数字“1”来表示,如果结果为“假”值,则用数字“0”表示。p41 语言提供6种关系运算符: (大于) =(大于或等于) =(等于) !=(不等于) 见附录2p251,关系运算符的优先级: 低于算术运算符 前
- 配套讲稿:
如PPT文件的首页显示word图标,表示该PPT已包含配套word讲稿。双击word图标可打开word文档。
- 特殊限制:
部分文档作品中含有的国旗、国徽等图片,仅作为作品整体效果示例展示,禁止商用。设计者仅对作品中独创性部分享有著作权。
- 关 键 词:
- 语言 基本 数据类型 运算
链接地址:https://www.31doc.com/p-2252270.html