[工程科技]第2章-C语言基本数据类型及运算课件.ppt
《[工程科技]第2章-C语言基本数据类型及运算课件.ppt》由会员分享,可在线阅读,更多相关《[工程科技]第2章-C语言基本数据类型及运算课件.ppt(51页珍藏版)》请在淘文阁 - 分享文档赚钱的网站上搜索。
1、第第2 2章章 C C语言基本数据类型及运算语言基本数据类型及运算第第2 2章章 C语言基本数据类型语言基本数据类型及运算及运算第第2 2章章 C C语言基本数据类型及运算语言基本数据类型及运算2.1 C2.1 C语言的数据类型语言的数据类型 数据类型 基本类型 整型 实型 字符型 带符号整型(简称整型) 带符号短整型(简称短整型) 带符号长整型(简称长整型) 带符号整型 无符号整型 无符号整型 无符号短整型 无符号长整型 单精度型 双精度型 空类型 构造类型 指针型 枚举型 数组型 结构型 共用型 第第2 2章章 C C语言基本数据类型及运算语言基本数据类型及运算2.2 常量常量 常量是程序
2、中其值不发生变化的数据。常量是程序中其值不发生变化的数据。 2.2.1 2.2.1 整型常量整型常量 进进 制制 数数 表表 示示 方方 式式 举举 例例 八进制整型八进制整型 由数字由数字0 0开头开头 034034,065065,057057十进制整型十进制整型 如同数学中的数字如同数学中的数字 123123,-78-78,9090十六进制整型十六进制整型 由由0X0X或或0 x0 x开头开头 0 0 x23,0Xff,0 xacx23,0Xff,0 xacp31p31第第2 2章章 C C语言基本数据类型及运算语言基本数据类型及运算限制在本区间使用限制在本区间使用1基本整型常量和短整型基
3、本整型常量和短整型-3276832767。 2长整型常量长整型常量-21474836482147483647,整数整数后面加上字母后面加上字母l(或或 L)。 3无符号整型常量表示的数据全部是正数,没无符号整型常量表示的数据全部是正数,没有符号位。有符号位。 int int , short intshort int,long int long int ,unsigned int unsigned int unsigned short intunsigned short int,unsigned long intunsigned long int第第2 2章章 C C语言基本数据类型及运算语言基
4、本数据类型及运算实型数又称实数或浮点数,实型数又称实数或浮点数,只用在十进制数中。只用在十进制数中。 表示法如下表示法如下: :3.14 .9999 -3.14159 3.14 .9999 -3.14159 0.30.3e05 6.89E-5 9.99e+16e05 6.89E-5 9.99e+166.89E-5 6.89E-5 表示表示的是数学算式中的的是数学算式中的:6.896.891010-5-5。类类 型型 二进制位数二进制位数 有效数字有效数字 数数 值值 范范 围围Float 32 7 Float 32 7 10 10-38-3810103838Double 64 15Double
5、 64 1516 1016 10-308-3081010308308p31p31 2.2.2 实型常量实型常量 第第2 2章章 C C语言基本数据类型及运算语言基本数据类型及运算 2.2.3 字符常量字符常量 字符常量是用单引号括起来的一个字符,它在计算字符常量是用单引号括起来的一个字符,它在计算机存储中占一个字节。机存储中占一个字节。x,a,A,b,$,# x,a,A,b,$,# 2.2.4 2.2.4 符号常量符号常量定义格式为:定义格式为:#define 符号常量符号常量 字符串字符串 # #define PI 3.14159define PI 3.14159#define NULL 0
6、#define NULL 0#define EOF 1#define EOF 1定义后当一般常量使用定义后当一般常量使用 p32p32第第2 2章章 C C语言基本数据类型及运算语言基本数据类型及运算【例【例2.12.1】求一个圆柱体体积,用符号常量代替】求一个圆柱体体积,用符号常量代替。 #include stdio#include .h#define PI 3.14159#define PI 3.14159main()main() float r,h,v; float r,h,v; scanf scanf( (%f,%f%f,%f,&r,&h);,&r,&h); v= v=PIPI* *r
7、 r* *r r* *h;h; printf printf( (Volume=%fVolume=%f,v);,v); 第第2 2章章 C C语言基本数据类型及运算语言基本数据类型及运算2.2.5 字符串常量字符串常量 字符串常量是用一对双引号括起来的零个或多个字符序列。字符串常量是用一对双引号括起来的零个或多个字符序列。 “I am a studentI am a student“ ,”x x“ ,” 都为字符串常量。都为字符串常量。在内存中存储时,设定一个结束符在内存中存储时,设定一个结束符0。字符串的长度应为实际长度。字符串的长度应为实际长度。注意:注意: 0和和0不同,不同,0是编码为是
8、编码为0的字符,的字符, 而而0则是数字则是数字 0 所对应的字符所对应的字符 在字符串中有转义字符。在字符串中有转义字符。例如:例如:“ab072cdef” 长度为长度为7 ; “n33abcd” 长度为长度为8第第2 2章章 C C语言基本数据类型及运算语言基本数据类型及运算2.3 2.3 变量变量 变量是指在程序运行过程中其值可以发生变化的量。变量是指在程序运行过程中其值可以发生变化的量。 2.3.1变量的数据类型变量的数据类型及其定义及其定义1.1.变量的数据类型变量的数据类型( (基本基本) ) 字符型、整型、单精度实型、双精度实型,它们字符型、整型、单精度实型、双精度实型,它们分别
9、用关键字分别用关键字char、int、float、double进行定义。进行定义。另外,还有无符号整型和无值型,它们分别用关键另外,还有无符号整型和无值型,它们分别用关键字字unsigned和和void进行定义。进行定义。见表见表2,2,表表3 3 p33第第2 2章章 C C语言基本数据类型及运算语言基本数据类型及运算数据类型数据类型 变量列表;变量列表; 系统默认类型系统默认类型intint int int a, b, c a, b, c; char ch, strchar ch, str; double f_1, f_2double f_1, f_2; float x, y, z, _w
10、1, _w2float x, y, z, _w1, _w2;unsigned intunsigned int u_1, u_2 u_1, u_2; long intlong int g1, g2 g1, g2;第第2 2章章 C C语言基本数据类型及运算语言基本数据类型及运算2.3.2 2.3.2 变量的存储类型及定义变量的存储类型及定义1. 变量的存储类型变量的存储类型 CPU寄存器寄存器 ( (registerregister) ) 内存内存 ( (内存中又分为两个区域,即为静态存储区内存中又分为两个区域,即为静态存储区和动态存储区。和动态存储区。) )2. 2. 变量的存储类型的定义变量
11、的存储类型的定义 存储类型存储类型 数据类型数据类型 变量列表;变量列表; 系统默认类型修饰为系统默认类型修饰为auto 类型(自动型)类型(自动型) p34p34 第第2 2章章 C C语言基本数据类型及运算语言基本数据类型及运算(1) 自动变量自动变量 intint a, b, c a, b, c; char ch, strchar ch, str; double f_1, f_2double f_1, f_2; float x, y, z, _w1, _w2float x, y, z, _w1, _w2;unsigned intunsigned int u_1, u_2 u_1, u_2
12、; long intlong int g1, g2 g1, g2;第第2 2章章 C C语言基本数据类型及运算语言基本数据类型及运算【例【例2.22.2】定义自动整型和字符型变量。】定义自动整型和字符型变量。# #includestdioinclude.hmain()main() auto char c1,c2; auto int auto char c1,c2; auto int i1,i2; i1,i2; scanf scanf( (%d,%d%d,%d,&i1,&i2);,&i1,&i2); c1=i1; c2=i2; c1=i1; c2=i2; printf printf( (%c,%
13、cn%c,%cn,c1,c2);,c1,c2); printf printf( (%d,%dn%d,%dn,c1,c2);,c1,c2); 运行时输入:运行时输入:9797,9898运行结果为:运行结果为:a,ba,b 97,98 97,98第第2 2章章 C C语言基本数据类型及运算语言基本数据类型及运算寄存器型变量的数据是存放在寄存器型变量的数据是存放在CPU 的通用寄存器中,的通用寄存器中,可不通过内存来直接访问。可不通过内存来直接访问。Turboc C允许定义的寄允许定义的寄存器型变量一般以存器型变量一般以2个为宜。动态管理使用个为宜。动态管理使用.【例【例2.32.3】函数内部定义寄
14、存器变量。】函数内部定义寄存器变量。# #include stdioinclude .hmain()main() register b; b=3; register b; b=3; printf printf( (b=%db=%d,b);,b); 运行结果为:b=3第第2 2章章 C C语言基本数据类型及运算语言基本数据类型及运算(3) (3) 静态变量静态变量 静态变量存放在静态内存数据区中静态变量存放在静态内存数据区中特点特点: :静态变量在变量定义时就分配了固定的内存单元并根静态变量在变量定义时就分配了固定的内存单元并根据所定义的数据类型存入默认值,在程序运行中一直占用内据所定义的数据类
15、型存入默认值,在程序运行中一直占用内存单元不释放,直到程序运行结果后。存单元不释放,直到程序运行结果后。分类分类: :静态变量又分为静态局部变量和静态全局变量。静态变量又分为静态局部变量和静态全局变量。 静态局部变量静态局部变量 在函数或复合语句中定义的变量为静态变量称为静态局在函数或复合语句中定义的变量为静态变量称为静态局部变量部变量. .特点特点: :该变量在其函数中或复合语句中有效。静态局部变量该变量在其函数中或复合语句中有效。静态局部变量所在的函数无论调用多少次,所在的函数无论调用多少次,静态局部变量赋值语句只执行静态局部变量赋值语句只执行一次一次,但能够保留住函数多次调用的中间结果。
16、,但能够保留住函数多次调用的中间结果。p35p35第第2 2章章 C C语言基本数据类型及运算语言基本数据类型及运算【例【例2.42.4】静态局部变量的使用】静态局部变量的使用f()f() static intstatic int a=1; a=1; auto b=0; auto b=0; a=a+1; a=a+1; b=b+1; b=b+1; printf printf( (a=%d,b=%dna=%d,b=%dn,a,b);,a,b); 运行结果为:运行结果为: a=2,b=1a=2,b=1a=3,b=1a=3,b=1a=4,b=1a=4,b=1main()main() f(); f();
17、 f(); f(); f(); f(); 第第2 2章章 C C语言基本数据类型及运算语言基本数据类型及运算 静态全局变量静态全局变量【例【例2.52.5】有一程序文件】有一程序文件f1.c,f1.c,在程序中使用了静态全局在程序中使用了静态全局变量。变量。# #include stdioinclude .hstatic intstatic int a=1; a=1;main() main() auto b=0; auto b=0; a=a+1; a=a+1; b=b+1; b=b+1; printf printf( (nana=%d,b=%dn=%d,b=%dn,a,b);,a,b); 运行
18、结果为:运行结果为:a=2,b=1 a=2,b=1 第第2 2章章 C C语言基本数据类型及运算语言基本数据类型及运算(4) (4) 外部变量外部变量TubroTubro C C系统规定在某一个源程序中定义的全局变量,其它系统规定在某一个源程序中定义的全局变量,其它的多个文件可以使用,这就是所说的程序间的数据交流。的多个文件可以使用,这就是所说的程序间的数据交流。 定义方法定义方法: :使用关键字使用关键字“extern”extern”定义的变量称为外部变量定义的变量称为外部变量(系统默认存储类型),在函数体之外定义。(系统默认存储类型),在函数体之外定义。注意注意: :如果全局变量如果不加如
19、果全局变量如果不加“static”static”限制,都是外部变限制,都是外部变量。量。外部和内部变量同名的处理外部和内部变量同名的处理: : 外部变量如果与局部变量同名,在局部范围内局部变量外部变量如果与局部变量同名,在局部范围内局部变量优先。(具体应用见第优先。(具体应用见第5 5章)章)p37p37第第2 2章章 C C语言基本数据类型及运算语言基本数据类型及运算变量定义可以出现在程序中的三个地方:变量定义可以出现在程序中的三个地方: 在函数的内部在函数的内部 在函数的参数中在函数的参数中 在所有函数的外部在所有函数的外部2.3.3 变量的初始化变量的初始化存储类型符存储类型符 数据类型
20、符数据类型符 变量变量1=1=初值初值1 1,变量,变量2=2=初初值值2 2 ;static int a=1; auto intstatic int a=1; auto int a=0,b=-3; a=0,b=-3; p37p37第第2 2章章 C C语言基本数据类型及运算语言基本数据类型及运算 2.3.4 2.3.4 基本数据类型的使用基本数据类型的使用1. 1. 整型变量整型变量【例【例2.62.6】内存单元中同一个数据按有符号和无符号格式】内存单元中同一个数据按有符号和无符号格式输出的情况。输出的情况。# #include stdioinclude .hmain()main() uns
21、igned int unsigned int a=65535; a=65535; int int b=a; b=a; printf printf( (a=%una=%un,a);,a); printf printf( (b=%dnb=%dn,b);,b); printf printf( (a=%d,%o,%x,%una=%d,%o,%x,%un,a,a,a,a);,a,a,a,a); p37p37运行结果为:运行结果为:a=65535a=65535b=-1b=-1a=-a=-1,177777,ffff1,177777,ffff,65535,65535第第2 2章章 C C语言基本数据类型及运算
22、语言基本数据类型及运算【例【例2.72.7】超出基本整型数据的最大允许值。】超出基本整型数据的最大允许值。# #include stdioinclude .hmain()main() int int a,b; a,b; a=32767; a=32767; b=32768; b=32768; printf printf( (%d,%d%d,%d,a,b);,a,b); p38p38第第2 2章章 C C语言基本数据类型及运算语言基本数据类型及运算实型变量分为单精度(实型变量分为单精度(floatfloat型)、双精度(型)、双精度(doubledouble型)型)和长双精度型(和长双精度型(lo
23、ng doublelong double型)型)【例【例2.8】输出双精度数。】输出双精度数。# #include stdioinclude .hmain()double x,y; main()double x,y; x=1111111111111.111111111; x=1111111111111.111111111; y=2222222222222.222222222;y=2222222222222.222222222; printf printf( (%fn%fn,x+y);,x+y); 实型变量实型变量 第第2 2章章 C C语言基本数据类型及运算语言基本数据类型及运算字符字符型变量
24、型变量 字符型变量在计算机内存储的是其字符对应的字符型变量在计算机内存储的是其字符对应的ASCIIASCII码值码值. .例如:例如:char c1=A; 例例2.92.9】输入英文字母】输入英文字母A,转换成小写字母输出。,转换成小写字母输出。# #include stdioinclude .hmain()main() char c1,c2; c1=getchar( ) char c1,c2; c1=getchar( ) putchar(c1); c2=c1+32; putchar(c1); c2=c1+32; putchar putchar(c2);(c2); 第第2 2章章 C C语言基
25、本数据类型及运算语言基本数据类型及运算2.5 运算符及表达式运算符及表达式 C 语言运算符 图 2.5 C 语言运算符分类 基本运算符 条件运算符( ? : ) 基本算术运算符( +,-,*,/,% ) 增 1 减 1 运算符( +,- ) 基本赋值运算符( = ) 关系运算符( ,=,=,!= ) 逻辑运算符( !,&,| ) 算术自反赋值运算符( +=,-=,*=,/=,%= ) 位逻辑运算符( ,&,|, ) 指针运算符 赋值运算符 逗号运算符( , ) 专用运算符 成员运算符 强制运算符 下标运算符 数据长度运算符( sizeof ) 位运算符 算术运算符 位移位运算符( ) 位自反赋
- 配套讲稿:
如PPT文件的首页显示word图标,表示该PPT已包含配套word讲稿。双击word图标可打开word文档。
- 特殊限制:
部分文档作品中含有的国旗、国徽等图片,仅作为作品整体效果示例展示,禁止商用。设计者仅对作品中独创性部分享有著作权。
- 关 键 词:
- 工程科技 工程 科技 语言 基本 数据类型 运算 课件
限制150内