C语言课件chap06.ppt
《C语言课件chap06.ppt》由会员分享,可在线阅读,更多相关《C语言课件chap06.ppt(75页珍藏版)》请在三一办公上搜索。
1、Chap 6 数据类型和表达式,6.1 数据的存储和基本数据类型 6.2 常量和变量 6.3 数据的输入和输出6.4 类型转换6.5 表达式,本章要点,C语言的基本数据类型有哪些?各种基本数据类型的常量和变量是怎样定义的?C语言有哪些表达式?各种表达式的求解规则是什么?,数据类型和表达式,数据类型基本数据类型整型int实型(浮点型)float double字符型char构造数据类型数组、结构、联合、枚举指针类型空类型运算:对数据的操作运算符数据 表达式,6.1 数据的存储和基本数据类型,6.1.1 数据的存储整型、实型、字符型数据的存储6.1.2 基本数据类型整型、实型、字符型,6.1.1 数
2、据的存储整型数据,设整数在内存中用2个字节存储1 000 0001 1000 00010 000 0001 1000 0001,符号位1:负数0:正数,数值的表示方法原码 反码 补码,正数的原码、反码和补码相同1 的补码 0 000 0000 0000 000132767 的补码 0 111 1111 1111 1111(215-1,2个字节的存储单元能表示的最大正数)负数的原码、反码和补码不同-1原码 1 000 0000 0000 0001 反码 1 111 1111 1111 1110 原码取反补码 1 111 1111 1111 1111 反码1,原码 反码 补码,32767补码 0
3、111 1111 1111 1111-32767原码 1 111 1111 1111 1111反码 1 000 0000 0000 0000 原码取反补码 1 000 0000 0000 0001 反码1-32768=-32767-1补码 1 000 0000 0000 0000(2个字节的存储单元能表示的最小负数),-32768-1 0 1 32767,32767 0111 1111 1111 1111 1 0000 0000 0000 0001 0 0000 0000 0000 0000-1 1111 1111 1111 1111-2 1111 1111 1111 1110-32767 1
4、000 0000 0000 0001-32768 1000 0000 0000 0000,32767+1=32768?1000 0000 0000 000=-32768-32768-1=-32769?0111 1111 1111 1111=32767,实型和字符型数据的存储,实型数据的存储-1.2345e+02符号位 阶码 尾数字符型数据的存储一个字节存储ASCII码,5.1.2 基本数据类型,整型有符号整型 无符号整型 数据长度int unsigned int 16或32位short int unsigned short int 16位long int unsigned long int 3
5、2位字符型char 8位实型(浮点型)单精度浮点型 float 32位双精度浮点型 double 64位,基本数据类型整型,扩展的整数类型:short long unsigned int有符号整型 无符号整型 数据长度int unsigned int 16或32位short int unsigned short int 16位long int unsigned long int 32位,有符号 short 1 000 0000 0000 0000-32768-2150 111 1111 1111 1111 32767 215-1无符号 unsigned short0000 0000 0000
6、0000 01111 1111 1111 1111 65535 216-1,整数类型的取值范围,int 32位-2147483648 2147483647-231 231-1short int 16位-32768 32767-215 215-1long int 32位-2147483648 2147483647-231 231-1unsigned int 32位 0 4294967295 0 232-1unsigned short int 16位 0 65535 0 216-1unsigned long int 32位 0 4294967295 0 232-1,基本数据类型字符型,字符具有数值
7、特征A 65 0100 0001 整型变量和字符变量的定义和赋值可以互换【ASCII码范围】char c;c=A;或c=65;,int i;i=65;或i=A;,基本数据类型实型,实型(浮点型)数据单精度浮点型 float双精度浮点型 double 存储 数据精度 取值范围(有效数字)float 4字节 七/八位(10-38 1038)double 8字节 十六位(10308 10308),数据精度和取值范围,数据精度 与 取值范围是两个不同的概念:float x=1234567.89;虽在取值范围内,但无法精确表达。float y=1.2e55;y 的精度要求不高,但超出取值范围。并不是所有
8、的实数都能在计算机中精确表示 实型常量的类型都是double,1234567.80,6.2.1 常量符号常量整型常量、实型常量、字符型常量6.2.2 变量 变量的定义和使用,6.2 常量和变量,6.2.1 常量,常量的类型通常由书写格式决定123(整型)4.56(实型)A(字符型)符号常量:用一个标识符代表一个常量:PI:EPS,例5-1 求球的表面积和体积,#include#define PI 3.14int main(void)double r,s,v;printf(“Enter r:);scanf(%lf,加分号?,通常用大写字母,符号常量的优点,#include int main(vo
9、id)double r,s,v;scanf(%lf,#include#define PI 3.14int main(void)double r,s,v;scanf(%lf,3.14159,3.14159,3.14159,整型常量(整数),整数的表示三种表现形式:十进制整数:正、负号,09,首位不是0例:10,123八进制整数:正、负号,07,首位是0例:010,012316进制整数:正、负号,09,a-f,A-F,前缀是0 x,0X例:0 x10,0 x123,整数的表示,123=01111011(B)二进制=173(O)八进制=7B(X)十六进制123 0173 0 x7b16 020 0
10、x1010 012 0XA10 010 0 x10不能超出整型数据的取值范围比长整型数还要大的数只能用实数来表示,整数的类型,判断整数的类型整数后的字母后缀123L long123U unsigned123LU unsigned long整数的值,实型常量(实数、浮点数),实数的表示浮点表示法0.123 123.4 12.12科学计数法6.026E-27 1.2e+30 1E-5实数的类型double,字符型常量,字符常量a A 9+$ASCII字符集列出所有可用的字符(256个)每个字符:惟一的次序值(ASCII 码)0-9 升序排列A-Za-z,字符的数值特征,字符ASCII 码对字符进行
11、运算 对字符的ASCII 码进行运算例如:A 的 ASCII 码 65则:A+1=66,对应字符 B,区分数字字符和数字 1 1,转义字符,反斜杠后跟一个字符或数字字符常量,代表一个字符 n 101 x41 A所有字符都可以用转义字符表示,6.2.2 变量,在程序运行过程中,其值可以被改变的量。变量必须先定义,后使用定义变量时要指定变量名和数据类型变量应该先赋值,后引用,变量的定义,变量名:合法的标识符小写字母;见名知义变量的类型:在定义时指定变量定义的一般形式类型名 变量名表;int celsius,fahr;float x;double area,length;变量名代表内存中的一个存储单
12、元,存放该变量的值该存储单元的大小由变量的数据类型决定,变量的使用,必须先定义,后使用应该先赋值,后引用变量的赋值方法变量赋初值:在定义变量时对它赋值int a=5,b=3;赋值表达式int a,b;a=5;b=3;输入int a,b;scanf(%d%d,6.3.1 整型数据的输入和输出6.3.2 实型数据的输入和输出6.3.3 字符型数据的输入和输出,6.3 数据的输入和输出,6.3.1 整型数据的输入输出,printf(格式控制,输出参数1,.,输出参数n);scanf(格式控制,输入参数1,.,输入参数n);格式控制说明%十进制 八进制 十六进制int%d%o%xlong%ld%lo%
13、lxunsigned%u%o%xunsigned long%lu%lo%lx,例6-2(1)输出整型数据,#include int main(void)printf(%d,%o,%xn,10,10,10);printf(%d,%d,%dn,10,010,0 x10);printf(%d,%xn,012,012);return 0;,10,12,a10,8,1610,a,例6-2(2)输入整型数据,#include int main(void)int a,b;printf(input a,b:);scanf(%o%d,input a,b:17 1715 17f,17,%x%d,6.3.2 实型数
14、据的输入和输出,输入 scanf()float:%f 或%e 以小数或指数形式输入一个单精度浮点数double:%lf或%le 以小数或指数形式输入一个双精度浮点数输出 printf()float 和double使用相同的格式控制说明%f以小数形式输出浮点数,保留6位小数%e以指数形式输出,实型数据输出示例,#include int main(void)double d=3.1415926;printf(%f,%en,d,d);printf(%5.3f,%5.2f,%.2fn,d,d,d);return 0;,3.141593,3.14159e+003.142,3.14,3.14,一共5位,小
- 配套讲稿:
如PPT文件的首页显示word图标,表示该PPT已包含配套word讲稿。双击word图标可打开word文档。
- 特殊限制:
部分文档作品中含有的国旗、国徽等图片,仅作为作品整体效果示例展示,禁止商用。设计者仅对作品中独创性部分享有著作权。
- 关 键 词:
- 语言 课件 chap06
链接地址:https://www.31ppt.com/p-5384437.html