《数据类型上》PPT课件.ppt

上传人:wuy****n92 文档编号:54720102 上传时间:2022-10-29 格式:PPT 页数:42 大小:193.50KB
返回 下载 相关 举报
《数据类型上》PPT课件.ppt_第1页
第1页 / 共42页
《数据类型上》PPT课件.ppt_第2页
第2页 / 共42页
点击查看更多>>
资源描述

《《数据类型上》PPT课件.ppt》由会员分享,可在线阅读,更多相关《《数据类型上》PPT课件.ppt(42页珍藏版)》请在得力文库 - 分享文档赚钱的网站上搜索。

1、1第第2章章 C语言基本数据类型、语言基本数据类型、运算符和表达式运算符和表达式2本讲要点本讲要点v计算机中数据的表示计算机中数据的表示vC C语言语言程序中的数据及常量类型程序中的数据及常量类型vC C语言基本语法单位语言基本语法单位v变量和变量和C C语言基本数据类型语言基本数据类型 对应教材的第对应教材的第2 2章内容章内容 3程序中的数据计算机科学家沃思(NikiklausWirth)提出的公式:程序=数据结构+算法即程序构成为:数据及对数据的处理方法;程序=算法+数据结构+程序设计方法、工具和环境类比:菜(程序)=菜原料(数据)+做菜方法(算法)+工具4菜谱名称香辣虾所属菜系川菜所属

2、类型中厨靓菜基本特点此菜酱香味浓,鲜香微辣,虾肉软嫩可口。基本材料活虾(1斤2两左右)土豆、冬笋、西芹、大葱调料:蟹酱、蟹油、味精、鸡精、白糖、干辣椒制作过程:第一步:大碗1支,簸箕1个,小碟2个;把土豆去皮切块儿,放入大碗中,冬笋切块,放入簸箕,西芹切条,放入小碟,大葱切段儿,少许放小碟。第二步:把活虾要清洗干净,然后在每一只虾的背上开一刀,以便后期制作入味儿。第三步:支炒锅,下适量蟹油,然后加入少许干辣椒段儿,翻炒两下,把虾和土豆块、冬笋块、西芹条、大葱段一起放入锅内,来回翻炒。第四步:待炒上几番以后,配料差不多熟了,下蟹酱,然后下少许味精、鸡精、白糖,继续翻炒。第五步:炒至虾身卷曲,颜色

3、变成橙红色,即虾已断生,即可出锅5/*the program is used to calculate var j and print I,f,a,j*/Main()int i=3,j;char a=a;j=i+5;printf(i=%d,f=%f,a=%c,%dn,i,f,a,j);6数据在计算机中的表示-基本概念l进制:生活中的10进制,60进制,12进制;计算机中采用2进制,16进制和8进制。例如:(123.23)10,(111.001)2l位权:一个数字符号处在数据中位置所代表的值例如:324.12=3*102+2*101+4*10+1*10-1+2*10-2提问:101101.101

4、=?7数据在计算机中的表示-基本概念101101.101=1*25+0*24+1*23+1*22+0*21+1*20+1*2-1+0*2-2+1*2-3=32+8+4+1+0.5+0.125=(45.625)10提问:10进制整数如何转换2进制?(除2取余)10进制小数如何转换为2进制?(乘2取整)(参考P21-23)例如:87=?0.135=?87.135=?8数据在计算机中的表示-运算算术运算提问:1001+001=?1001-001=?1011*101=?1011/101=?逻辑位运算(参考P25)位或:0V0=0;0V1=1V0=1V1=1位与:11=1;10=01=00=0位反:1=

5、0;0=1异或:00=0,11=0;01=1,10=1提问:110011100101=?9数据在计算机中的表示-16进制和8进制16进制(参考P26)表示符号:09、A、B、C、D、E、F;转换:自右往左,4位分节,例如例如:101,1101,0111=(?)168进制(参考P28)表示符号:07转换:自右往左,3位分节,例如:10,111,010,111=(?)810数据在计算机中的表示-字长和整数表示字长:字长:CPUCPU一次能处理的一次能处理的2 2进制数据的长度,与进制数据的长度,与CPUCPU的硬件有的硬件有关关整数分为:有符号数和无符号数整数分为:有符号数和无符号数无符号整数:字

