第二讲 数据与计算基础.ppt





《第二讲 数据与计算基础.ppt》由会员分享,可在线阅读,更多相关《第二讲 数据与计算基础.ppt(88页珍藏版)》请在淘文阁 - 分享文档赚钱的网站上搜索。
1、第二讲 数据与计算基础授课老师授课老师:周雪忠助教助教:李星,孟志昌所在学院所在学院:计算机与信息技术学院授课时间授课时间:4/23/2023Email:2学习程序设计语言与学习外语n具有相同之处n需要学习一些词汇以知道每个词的意思n需要学习语法,以便用这些词汇组织成句子n需要学习一些常见习惯用语来理解别人所说的东西3本讲内容本讲内容n包括第二章与第三章(常量与变量)部分内容n基本字符、标识符、关键字n常量与变量(初步)nC语言基本数据类型nC语言数据的内外部表示n运算符、表达式与计算n现成计算功能与函数库初步基本字符、标识符、关键字5C语言基本字符集nC语言程序是基本字符的序列,C语言程序的
2、基本字符包括n数字 09n大小写字母 az,AZn其他可打印(显示)的符号如标点符号,运算符号和括号等(29个)n!%&*()_-+=:;(双引号)(单引号),.?/|n特殊字符n空白字符:空格、换行、制表符,起分隔作用。n增删空白一般不影响程序的意义6C语言程序示例n#include int main()/*求两数之和*/int a,b,sum;/*变量定义*/a=123;b=456;sum=a+b;/*求和*/printf(”Sum is%d.n”,sum);/*输出*/return 0;基本字符集不包括:注释内容及双引号”中的字符。-注释内容不是机器所识别代码的一部分,是让人看的;-双引
3、号中的内容是一种特殊类型的C程序数据。请注意其中的空白字符:空格,Tab(制表符)和换行符。使程序的结构更清楚。7标识符标识符n是是C语言中用来对程序中的各种对象如变量、语言中用来对程序中的各种对象如变量、符号常量、函数、数组等命名的有效字符符号常量、函数、数组等命名的有效字符序列统称为标识符。序列统称为标识符。nC语言的标识符形式n以字母开头的字母或数字的连续序列,n下划线”_”看作字母nC的标识符对字母大小写敏感,例na和A是不同字母nABC、Abc、AbC和abc是4个不同标识符8标识符示例nC语言合法标识符示例nabcd,sin,Beijing,C_Programming,a3b06,
4、a3b400n,while,_f2048,sx211_12a,abc_,_ n例nx3+5,其中x3是一个标识符nab_400+xy_/x,其中ab_400,xy_和x是标识符n不合法标识符示例n9a,123X,a b19找出C程序中的标识符int max(int x,int y);/*函数声明函数声明*/int main()int a,b,c;char A;scanf(”%d,%d”,&a,&b);c=max(a,b);/函数调用。函数调用。printf(”max=%d”,c);return 0;int max(int x,int y)/*定义定义max函数函数*/int z;if(x y)
5、z=x;elsez=y;return(z);int max(int x,int y);/*函数声明函数声明*/int main()int a,b,c;char A;scanf(”%d,%d”,&a,&b);c=max(a,b);/函数调用。函数调用。printf(”max=%d”,c);return 0;int max(int x,int y)/*定义定义max函数函数*/int z;if(x y)z=x;elsez=y;return(z);10关于标识符的命名n标识符命名应遵循一定的规范n必须的main()函数和所有C语言提供的函数名必须使用小写字母。nC语言中所有命令和预定义函数应该使用小
6、写字母,如果一个名称有多个部分如doReportPrint,通常把每个分隔词以大写字母开头。n任何标识符的命名最好能有一定的含义n源程序中的标识符的命名尽量采用英文,最好不要采用中文或拼音缩写11关键字(keywords)n关键字或保留字nC语言中规定的具有固定含义和用途的标识符,不能用作一般名字n每种高级语言都有一套关键字nC语言的关键字,ANSI C 共有32个nauto break case char const continue default do double else enum extern float for goto if int long register return s
7、hort signed sizeof static struct switch typedef union unsigned void volatile while1232个个C语言关键字语言关键字n1变量类型定义相关(变量类型定义相关(19个)个)nauto:声明自动变量(一般不使用)ndouble:声明双精度变量或函数nint:声明整型变量或函数nstruct:声明结构体变量或函数nlong:声明长整型变量或函数nenum:声明枚举类型nregister:声明寄存器变量ntypedef:用以给数据类型取别名(当然还有其他作用)nchar:声明字符型变量或函数nextern:声明变量是在其他
8、文件正声明(也可以看做是引用变量)nunion:声明联合数据类型nconst:声明只读变量nfloat:声明浮点型变量或函数nshort:声明短整型变量或函数nunsigned:声明无符号类型变量或函数nsigned:生命有符号类型变量或函数nvoid:声明函数无返回值或无参数,声明无类型指针(基本上就这三个作用)nvolatile:说明变量在程序执行中可被隐含地改变nstatic:声明静态变量1332个个C语言关键字语言关键字n2.程序流程控制相关程序流程控制相关(12个个)nbreak:跳出当前循环nelse:条件语句否定分支(与if连用)nswitch:用于开关语句ncase:开关语句分
9、支nreturn:子程序返回语句(可以带参数,也看不带参数)ncontinue:结束当前循环,开始下一轮循环nfor:一种循环语句(可意会不可言传)ndefault:开关语句中的“其他”分支ngoto:无条件跳转语句(现在不鼓励使用)ndo:循环语句的循环体nwhile:循环语句的循环条件nif:条件语句n3.其他(其他(1个)个)nsizeof:计算数据类型长度C语言基本数据类型用于对C语言中的数据进行分门别类的定义和使用15看C程序中的数据#include#define PAI 3.1415926int main(int argc,char*argv)char chA=A,chB=B,ch
10、C=C;int a=-1,b=0,c=20;long A=10L,B=20L,C=30L;char strA=This is a string!;float ftA=10.0,ftB=-0.089,ftC=3.90,ftE=1.2e3;printf(Hello World!n);printf(The chars are:%c,%c,%c!n,chA,chB,chC);printf(The ints are:%d,%d,%d!n,a,b,c);printf(The longs are:%ld,%ld,%ld!n,A,B,C);printf(The floats are:%f,%f,%f!n,ft
11、A,ftB,ftC);printf(The string is:%s!n,strA);printf(The value of PAI is:%f!n,PAI);return 0;16以上程序中的数据n直接数据(文字量数据,常量)n字符型数据:字符型数据:A,B,C n整数型数据:整数型数据:-1,0,20,n另一种整数型数据:另一种整数型数据:10L,20L,30Ln浮点型数据浮点型数据:10.0,-0.089,3.90,1.2e3,3.1415926n字符串数据:字符串数据:This is a string!“n间接数据nchA,chB,chCna,b,cnA,B,CnftA,ftB,ftC
12、,ftEnstrAnPAI(符号常量符号常量)变量17C程序中的数据nC程序中的数据必须由数字、单词和字符构成。程序将数据处理成有意义的信息。n虽说由很多不同类型的数据,但以下三种是C程序中最常用的:n字符n整数n浮点数(也称实数)18C程序中的字符数据n任何括在单引号(撇号)中的数据,都是字符型数据,如:n1,A,+,%等n只有单个字符可以放在单引号中,以下不是合法的字符数据。nC is fun,C is hard,I should be sailingn除了特殊的字符组合之外,nn,t,012,x41,称为转义字符。19C程序中的字符串数据n如果需要指定多个字符(除转义字符之外),则需要把
13、字符放在引号(“”)中,多个字符的组合称为字符串。n字符串例子:n“C is fun to learn.”n“Hello,world.”nThis is a string!20C程序中的数字数据n整数:是指没有小数的完整的数,如n10,54,0,-121,-68,752n浮点数:带小数点的数字,如:n547.43,0.0,0.4453,9.1234,-168.470,.22n选择整数还是浮点数取决于程序要处理的数据。n年龄,年级用整数n钱的数量用浮点数21计算机对程序中数据的处理n计算机执行程序时,组成程序的指令和程序所操作的数据都必须存储到某个地方,这个计算机的地方就是内存,也称为随机访问存
14、储器(Random Access Memory,RAM).n可以将计算机的RAM想象成一排井然有序的盒子。每个盒子都只有两个状态:满为1,空为0。22计算机数据存储:位与字节n因此,每个盒子代表一个二进制数:0和1。n每个盒子称为一个位(bit),即二进制数(binary digit)的缩写。n为方便起见,盒子或计算机中的位以8个为一组,每组的8位称为一个字节(byte).n为使用字节的内容,每个字节都用一个数字表示,第一个字节用0,第二个字节用1表示,直到最后一个字节。字节的这个标记称为字节的地址。23内存中的字节24数据在计算机中的表示n不同类型的数据在计算机中的表达方式不同,所表示的数值
15、范围和精度不同,所占用的内存空间(字节数量)的大小也不同。n位(BIT)是描述计算机数据量的最小单位,8位称一个字节(BYTE),16位称为一个字(WORD),32位称双字(DWORD)。010000 01每一格代表1位(bit)8位合称为1字节(byte)25数据与类型n一个类型是程序里可用的一类数据对象集合,数据都必须属于特定类型。n同类型所有数据对象的性质相同,采用统一书写形式,同样的编码与存储方式,能做同样操作。n不同类型数据在计算机中的内存空间要求不同,如浮点数占用的内存通常是整数的两倍。26数据类型举例n基本数据类型n整数,字符型数据,实数n基本类型用定长二进制编码表示,确定了该类
16、型的可能范围n最主要的特点:其值不可以再分解为其它类型。n复合、抽象或复杂的数据类型n整数数组,人,人的集合,武器,牌,某种图片,银行账户,27不同类型数据占用内存空间不同C语言基本数据类型 291.C的基本数据类列表int 整型 float 单精度浮点型char 字符型 double 双精度浮点型short int(或short)短整型long int(或long)长整型unsigned int 无符号整型unsigned short 无符号短整型unsigned long 无符号长整型unsigned char 无符号字符型整数类型和实数类型统称算术类型302.各种整型数据类型所占位数最小
17、取值范围int16-3276832767int 32-21亿21亿short16-3276832767long32-21亿21亿unsignedint16065535unsignedshort16065535unsignedlong32042亿31整数十进制写法n整数一般用十进制写法,除0本身外首字符不能为0n1234,0,768,2047,1999,2000n长整数写法n加后缀l或 L(不能有间隔)n123L 304l 25278L 1l 0Ln小写l易与数字1混淆,建议用大写n整数前可以加正负号32整数的八进制写法n八进制逢八进一n0开始的数字序列n只允许用07共8个数字n0123,062
18、54,0531,0765432Ln八进制数值解读示例n0123 182+281+380=64+16+3=83n06254683+282+581+48033整数的十六进制写法n十六进制逢十六进一n16进制数的主要目的在于表示冗长的二进制数n共16个数字,除09外,用字母 af 或 AF 表示其余6个数字,分别代表1015n每一位16进制数代表4位二制数n写法n在C语言中用0 x或0X开头的数字序列表示,不同于平常的后面加h或H的写法34十六进制数字解读示例n解读示例(按无符号整数解读)n0 x64 一个8位整数,值为6161+4160n0110 0100n0 x0064值为100的16位整数n0
19、000 0000 0110 0100n0 xA3B5n值为10163+3162+11161+5160的16位整数n表示二进制数101000111011010135进位制的概念(知识补充)n进位制进位制是一种记数方式,故亦称进位记数法进位记数法,可以用有限的数字数字符号代表所有的数值。可使用数字符号的数目称为基数或底数,基数为n,即可称n进位制,简称n进制。现在最常用的是十进制,通常使用10个阿拉伯数字阿拉伯数字0-9进行记数。n对于任何一个数,我们可以用不同的进位制来表示。比如:十进数57,可以用二进制表示为111001,也可以用八进制表示为71、用十六进制表示为39,它们所代表的数值都是一样
20、的。n常见的进位制:n二进制广泛用于计算机 n三进制用于军队编制 n十进制最常用 n十二进制十二进制时辰、月份、一打物品 n十六进制广泛用于计算机 n六十进制秒、分 36计算机中数的表示首先要搞清楚下面首先要搞清楚下面3 3个概念个概念数码:表示数的符号数码:表示数的符号 基:数码的个数基:数码的个数 权:每一位所具有的值权:每一位所具有的值 数制数制十进制十进制二进制二进制八进制八进制十六进制十六进制数码09010709,af基102816权 10,10,10,2,2,2,8,8,8,16,16,16,特点逢十进一逢二进一逢八进一逢十六进一37各种进制数的转换问题n1、二、八、十六进制转换成
21、十进制、二、八、十六进制转换成十进制 n2、十进制转换成二、八、十六进制、十进制转换成二、八、十六进制 n3、二进制、八进制的互相转换、二进制、八进制的互相转换 n4、二进制、十六进制的互相转换、二进制、十六进制的互相转换 1.1.二、八、十六进制转换成十进制二、八、十六进制转换成十进制 方法:数码乘以相应权之和(111011)2=125+124+123+022+121+120=32+16+8+2+1=(59)10(136)8=182+381+680=(94)10(1F2A)16=1163+15X162+2161+10160=(7978)10382、十进制转换成二、八、十六进制、十进制转换成二
22、、八、十六进制 n方法:连续除以基,直至商为0,从低到高记录余数.39403.实数类型和实数的表示n实数的类型n单精度浮点数类型 floatn双精度浮点数类型 double,占8个字节n长双精度类型 long doublen常用的标准表示法n浮点数32位表示,4个字节,约7位有效数字n双精度数用64位表示,8个字节,大约16位有效数字n长双精度数用64位或80位表示(系统确定)41实数的写法n普通写法n定点形式:由最前面的正负号、数字0-9和小数点组成,小数点不可省略。n如 3.2,-1.0,6.,.2,-.3等n指数写法(科学计数法)n形式为:尾数e/E指数。其中尾数为十进制实数或整数;指数
- 配套讲稿:
如PPT文件的首页显示word图标,表示该PPT已包含配套word讲稿。双击word图标可打开word文档。
- 特殊限制:
部分文档作品中含有的国旗、国徽等图片,仅作为作品整体效果示例展示,禁止商用。设计者仅对作品中独创性部分享有著作权。
- 关 键 词:
- 第二讲 数据与计算基础 第二 数据 计算 基础

限制150内