案例驱动的C语言程序设计全书课件汇总整本书电子教案(最新).pptx
《案例驱动的C语言程序设计全书课件汇总整本书电子教案(最新).pptx》由会员分享,可在线阅读,更多相关《案例驱动的C语言程序设计全书课件汇总整本书电子教案(最新).pptx(265页珍藏版)》请在淘文阁 - 分享文档赚钱的网站上搜索。
1、案例驱动的C语言程序设计1第第1章章 C C语言基础语言基础1 1C语言是一门通用计算机编程语言。C语言的设计目标是提供一种能以简易的方式编译、处理低级存储器、产生少量的机器码以及不需要任何运行环境支持便能运行的编程语言。C具有良好跨平台的特性,以一个标准规格写出的C语言程序可在许多电脑平台上进行编译,甚至包含一些嵌入式处理器(单片机或称MCU)以及超级电脑等作业平台。二十世纪八十年代,由美国国家标准局为C语言订定了一套完整的国际标准语法,称为ANSI C,作为C语言最初的标准。学习目标:21.了解流程图基本图形元素的含义3.了解C语言中关键字的含义4.了解标识符的命名规则5.掌握二进制的表示
2、以及各种进制之间的转换2.会使用流程图描述问题的处理过程本章重点内容:流程图1常量5关键字24数的进制表示3标识符3流程图中常用的基本图形符号开始、结束框处理框输入、输出框判断框流程线连接符流程图(流程图(Flow Chart)是)是以特定的图形符号加上说明,描述一件事情的处理过程的图。1.1流程图4 4开始输入 a,b,ca=0?delt=b2-4acdelt0?delt=0?x=-b/(2a)输出根结束是是是否否否1.1流程图例1:用流程图描述学生一天的学习情况情况1,2节是否有课是否上1、2节课自习3,4节是否有课是否上3、4节课5,6节是否有课是否上5、6节课自习7,8节是否有课是上7
3、、8节课结束开始否5 51.1流程图6 6例2:用流程图描述判定year是否是闰年的算法闰年的判定条件:(1)能被4整除且不能被100整除;(2)能被400整除;只需满足条件(1)、(2)其中之一则是闰年。开始读入yearyear被4整除year不能被100整除真假真year是闰年year被400整除真假假year不是闰年year不是闰年结束year是闰年1.2关键字C语言中已经预先定义的具有特殊含义的32个单词,通常也称作保留字,关键字不得用作其他用途。intlongshortsignedunsignedfloatdoublecharenumstructunionvoidifelsegoto
4、switchcasedefaultwhiledoforbreakcontinuereturnautoexternregisterstaticconstsizoeoftypedefvolatile7 71.3标识符用来标识某个实体的一个符号名称,如同人的姓名一样。在C语言中,标识符用来标识变量、符号常量、函数、数组、文件等实体的名称。由英文字母或下划线开头,英文字母、下划线和数字的组合构成。l英文字母区分大小写;习惯上变量名、函数名、数组名用小写,常量名用大写。l标识符长度不超过8个字符;l不能使用关键字作为标识符;l标识符的名称,最好具有见其名知其意的含义;如sum、name、age等分别用来
5、存储总和、名字、年龄。8 8判断下列哪些是合法的标识符?a_1a_totalPRICEPI“m+n”intS2%str2 add100 student area class_5 3th#xyz A+Bperson name1.3标识符9 91.4数的进制表示C语言中,数有十进制、二进制、八进制和十六进制四种形式。1.十进制(DecimalSystem)十进制数是由0,1,2,3,4,5,6,7,8,9十个数码组成的数字系统。10称作为十进制的基数,即“逢十进一”,“借一当十”。简称Dec。位置位置3位位2位位1位位0位位-1位位-2位位位置千位百位十位个位十分位百分位权103102101100
6、10-110-2按权值展开:12345.78=1104+2103+3102+4101+5100+710-1+810-2C语言输入、输出的数值默认是十进制形式。10101.4数的进制表示二进制是计算机内部存储和表示信息的唯一形式。2.二进制(Binary System)二进制是用0和1两个数码来表示数据的数字系统。它的基数为2,“逢二进一”,“借一当二”。简称BIN。3位位2位位1位位0位位-1位位-2位位权232221202-12-2按权值展开:(10101.01)2=124+023+122+021+120+02-1+12-2运算规则:0+0=00+1=11+0=11+1=100*0=00*1
7、=01*0=01*1=111111.4数的进制表示(1)十进制转换成二进制1212(a)正整数转换为二进制口诀:除2取余,直至为零,余数倒取,高位补零。分三种情况:正整数转换为二进制、负整数转换为二进制和小数转换为二进制。2 42 0 02 21 1 12 10 0 02 5 1 12 2 0 02 1 1 1计算机内部表示数的单位是定长的,如8位、16位或32位等。位数不够时高位补零(42)10=(101010)28位定长:(42)10=(00101010)216位定长:(42)10=(00000000 00101010)2131.4数的进制表示(1)十进制转换成二进制分三种情况:正整数转换
8、为二进制、负整数转换为二进制和小数转换为二进制。(b)负整数转换为二进制先将对应的正整数转换成二进制,其次将二进制按位取反,最后末尾加1。(-42)10=(11010110)2(-42)10=(1111111111010110)2-42的二的二进制求解制求解过程程步骤8位定长形式16位定长形式42的二进制0010101000000000 00101010按位取反1101010111111111 11010101末尾加11101011011111111 11010110141.4数的进制表示(1)十进制转换成二进制分三种情况:正整数转换为二进制、负整数转换为二进制和小数转换为二进制。(c)小数转
9、换为二进制要点:小数部分乘2取整,整数正取,直至小数部分为0或已取得数值足够长。例如:求0.125的二进制0.1252=0.2500.252=0.500.52=11(0.125)10=(0.001)2 例如:求6.125的二进制(6)10=(00000110)2(0.125)10=(0.001)2(6.125)10=(00000110.001)2(2)二进制转换成十进制1.4数的进制表示(a)二进制正整数转换为十进制将二进制数每位上的数码与对应权值相乘累加和。(b)二进制负整数转换为十进制除符号位之外按位取反,末位加1,符号位变-,数值为按权展开累加求和。例如:求例如:求8位定位定长二二进制制
10、负数数11101011的十进制数的十进制数除符号之外按位取反10010100末位加110010101符号位变-,数值位按权展开累加-(124+122+120)=-2115(c)二进制小数转换为十进制例如:(0.1101)2=12-1+12-2+12-4=(0.8125)103.八进制(Octal System)八进制是用0、1、2、3、4、5、6、7八个数码来表示数据的数字系统。它的基数为8,“逢八进一”,“借一当八”。简称缩写OCT或O,是计算机系统中一种常见的计数形式。3位位2位位1位位0位位-1位位-2位位权838281808-18-2运算规则:与十进制相似按权值展开:(13240.73
11、4)8=184+383+282+481+080+78-1+38-2+48-31.4数的进制表示16161.4数的进制表示(1)八进制转换为二进制 八进制数转换为二进制数,需将每一个八进制数字替换成下表对应的三位。按照顺序,每1位八进制数改写成等值的3位二进制数,次序不变。(17.36)8=(001111.011110)2=(1111.01111)2(2)二进制转换成八进制 整数部分从最低有效位开始向左,3位一组,不足3位时以0补齐,每一组转换成一个八进制的值。小数部分从最高有效位开始向右,3位一组,不足3位时以0补齐,每一组转换成一个八进制的值。转换完毕就是八进制的小数。(1100.011)2
12、=(001100.011)2=(14.3)8八进制八进制01234567二进制00000101001110010111011117171.4数的进制表示(3)八进制转换成十进制只需将八进制数按权值展开求和即可。(12.6)8=181+280+68-1=(10.75)10(4)十进制转换成八进制整数部分采用除8取余法,余数倒取。(115)10=(163)8例:8|11530.127*88|14610.016*88|1100.128*810.024小数部分乘八取整,整数正取。(0.127)10=(0.101)8(115.127)10=(163.101)8(ps:有误差)18181.4数的进制表示4
13、.十六进制(Hexadecimal System)十六进制是用09、AF(PS:不区分大小写)十六个数码来表示数据的数字系统。它的基数为16,“逢十六进一”,“借一当十六”。简称HEX或H,是计算机系统中一种常见的计数形式。按权值展开:(13a0f.7d4)16=1 164+3163+10162+0161+15160+716-1+1316-2+416-33位位2位位1位位0位位-1位位-2位位权16316216116016-116-21919常量:在程序运行周期内其值不能改变的量。如:345,0,-12,3.5,-1.23,a,D,“ok”,“Hello”上述常量称为字面常量或直接常量。也可以
14、用一个标识符代表一个常量,称为符号常量。#define PRICE 30#define PI 3.1415习惯上,符号常量用大写,变量名用小写,使用符号常量的好处:(1)含义清楚,见其名知其意;(2)在不同运行周期需要改变常量值时,可以“一改全改”。1.5常量2020第第2章章 数据类型数据类型1 1C语言程序设计中的数据类型决定数据在内存中的存储格式、存储长度、取值范围、操作等等,与数学上数据侧重于大小不同,C语言程序设计中的数据侧重于格式,了解C语言程序设计中数据类型格式的内在含义,有助于解决实际问题中数据类型抉择的问题。是学好C语言的基础,是每个C语言程序员必须熟练掌握的。学习目标:21
15、.了解C语言数据类型的含义3.会定义、使用实型变量4.会定义、使用字符型变量5.掌握格式输入与输出函数2.会定义、使用整型变量本章重点内容:C语言的数据类型1字符串5整型24字符型3实型3格式输出与输入62.1C语言的数据类型数据类型是若干个数值的集合以及定义在该集合上的一组操作。数据类型决定了集合的大小、取值范围和所能进行的操作。基本类型整型实型字符型构造类型枚举数组结构体共用体空类型指针类型数据类型42.2整型int以数字0和x开头的十六进制整数。如:0 x456、0 x1DF等。1.整型常量(1)十进制整型常量如:46,-23,0以数字0开头的八进制整数。如:0456,0145等(3)十
16、六进制整型常量(4)整型常量的定义形式int const a=30;或(2)八进制整型常量const int a=30;52.整型变量变量的字长(在内存中所占用的空间大小)取决于C编译器。int在Visual C+编译器是Win32环境的,在Visual C+中int就是32位(4B)。整型家族包括short int、int和long int,并且都分为signed和unsigned型。类型类型字节数字节数取值范围取值范围int4-214783648214783647(-231231-1)unsignedint404294967295(0232-1)shortint2-3276832767(-
17、215215-1)unsignedshortint2065536(0216-1)longint4-214783648214783647(-231231-1)unsignedlongint404294967295(0232-1)2.2整型int612.2整型int0 0 0 0 0 0 0 00 0 0 0 0 0 0 00 0 0 0 0 0 0 00 0 0 0 0 0 0 0无符号最小整数0无符号最大整数232-11 1 1 1 1 1 1 11 1 1 1 1 1 1 11 1 1 1 1 1 1 11 1 1 1 1 1 1 1有符号最小整数-2311 0 0 0 0 0 0 00 0
18、 0 0 0 0 0 00 0 0 0 0 0 0 00 0 0 0 0 0 0 0有符号最大整数231-10 1 1 1 1 1 1 11 1 1 1 1 1 1 11 1 1 1 1 1 1 11 1 1 1 1 1 1 1无符号int的取值范围:0232-1有符号int的取值范围:-231231-11700000000111111111*27+1*26+1*25+1*24+1*23+1*22+1*21+1*20=28-110000000011111110000000027-10-2710000000=00000000-10000000(-X)的补码=(0的补码)-(X的补码)根据补码运算
19、规则:正整数X+(-X)=02.2整型int82.2整型int3.整型变量的定义与使用12-12int a;在内存中开辟一个用于存放整型常量的存储空间空间所存数据“取之不尽,一充即无”。类型名 变量名;变量定义后,可通过赋值或输入函数的方式为相应存储单位注入常量值。类型名 变量名1,变量名2 变量名n;int a,b;a=12;scanf(“%d”,&b);0000000000000000000000000000110011111111111111111111111111110100#includevoidmain()inta,b;a=12;scanf(“%d”,&b);printf(“a=%
20、d,b=%dn”,a,b);printf(“a=%6d,b=%6dn”,a,b);printf(“a=%1d,b=%1dn”,a,b);printf(“a=%-6d,b=%-6dn”,a,b);printf(“a=%-1d,b=%-1dn”,a,b);printf(“a=%d,b=%un”,a,b);-12a=12,b=-12a=12,b=-12a=12,b=-12a=12,b=-12a=12,b=-12a=12,b=429496728492.3实型(浮点型)1.实型常量的表示1)小数形式它由数字和小数点组成(必须有小数点)。如:2.3、.12、56.、.0、0.等都是合法的小数形式。如:2.
21、478e2、3.099e5。2)指数形式(科学计数法)是指在用指数形式输出时,按规范化的形式输出。即aen或aEn。其中1|a|10,n为整数。e(E)前必须有数,e(E)后的指数必须为整数,如:e2、2.1e3.5、.e3、e等都是非法的实数。实数型常量只有十进制表示形式102.3实型(浮点型)2.实型变量浮点数的存储规范是由IEEE确定,32位分为三部分:指数部分:8位,存储格式为移码存储,偏移量为127;0 1 0 0 0 0 0 0 1 0 0 0 1 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0C语言实型变量分为单精度、双精度两种类型类型型字字节数数有效
22、数字有效数字数数值范范围float467-3.410-383.41038double81516-1.710-3081.710308符号位:1位;尾数部分:23位。例如:4.25转换成二进制即100.01,规范化科学计数法:1.000122112.3实型(浮点型)3.实型数据的舍入误差实型量用有限存储单元存储,提供的有效数字总是有限的,在有效位以外的数字将被舍去,由此会产生一些误差。#includevoidmain()floata,b;a=123456.789e5f;b=a+20;printf(“a=%fn,a);printf(“b=%fn,b);实型变量只能保证7位有效数字,后面的数字都无意义
23、,应尽量避免将一个很大的数与一个很小的数相加减运算,以防止丢失。系统默认实型常量为double型,如需声明float型,可在常数后加f或F121.字符常量12.4字符型1)普通字符常量2)转义字符常量用单撇号括起来的一个字符。如a、+、2、?等。以一个“”开头的字符序列,常见转义字符如下表所示:字符形式字符形式含含义ASCII码n换行,将当前光标位置移到下一行开头10t水平制表(跳到下一个制表位置)9b退格,将当前光标位置移到前一列8r回车,将当前光标位置移到本行开头13f换页,将当前光标位置移到下页开头12反斜杠字符92单撇号字符39双撇号字符34ddd1到3位八进制表示的字符xhh1到2位
24、十六进制表示的字符132.字符变量12.4字符型用char定义的变量,这种变量占一个字节的存储空间。字符型变量在内存中存储的是字符型常量的ASCII码值(0-127)字符型数据与0-127范围的整数类型通用。char c1,c2;c1=a;#includevoidmain()charc1,c2;c1=a;c2=b;c1=c1-32;c2=c2-32;printf(%d,%dn,c1,c2);printf(%c,%cn,c1,c2);程序运行结果:65,66A,B字符型变量应用举例。#includevoidmain()charc1,c2;c1=a;c2=b;printf(%d,%dn,c1,c2
25、);/*输出c1,c2变量中的ASCII码值。*/printf(%c,%cn,c1,c2);/*输出c1,c2变量中的字符。*/程序运行结果:97,98a,b142.5字符串常量用双引号括起来的字符序列是字符串常量。如:helloworld、*n、2、a=%d。C语言中没有字符串变量,字符串常量只能存储到字符数组中,以0结尾。是ASCII值为0的字符NULL是空操作符是非显示字符152.6格式输出与输入1.格式输出函数printfprintf(格式控制字符串,输出列表);格式字符格式字符说明明d,i以带符号的十进制形式输出整数(正数不输出符号)o以八进制无符号形式输出整数(不输出前导符0)X,
- 配套讲稿:
如PPT文件的首页显示word图标,表示该PPT已包含配套word讲稿。双击word图标可打开word文档。
- 特殊限制:
部分文档作品中含有的国旗、国徽等图片,仅作为作品整体效果示例展示,禁止商用。设计者仅对作品中独创性部分享有著作权。
- 关 键 词:
- 案例 驱动 语言程序设计 全书 课件 汇总 电子 教案 最新
限制150内