6、长的所有位表示数值,例如:无符号整数:字长的所有位表示数值,例如:8 8位字长表示位字长表示范围:范围:02550255;即:;即:00000000111111110000000011111111提问:提问:1616位范围是多少?位范围是多少?有符号整数:字长的最高位是符号位,剩下是数值位。有符号整数:字长的最高位是符号位,剩下是数值位。8 8位字长表示范围:位字长表示范围:-127127-127127 即:即:11111111011111111111111101111111提问:提问:1616位无符号和有符号整数范围是多少位无符号和有符号整数范围是多少?112.2 程序中的数据-数据类型数据

7、定义:自然界中一切物理信号的符号表示数据定义:自然界中一切物理信号的符号表示数据分类:数据分类:常量和变量常量和变量数值和非数值数据数值和非数值数据数据类型:整型、实型、字符型等(不同语言中的类数据类型:整型、实型、字符型等(不同语言中的类型不同)型不同)存储类型;存储类型;C C语言中的存储据类型语言中的存储据类型(动态存储和静态存动态存储和静态存储储)122.2 程序中的数据-C语言数据类型语言数据类型基本类型构造类型指针类型空类型整型 字符型实型 枚举类型(浮点型)单精度型 双精度型数组类型 结构体类型 共用体类型数据类型图2.1C的数据类型13常量:在程序执行过程中其值保持不变的量称为

8、常量常量:在程序执行过程中其值保持不变的量称为常量常量类型常量类型:数值常量和符号常量数值常量和符号常量数值常量:整型常量数值常量:整型常量,实型常量实型常量,字符型常量字符型常量,例如例如:18,3.14,A:18,3.14,A符号常量是用符号名来表示常量,符号名一般用大写形式符号常量是用符号名来表示常量,符号名一般用大写形式符号常量在符号常量在C C中的定义方法:中的定义方法:#define#define 例如:例如:#define PI 3.14159#define PI 3.14159#define N 100#define N 100#define NAME “zhang san”#

9、define NAME “zhang san”2.2 程序中的数据-常量和变量(参考常量和变量(参考P38)142.2 程序中的数据-整型常量表示整型常量表示整型常量:用十进制数、八进制数和十六进制数三整型常量:用十进制数、八进制数和十六进制数三种形式表示种形式表示C C语言规定:语言规定:八进制整数以数字八进制整数以数字“0”开头的数字序列,如开头的数字序列,如0733,0732;十六进制整数以十六进制整数以0 x开头的数字序列,如开头的数字序列,如0 xffff,0 x1111,0 x38十进制整数如:十进制整数如:123,-369,78,168L提问:提问:123=0123=0 x123

10、对吗?对吗?15例2.2#definePRICE30main()intnum,average,total;num=10;total=num*PRICE;average=PRICE/num;printf(total=%d,%d,total,average);16 2.2 程序中的数据-实型常量的表示实型常量的表示实型实型常量:有小数和指数两种表示格式常量:有小数和指数两种表示格式 日常数据:日常数据:,小数表示:小数表示:32.50.00325 指数表示:指数表示:3.25e13.25e-3 32.5e032.5e-4 0.325e3 注:指数书写时,注:指数书写时,e(或者(或者E)前必须有数

11、字,)前必须有数字,e后的指数必须为整数后的指数必须为整数P42例题例题2-19说明实数的精度问题说明实数的精度问题建议不必看建议不必看P41-42有关实数的存储内容有关实数的存储内容172.2 程序中的数据-字符常量的表示字符常量的表示(参考参考42)42)单撇号表示法:用一对单撇号表示法:用一对单单撇号括起来的一撇号括起来的一个字符,如个字符,如a、c、A、?等单撇号中的单个字符,但不能是单撇号等单撇号中的单个字符,但不能是单撇号或反斜杠:即或反斜杠:即、都是不合法都是不合法的的用转义字符表示法:用转义字符表示法:b、367、x6d问题提出:问题提出:101 和和A是同一字符是同一字符?1

