欢迎来到得力文库 - 分享文档赚钱的网站! | 帮助中心 好文档才是您的得力助手!
得力文库 - 分享文档赚钱的网站
全部分类
  • 研究报告>
  • 管理文献>
  • 标准材料>
  • 技术资料>
  • 教育专区>
  • 应用文书>
  • 生活休闲>
  • 考试试题>
  • pptx模板>
  • 工商注册>
  • 期刊短文>
  • 图片设计>
  • ImageVerifierCode 换一换

    案例驱动的C语言程序设计全书课件汇总整本书电子教案(最新).pptx

    • 资源ID:75663391       资源大小:3.16MB        全文页数:265页
    • 资源格式: PPTX        下载积分:19金币
    快捷下载 游客一键下载
    会员登录下载
    微信登录下载
    三方登录下载: 微信开放平台登录   QQ登录  
    二维码
    微信扫一扫登录
    下载资源需要19金币
    邮箱/手机:
    温馨提示:
    快捷下载时,用户名和密码都是您填写的邮箱或者手机号,方便查询和重复下载(系统自动生成)。
    如填写123,账号就是123,密码也是123。
    支付方式: 支付宝    微信支付   
    验证码:   换一换

     
    账号:
    密码:
    验证码:   换一换
      忘记密码?
        
    友情提示
    2、PDF文件下载后,可能会被浏览器默认打开,此种情况可以点击浏览器菜单,保存网页到桌面,就可以正常下载了。
    3、本站不支持迅雷下载,请使用电脑自带的IE浏览器,或者360浏览器、谷歌浏览器下载即可。
    4、本站资源下载后的文档和图纸-无水印,预览文档经过压缩,下载后原文更清晰。
    5、试题试卷类文档,如果标题没有明确说明有答案则都视为没有答案,请知晓。

    案例驱动的C语言程序设计全书课件汇总整本书电子教案(最新).pptx

    案例驱动的C语言程序设计1第第1章章 C C语言基础语言基础1 1C语言是一门通用计算机编程语言。C语言的设计目标是提供一种能以简易的方式编译、处理低级存储器、产生少量的机器码以及不需要任何运行环境支持便能运行的编程语言。C具有良好跨平台的特性,以一个标准规格写出的C语言程序可在许多电脑平台上进行编译,甚至包含一些嵌入式处理器(单片机或称MCU)以及超级电脑等作业平台。二十世纪八十年代,由美国国家标准局为C语言订定了一套完整的国际标准语法,称为ANSI C,作为C语言最初的标准。学习目标:21.了解流程图基本图形元素的含义3.了解C语言中关键字的含义4.了解标识符的命名规则5.掌握二进制的表示以及各种进制之间的转换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、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个单词,通常也称作保留字,关键字不得用作其他用途。intlongshortsignedunsignedfloatdoublecharenumstructunionvoidifelsegotoswitchcasedefaultwhiledoforbreakcontinuereturnautoexternregisterstaticconstsizoeoftypedefvolatile7 71.3标识符用来标识某个实体的一个符号名称,如同人的姓名一样。在C语言中,标识符用来标识变量、符号常量、函数、数组、文件等实体的名称。由英文字母或下划线开头,英文字母、下划线和数字的组合构成。l英文字母区分大小写;习惯上变量名、函数名、数组名用小写,常量名用大写。l标识符长度不超过8个字符;l不能使用关键字作为标识符;l标识符的名称,最好具有见其名知其意的含义;如sum、name、age等分别用来存储总和、名字、年龄。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位位位置千位百位十位个位十分位百分位权10310210110010-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=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)十进制转换成二进制分三种情况:正整数转换为二进制、负整数转换为二进制和小数转换为二进制。(b)负整数转换为二进制先将对应的正整数转换成二进制,其次将二进制按位取反,最后末尾加1。(-42)10=(11010110)2(-42)10=(1111111111010110)2-42的二的二进制求解制求解过程程步骤8位定长形式16位定长形式42的二进制0010101000000000 00101010按位取反1101010111111111 11010101末尾加11101011011111111 11010110141.4数的进制表示(1)十进制转换成二进制分三种情况:正整数转换为二进制、负整数转换为二进制和小数转换为二进制。(c)小数转换为二进制要点:小数部分乘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位定位定长二二进制制负数数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.734)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=(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.十六进制(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”上述常量称为字面常量或直接常量。也可以用一个标识符代表一个常量,称为符号常量。#define PRICE 30#define PI 3.1415习惯上,符号常量用大写,变量名用小写,使用符号常量的好处:(1)含义清楚,见其名知其意;(2)在不同运行周期需要改变常量值时,可以“一改全改”。1.5常量2020第第2章章 数据类型数据类型1 1C语言程序设计中的数据类型决定数据在内存中的存储格式、存储长度、取值范围、操作等等,与数学上数据侧重于大小不同,C语言程序设计中的数据侧重于格式,了解C语言程序设计中数据类型格式的内在含义,有助于解决实际问题中数据类型抉择的问题。是学好C语言的基础,是每个C语言程序员必须熟练掌握的。学习目标:21.了解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)十六进制整型常量(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(-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 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的补码)根据补码运算规则:正整数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=%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.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语言实型变量分为单精度、双精度两种类型类型型字字节数数有效数字有效数字数数值范范围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位有效数字,后面的数字都无意义,应尽量避免将一个很大的数与一个很小的数相加减运算,以防止丢失。系统默认实型常量为double型,如需声明float型,可在常数后加f或F121.字符常量12.4字符型1)普通字符常量2)转义字符常量用单撇号括起来的一个字符。如a、+、2、?等。以一个“”开头的字符序列,常见转义字符如下表所示:字符形式字符形式含含义ASCII码n换行,将当前光标位置移到下一行开头10t水平制表(跳到下一个制表位置)9b退格,将当前光标位置移到前一列8r回车,将当前光标位置移到本行开头13f换页,将当前光标位置移到下页开头12反斜杠字符92单撇号字符39双撇号字符34ddd1到3位八进制表示的字符xhh1到2位十六进制表示的字符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);/*输出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,x以十六进制无符号形式输出整数(不输出前导符ox),用x则输出十六进制的af,用X则输出十六进制的AFu以无符号十进制形式输出整数c以字符形式输出,只输出一个字符s输出字符串E,e以指数形式输出实数,用e时指数用e表示,用E时指数用E表示f以小数形式输出单、双精度数,隐含输出6位小数G,g选用%f和%e格式中宽度较短的格式,不输出无意义的0。用G时,若以指数形式输出,则指数用大写表示#includevoidmain()inta=12,b=-12;floatf=65.f;doubled=65.78;charc1=a;printf(a=%d,b=%in,a,b);printf(a=%u,b=%un,a,b);printf(a=%o,b=%xn,a,b);printf(f=%f,d=%fn,f,d);printf(f=%e,d=%en,f,d);printf(f=%g,d=%Gn,f,d);printf(c1=%cn,c1);162.6格式输出与输入格式说明中,在%和格式符之间还可插入下列修饰符字符字符说明明字母l用于长整形整数,可加在格式符d、o、x、um(代表一个正整数)数据最小宽度n(代表一个正整数)对实数,表示输出n位小数;对字符串,表示截取的字符个数-输出的数字或字符在域内向左靠#includevoidmain()inta=12,b=-12;floatf=65.0f;doubled=65.78;printf(a=%6d,b=%8in,a,b);printf(a=%lo,b=%lxn,a,b);printf(f=%9.5f,d=%9.4fn,f,d);printf(f=%6.5f,d=%6.4fn,f,d);printf(f=%-9.5f,d=%-9.4fn,f,d);printf(%sn,helloworld);printf(%6.3sn,helloworld);printf(%-6.3sn,helloworld);172.6格式输出与输入2.scanf函数格式scanf(格式说明字符串,地址列表);功能是从键盘按指定格式把输入数据赋给相应的变量。格式说明字符串由普通字符、“%”和格式字符组成。地址列表由变量的地址组成,用“,”分隔,&取地址运算。scanf(“%d%d”,&a,&b);scanf(“%d,%d”,&a,&b);scanf(“a=%d,b=%d”,&a,&b);格式字符串中的格式符必须与地址列表中的地址个数相同。在不指定分隔符时系统默认以回车、空格和Tab数值。#includevoidmain()inta,b;scanf(%d%d,&a,&b);printf(a=%d,b=%dn,a,b);scanf(%d,%d,&a,&b);printf(a=%d,b=%dn,a,b);fflush(stdin);scanf(a=%d,b=%d,&a,&b);printf(a=%d,b=%dn,a,b);18反思本章有哪些内容值得我们特别留意和必须深刻领会的呢?变量的含义 数据在内存中的表示形式 不同类型的数据在内存中的表示范围 转义字符 有符号数与无符号数的区别 格式输入与输出本章小结本章小结19第第3章章 运算符、表达式及语句运算符、表达式及语句1 1C语言运算符是说明特定操作的符号,主要用于构成C语言表达式。C语言的运算异常丰富,除了控制语句和输入输出以外的几乎所有的基本操作都作为运算符处理。学习目标:21.理解算术运算符、关系运算符、逻辑运算符、赋值运算符、位运算符、逗号运算符以及sizeof的运算规则;2.理解运算符的优先级和结合性的概念,记住所学的各种运算符的优先级关系和结合性。3.掌握这些运算符的运算规则、结合性、优先级,正确书写表达式,为进一步提高逻辑处理能力奠定坚实的基础。本章重点内容:算术运算符和算术表达式1位运算符及表达式5关系运算符和关系表达式24赋值运算符及赋值表达式3逻辑运算符和逻辑表达式3其它运算符及表达式65 5单目运算符:只带一个操作数的运算符。如:+、-运算符。双目运算符:带两个操作数的运算符。如:+、-运算符。三目运算符:带三个操作数的运算符。如?:运算符。算术运算符:+-*/%+-关系运算符:=!=逻辑运算符:!&|位运算符 :|&赋值运算符:=及其扩展条件运算符:?:逗号运算符:,指针运算符:*&求字节数 :sizeof()强制类型转换:类型分量运算符:.-下标运算符:其它 :()3.1算术运算符及表达式6 6结合性:+(后缀)-(后缀)+(前缀)-(前缀)-(负)右结合 +-*、%左结合2.算术表达式算术表达式1.算术运算符算术运算符优先级:+(后缀)-(后缀)-+(前缀)(前缀)(负)-*/%-+-(1)(2)(3)(4)*乘号,乘号不能省略/除号,两整数相除,结果为整数%整除,两个操作数均为整型数据+、-、*、/、%、+、-用算术运算符将运算对象(常量、变量和函数)连接起来、符合C语言语法规则的式子。5/2=2=-25%-2-5%-2=1=-15.5%2()5%2-5%2=1=-15/-2-5/-2=-2=25/2.0=2.5-5/23.1算术运算符及表达式作用:使变量(整型、字符型、枚举型、指针型)值加1或减1前置 +i,-i(先执行i=i+1或i=i-1,再使用i值后置 i+,i-(先使用i值,再执行i=i+1或i=i-1)减号()既是一个算术运算符,又是一个负号运算符。负号运算符是单目运算符。a=2,那么a的值就是2。负号运算符的优先级比较高。3.负号运算符(负号运算符()4.自增、自减运算符自增、自减运算符+-j=3;k=+j;j=3;k=j+;j=3;printf(“%d”,+j);j=3;printf(“%d”,j+);a=3;b=5;c=(+a)*b;a=3;b=5;c=(a+)*b;/k=4,j=4/k=4,j=4/k=3,j=4/k=3,j=4/4/4/3/3/c=20,a=4/c=20,a=4/c=15,a=4/c=15,a=47 73.1算术运算符及表达式7 7#includevoid main()int a,b,c;float m,n;a=3;b=5;c=(+a)*b;printf(c=%dn,c);a=3;b=5;c=(a+)*b;printf(c=%dn,c);m=20.f;n=m/3;printf(m=%f,n=%fn,m,n);3.1算术运算符及表达式8 8#includevoidmain()intp,i=2,j=3;p=-i+;/后置+的优先级高于-printf(p=%d,i=%dnn,p,i);i=2,j=3;p=i+j;/等价于(i+)+jprintf(p=%d,i=%d,j=%dnn,p,i,j);i=2,j=3;p=i+-j;printf(p=%d,i=%d,j=%dnn,p,i,j);i=2,j=3;p=i+-j;/p=(i+)+(-j)printf(p=%d,i=%d,j=%dnn,p,i,j);i=2,j=3;p=i+i+;/p=(i+)+(i+)printf(p=%d,i=%dnn,p,i);i=2,j=3;p=+i+(+i);/p=(+i)+(+i)printf(p=%d,i=%dn,p,i);3.1算术运算符及表达式9 95.算术运算符中数据类型转换规则算术运算符中数据类型转换规则 低低低低高高高高doubledoublefloatfloatlonglongunsignedunsignedintintchar,shortchar,shortlong dlong doubleouble必定的转换必定的转换必定的转换必定的转换运算对象类型不同时转换运算对象类型不同时转换运算对象类型不同时转换运算对象类型不同时转换10+a+i*f-d/l10+a+i*f-d/l例:例:例:例:inti;inti;floatf;floatf;doubled;doubled;longl;longl;intintintintdoubledoubledoubledoubledoubledoubledoubledoubledoubledoubledoubledouble#include#includevoidmain()voidmain()floata,b,c;floata,b,c;a=7/2;a=7/2;/计算计算7/27/2得得intint型值型值33,因此,因此aa的值为的值为3.03.0b=7/2*1.0;b=7/2*1.0;/计算计算7/27/2得得intint型值型值33,再与,再与1.01.0相乘,得到相乘,得到3.03.0c=1.0*7/2;c=1.0*7/2;/1.0*7/1.0*7得得doubledouble型的结果型的结果7.07.0,后,后 计算计算7.0/27.0/2,因此,因此cc的值是的值是3.53.5printf(a=%f,b=%f,c=%f,a,b,c);printf(a=%f,b=%f,c=%f,a,b,c);10103.1算术运算符及表达式6.类型转换类型转换转换不会改变变量定义时所规定的数据类型赋值运算时的转换规则整实:截掉小数部分实整:数值不变,存为浮点整char:整型低8位char整型(字节数相同的)unsigned整型:原样送入。若超过整 型表示范围会出错。unsigned(字节数相同的)非unsigned整型:原样送入,符号位也作为数值13.2关系运算符及表达式1.关系运算符关系运算符6种关系运算符:,=,=,!=2.关系表达式关系表达式ca+b等效于c(a+b)ab=c等效于(ab)=ca=bc等效于a=(bc等效于a=(bc)例如 a=3,b=2,c=1ab的值为真,表达式的值是1(ab)!=c的值为假,表达式的值是0d=abd的值是1f=abcf的值是011113.3逻辑运算符及表达式12121.逻辑运算符逻辑运算符ab!a!ba&ba|b真真(1)真真(1)假假(0)假假(0)真真(1)真真(1)真真(1)假假(0)假假(0)真真(1)假假(0)真真(1)假假(0)真真(1)真真(1)假假(0)假假(0)真真(1)假假(0)假假(0)真真(1)真真(1)假假(0)假假(0)3种逻辑运算符:!|&(1)若a=4,!a的值为0。(2)若a=4,b=5,则 a&b的值为1。(3)若a=4,b=5,则 a|b的值为1。(4)若a=4,b=5,则!a|b的值为1。(5)4&0|2值为1。3.3逻辑运算符及表达式13132.逻辑与、逻辑或的“短路”功能voidmain()inta=1,b=2,m=0,n=0,k;k=(n=ba)|(m=ab);printf(“%d,%dn”,k,m);程序运行后的输出结果是1,0voidmain()intx=y=z=0;+x&+y|+z;printf(x=%d,y=%d,z=%dn,x,y,z);程序的运行结果是x=1,y=1,z=0exp1&exp2=exp2exp1为真假exp1为假exp1|exp2=真exp1为真exp2exp1为假3.4赋值运算符及表达式14141.赋值运算符赋值运算符 =变量=常量或变量或表达式2.赋值表达式赋值表达式 将右边常量或变量或表达式的值赋给左边变量,优先级仅比逗号高。intx,y,z;intx,y,z;x=20;x=20;y=x;y=x;z=x+y;z=x+y;由赋值运算符或复合赋值运算符(后面即将介绍),将一个变量和一个表达式连接起来的表达式,称为赋值表达式。变量(复合)赋值运算符 表达式赋值表达式的值:被赋值变量的值。charch1,ch2,ch3,ch4;charch1,ch2,ch3,ch4;ch1=a;ch1=a;ch3=ch2=ch1;ch3=ch2=ch1;/右结合右结合ch4=ch1-32;ch4=ch1-32;#includevoidmain()inta,b,c;a=b=c=10;printf(a=%d,b=%d,c=%dnn,a,b,c);a=(b=2)+(c=3);printf(a=%d,b=%d,c=%dnn,a,b,c);3.4赋值运算符及表达式2.复合赋值运算符复合赋值运算符+=-=*=/=%=&=|=以以 +=为例为例int a,b;a=10;b=20;a+=b;b+=a*b;int a,b,c,d;a=10;b=20;a=(a+b);b=b+(a*b);功能是先将复合赋值运算符左端的变量与右端的整个表达式进行复合运算,再将运算的结果赋给左端的变量。等效于等效于15153.5位运算符及表达式 位运算符:按位取反()、左移(、按位与(&)、按位或(|)、按位异或()六种。1.1.左移(左移()右移运算实现将某变量所对应的二进制数往右移位,溢出的最低位被丢掉,如果变量是无符号数,空出的高位用零填补,如果变量是有符号数,空出的高位用原来的符号位填补(即负数填1,正数填0)int a=3;int a=3;int a=3;a 2 a 2 a 2:将将aa所对应的二进制数左移两位,该表达式的值为所对应的二进制数左移两位,该表达式的值为1212。2 a2 a2 a:将将22所对应的二进制数左移三位(所对应的二进制数左移三位(aa的值)的值),该表达式的值为该表达式的值为1616。161613.5位运算符及表达式1717例:例:将将shortshort类型数据的高、低位字节互换类型数据的高、低位字节互换#include#includevoidmain()voidmain()shorta=0 xf245,b,c;shorta=0 xf245,b,c;b=a8;b=a8;c=a8;/将将aa的高的高88位移到低位移到低88位赋值给位赋值给cc,cc的值为的值为0 xfff20 xfff2c=c&0 x00ff;c=c&0 x00ff;/将将cc的高的高88位清位清00后赋值给后赋值给cc,cc的值为的值为0 x00f20 x00f2a=b|c;a=b|c;/将将bb和和cc的值相加赋值给的值相加赋值给aa,aa的值为的值为0 x45f20 x45f2printf(a=%x,a);printf(a=%x,a);3.位运算之间的优先级位运算之间的优先级&|3.6其它运算符及表达式1.逗号运算符及逗号表达式逗号运算符及逗号表达式实例实例:a=3*5,a*4 a=3*5,a*4 最终结果为最终结果为6060 x=(a=10,b=100,c=50)x=(a=10,b=100,c=50)最终结果为最终结果为5050y=(i+,j-,k+2)y=(i+,j-,k+2)最终结果为最终结果为k+2k+2表达式1,表达式2,表达式n逗号表达式的求解顺序及结果:先求解表达式1,再求解表达式2,,最后求解表达式n;逗号表达式的最终结果为表达式n的值。逗号运算的优先级是所有运算符中最低的。18183.6其它运算符及表达式2.容量运算符容量运算符 sizeof用于了解一个变量或某种类型的量在内存中所占的字节。有以下两种用法:sizeof(表达式)例如:intx=1;floaty=5.0;printf(“%d”,sizeof(x+y);结果为:8sizeof(sizeof(类型名类型名)例如:例如:printf(“%d”,sizeof(short int)printf(“%d”,sizeof(short int)结果为:结果为:2 219193.6其它运算符及表达式20203.条件运算符:条件运算符:?:一般形式:表达式1?表达式2:表达式3条件运算符可嵌套 如 x0?1:(xb?a:cd?c:dab?a:(cd?c:d)expr1、expr2、expr3类型可不同。例x?a:b/x=0,表达式值为b,否则,表达式值为axy?1:1.5/xy ,值为1.0;xy,值为1.51例:小写字母转盘例:小写字母转盘#include#includevoidmain()voidmain()charch,ch1,ch2;charch,ch1,ch2;/变量定义变量定义scanf(%c,&ch);scanf(%c,&ch);/读取一字符读取一字符ch1=ch1=ch=a?z:ch-1;ch=a?z:ch-1;/求前驱字符求前驱字符ch2ch2=ch=z?a:ch+1;=ch=z?a:ch+1;/求后继字符求后继字符printf(ch1=%c,ch2=%cn,ch1,ch2);printf(ch1=%c,ch2=%cn,ch1,ch2);/显示结果显示结果3.6其它运算符及表达式2121 语言程序的执行部分由语句组成。程序的功能也是由执行语句实现的。C语言中的语句可以分为以下5类:由表达式加上分号“;”组成。一般形式为:表达式;表达式;由函数名、实际参数加上分号由函数名、实际参数加上分号“;”组成。组成。一般形式为:一般形式为:函数名函数名函数名函数名(实际参数表实际参数表实际参数表实际参数表);1.表达式语句表达式语句2.函数调用语句函数调用语句只有分号“;”组成。形式为:;空语句是什么也不执行的语句。在程序中空语句可用来作空循环体。3.空语句空语句3.7C语言语句及基本结构2222a=10a=10赋值表达式赋值表达式a=10;a=10;赋值语句赋值语句k+k+表达式表达式k+;k+;表达式语句表达式语句while(getchar()!=n)while(getchar()!=n)while(getchar()!=n);本语句的功能是,只要从键盘输入的字符不是回车则重新本语句的功能是,只要从键盘输入的字符不是回车则重新输入。这里的循环体为输入。这里的循环体为空语句空语句。printf(“CProgram”);printf(“CProgram”);函数调用语句函数调用语句 其功能是输出字符串其功能是输出字符串CProgramCProgram。23233.7C语言语句及基本结构用 括起来的一组语句。4.复合语句复合语句一般形式为:一般形式为:数据说明部分;数据说明部分;执行语句部分;执行语句部分;#include#includevoidmain()voidmai

    注意事项

    本文(案例驱动的C语言程序设计全书课件汇总整本书电子教案(最新).pptx)为本站会员(可****)主动上传,得力文库 - 分享文档赚钱的网站仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对上载内容本身不做任何修改或编辑。 若此文所含内容侵犯了您的版权或隐私,请立即通知得力文库 - 分享文档赚钱的网站(点击联系客服),我们立即给予删除!

    温馨提示:如果因为网速或其他原因下载失败请重新下载,重复下载不扣分。




    关于得利文库 - 版权申诉 - 用户使用规则 - 积分规则 - 联系我们

    本站为文档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  

    收起
    展开