12、8转义字符表示法:转义字符表示法:字符常量表示字符常量表示字符形式ntbvr字符形式fdddxhh含义换行横向跳格(跳到下一个输出区域)竖向跳格退格回车含义走纸换行反斜杠字符单引号1至3位八进制数所代表的字符1至2位十六进制数所代表的字符表表2.12.1 转义字符表转义字符表利用ddd xhh转义字符,可以表示任何ASCII码字符192.2 程序中的数据-字符串常量的表示字符串常量的表示字符串常量字符串常量:用双撇号括起来的零个或多个字用双撇号括起来的零个或多个字符序列符序列,如如:“zhang san”、“student”,“x”,”hello”等,字符串总的字符数称为字符等,字符串总的字符

13、数称为字符串的长度串的长度系统在每一个字符串的末尾都自动加一个系统在每一个字符串的末尾都自动加一个“字字符串结束标志符串结束标志”,即,即0问题提出:问题提出:“x”和和x在内存中表示相同吗在内存中表示相同吗?202.3 C C语言的基本语法单位语言的基本语法单位标识符概念标识符概念:是指用来表示变量名、符号常量名、函数名、数组名、文件名的字符序列。C语言中各种名称都是由标识符来表示的。标识符必须满足以下规律:标识符必须满足以下规律:1、第一个字符必须是字母或下划线。2、其它部分必须由字母、下划线或数字组成。3、大小写字母表示不同意义。4、一般系统能识别的标识符最大长度是32位。5、标识符不能

14、使用C中的关键字。简言之,标识符是以字母或下划线打头的,后随字母或下划线或数字组成的字母下划线数字串。212.3 2.3 C C语言的基本语法单位语言的基本语法单位C C语言中的关键字语言中的关键字(32(32个个):):auto break case char const continue default do double else enum extern float for goto if int long register return short signed sizeof static struct switch typedef union unsigned void volati

15、e while C C语言中的编译预处理命令语言中的编译预处理命令(12(12个个):):define endif elif error line include ifdef ifndef program undef if else 222.4 2.4 变量变量-内涵和定义格式内涵和定义格式变量:变量:在程序运行过程中不断改变的量称为变量。变量用变量名,即标识符来表示,在C语言中要求对所有的变量“先定义,后使用”一个变量代表内存中的一定大小的存储单元一个变量代表内存中的一定大小的存储单元变量定义的一般格式是:变量定义的一般格式是:;例如:int sum,x1,x2;float score_1;

16、23 2.4 2.4 变量变量:变量在内存的表示变量在内存的表示内存拓扑结构图数据地址内存的概念:内存的概念:微型计算机的内存地址用微型计算机的内存地址用16进制编码表示;进制编码表示;存储单元为字节存储单元为字节:一个字节由一个字节由8位二进制码组成位二进制码组成;存储单元包括两个概念:存储单元包括两个概念:存储地址(或名称)和存储数据存储地址(或名称)和存储数据(存存储内容)储内容)Ex:char;int b;b=6;47F87.ab47F9447F9560000000000000110242.4 2.4 变量变量-变量在内存的表示变量在内存的表示内存的特点:内存的特点:当一个数据存入内存

17、单元中,只要没有新的数当一个数据存入内存单元中,只要没有新的数据存入,该内存单元总是保存这个数据,有据存入,该内存单元总是保存这个数据,有“取之不尽取之不尽”之意。之意。当一个新数据存入该内存单元中,则该内存单当一个新数据存入该内存单元中,则该内存单元内容将被新数据取代,并且,不再记录该单元内容将被新数据取代,并且,不再记录该单元曾经存储的数据。元曾经存储的数据。内存的记忆力需要电来维持内存的记忆力需要电来维持,没有电能就没有记没有电能就没有记忆力忆力25 整型变量,整型变量,分为四种类型:(1)基本型,以int表示(2)短整型,以shortint或者short表示(3)长整型,以longin

18、t或者long表示(4)无符号型,以unsignedint(无符号整型)、unsignedshort(无符号长整型)和unsignedlong(无符号短整型)表示 2.4 2.4 变量变量-C语言语言整型变量整型变量(参考参考P43)26 整型变量定义整型变量定义如inta,b;longc,d,f;unsignede;变量的初始化变量的初始化:在变量定义时预先设置初值如inta3;intx,y,z3;inti3,j3,k3;提问:#define N 100和 inta3的区别?27C语言标准没有规定整型变量在计算机内存中所占的字节数,它与具体的机器、操作系统和编译系统有关 IBMPC所占位数

19、数的范围int16-32768+32767short16-32768+32767long32-2147483648+2147483647unsignedint16065535unsignedshort 16065535unsignedlong320429496729528main()inta,b,c,d;/*指定变量a、b、c、d为整型*/unsignedu;/*指定变量u为无符号整型*/a=12;b=-24;u=10;c=a+u;d=b+u;printf(a+u=%d,b+u=%dn,c,d);程序运行显示:a+u=22,b+u=-1429#include”stdio.h”main()int

20、x;unsignedy;longz;x=65535;y=65535;z=65535;printf(“x=%dn,y=%un,z=%ldn”,x,y,z);printf(“x=%ld”,x);30结果为:x=-1y=65535z=65535x=建议:P45例2-20不必看31实型变量:实型变量:分为单精度(float)双精度(double)两种类型单精度占内存4个字节。双精度占内存8个字节其中:float型变量只能接受7位有效数字double型变量只能接受15位有效数字2.4 2.4 变量变量-实型变量实型变量(参考参考P48)单精度实型变量float4字节(32位)双精度实型变量double8

21、字节(64位)32实型变量定义:实型变量定义:float x float x;doubley,z;变量的初始化:变量的初始化:floatx,;doubley;2.4 2.4 变量变量-实型变量实型变量(参考参考P48)332.4 2.4 变量变量-字符变量字符变量(参考参考P48)P48)字符变量:字符变量:在内存中占一个字节一个字节,只能存放一个字符字符在内存中以ASCII码形式存放 例如:字符A在内存中存放的是65 字符f在内存中存放的是102字符变量定义字符变量定义 char x1,x2;字符变量初始化字符变量初始化 char ch1x;char ch2y;提问:ch1=“x”对吗?34

22、字符数据在内存中的存储形式 字符ASCIIA0 x40(65)B0 x41(66)a0 x61(97)a0 x62(98)00 x30(48)10 x31(49)35main()charc1,c2;c1=a;c2=b;c1=c1-32;c2=c2-32;printf(%c%c,c1,c2);36课堂练习编写一个程序,将输入的数字字符转换 为相应的数字输出输入三个浮点数,找出其中的最大值输入一个字符,输出该字符的字符码,该字符的前导字符(码减少1)及字符的后续字符(字符码增加1)及字符码37题参考答案(错误)includemain()charc;intd;printf(“输入一个数字字符:”);

23、scanf(“%d”,c);d=c-0;printf(“对应的数字为%c:nn”,d);请指出错误38题参考答案(正确)#includemain()charc;intd;printf(“输入一个数字字符:”);scanf(“%c”,&c);d=c-0;printf(“对应的数字为%d:nn”,d);39题参考答案#include main(void)float a,b,c,m;printf(input three numbers:);scanf(%f%f%f,&a,&b,&c);m=(ab)?a:b;m=(mc)?m:c;printf(max=%.2fn,m);40题2.3 参考答案includemain(void)int c,c1,c2;printf(input a character:);c=getchar();c1=c-1;c2=c+1;printf(The value of%c is%4dn,c,c);printf(%c:%d-%c:%d-%c:%dn,c1,c1,c,c2,c2);41本讲重点小结l数的2、8、16进制转换l常量的表示,特别是符号常量表示l变量内涵和外延;l各种变量定义方法.l作业见教学大纲.另外,教材的节可以不作重点看42下讲内容l运算符lC表达式l与宏定义参考教材的第2章,P65-84,希望大家做好预习祝大家好胃口

展开阅读全文
相关资源
相关搜索

当前位置:首页 > 教育专区 > 初中资料

本站为文档C TO C交易模式,本站只提供存储空间、用户上传的文档直接被用户下载,本站只是中间服务平台,本站所有文档下载所得的收益归上传人(含作者)所有。本站仅对用户上传内容的表现方式做保护处理,对上载内容本身不做任何修改或编辑。若文档所含内容侵犯了您的版权或隐私,请立即通知得利文库网,我们立即给予删除!客服QQ:136780468 微信:18945177775 电话:18904686070

工信部备案号:黑ICP备15003705号-8 |  经营许可证:黑B2-20190332号 |   黑公网安备:91230400333293403D

© 2020-2023 www.deliwenku.com 得利文库. All Rights Reserved 黑龙江转换宝科技有限公司 

黑龙江省互联网违法和不良信息举报
举报电话:0468-3380021 邮箱:hgswwxb@163.com