ImageVerifierCode 换一换
格式:DOCX , 页数:54 ,大小:64.28KB ,
资源ID:7583127      下载积分:3 金币
快捷下载
登录下载
邮箱/手机:
温馨提示:
快捷下载时,用户名和密码都是您填写的邮箱或者手机号,方便查询和重复下载(系统自动生成)。 如填写123,账号就是123,密码也是123。
特别说明:
请自助下载,系统不会自动发送文件的哦; 如果您已付费,想二次下载,请登录后访问:我的下载记录
支付方式: 支付宝    微信支付   
验证码:   换一换

加入VIP,免费下载
 

温馨提示:由于个人手机设置不同,如果发现不能下载,请复制以下地址【https://www.bdocx.com/down/7583127.html】到电脑端继续下载(重复下载不扣费)。

已注册用户请登录:
账号:
密码:
验证码:   换一换
  忘记密码?
三方登录: 微信登录   QQ登录  

下载须知

1: 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。
2: 试题试卷类文档,如果标题没有明确说明有答案则都视为没有答案,请知晓。
3: 文件的所有权益归上传用户所有。
4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
5. 本站仅提供交流平台,并不能对任何下载内容负责。
6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。

版权提示 | 免责声明

本文(C语言复习小结.docx)为本站会员(b****6)主动上传,冰豆网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对上载内容本身不做任何修改或编辑。 若此文所含内容侵犯了您的版权或隐私,请立即通知冰豆网(发送邮件至service@bdocx.com或直接QQ联系客服),我们立即给予删除!

C语言复习小结.docx

1、C语言复习小结C语言复习小结第三章 数据类型、运算符和表达式常量包括直接常量(或称字面常量)和符号常量。直接常量有整型常量,实型常量,字符常量与字符串常量。 整型常量有以下三种数制形式表示: 十进制:如 123; -60; 0 八进制:以0开始,如 0123表示(123)8 十六进制:以0x开始,如0x123表示(123)16 实型常量有以下两种形式表示: 小数形式:由数字、数符和小数点组成。 注意必须有小数点。 如 123.0 .123 0.0 12.5指数形式:数字部分e指数部分。 字母E/e前必须有数字,字母E/e后 必须为整数(1-3位)。 如123e2 123E2 字符常量是用单撇号

2、括起来的一个字符。 例如: a , x, d ,? , 字符常量的值实际上是一个数字值。存储的实际值为ASCII值。所以字符常量可以象整数一样参与运算。(注意:转义字符) 字符串常量是用一对双引号括起来的字符序列。 如: “CHINA”,“a” , “X+Y”。字符串常量在内存中的存放:每一个字符均以其ASCII码存放,且最后添加一个“0” 作为字符串的结束标志。(注: 在表达一个字符串时要时刻记着尾部有个0字符结束整个字符串。) 变量是指在程序运行过程中其值可以改变的量。系统为程序中的每一个变量开辟一个存储单元。变量有两个要素:1)变量名: 每个变量都必须有一个名字,即变量名。变量名由字母、

3、数字和下划线组成,且第一个字符必须是字母或下划线。如果是字母通常使用小写字母,不使用大写字母。如: name,no,x,_k,i,j,stu_name等。变量名中不能含有运算符、括号等C中关键字。命名遵循顾名思义原则,且不宜过长。C区分大小写字母。2)变量值: 每个变量都有特定的值,且可以改变。在程序中,通过变量名来引用变量的值。变量的定义所有的变量必须在赋值使用之前定义。定义变量的一般形式是:type variable_list; (变量定义语句)注:type为C语言中有效类型;variable_list为变量列表,多个变量之间用,隔开。如: int i,j,k; float a;整型变量数

4、据类型 所占位数 取值范围 int 16 -3276832767 short 16 -3276832767long 32 -21亿21亿unsigned int 16 065535 unsigned short 16 065535 unsigned long 32 042亿实型变量分类 所占位数 取值范围float单精度 32 -3.4*10-38 3.4*1038 double 双精度 64 -1.7*10-308 1.7*10308 long double长双精度 128 -1.2*10-4932 1.2*104932字符变量1、变量的定义char c1,c2; /*指定c1,c2为字符型

5、变量*/2、字符型数据的存储一个字符变量在内存中占一个字节,并以ASCII码存储,存储形式与整型一样,可以和整数进行运算。3、 字符数据与整型数据可互相赋值 C语言中的关键字:(32个)类型说明符: char double float int long short signed unsigned struct (结构体) union (共同体)结构化语句中用: if else switch case break default do while for continue goto存储类别用: auto static extern register函数定义用: void return 其他: c

6、onst sizeof typedef enum volatile C运算符 C语言中有以下几类运算符: 1)算术运算: +,-,/,*,%(模运算) 2)关系运算: ,=,=,=,!= 3)逻辑运算: !,&,| 4)位运算: ,|,&基本算术运算符 (加法运算或正号运算符)(减法运算或负号运算符)* (乘法运算符)(除法运算符)% (求余运算符,或称模运算符) 运算符的优先级和结合性 (负号) * % 注:(1) 两个整数相除结果为整数,多数机器采用“向零取整”方法。如:5/3=1 ; -5/3=-1(2) 参与+,-,*,/运算的两个数中有一个为实数,则结果为double型。如: 6/2

7、.0的结果为3.0(3) 模%运算符(或称求余运算符)两侧的运算量均为整型量。如:55%12(4) 三角函数的自变量使用弧度。如sin50 应写成 sin(50*3.1415926/180)例: 3x2+4xysin56-|x-y|e2.3 的表达式为:3*x*x+4*x*y*sin(56*3.14/180)-fabs(x-y)*exp(2.3)在求表达式的值时,要按照优先级的高低依次计算 如果运算符两侧优先级相同,则按规定的结合方向(从左到右)进行。自增、自减运算符 +i , -i 在使用i前,使i的值加(减)1i+ , i- 在使用i后,使i的值加(减)1注意: 1) +,- 运算符只适用

8、于对整型变量操作,而不能作用于常量或表达式,如 5+ 或 (a+b)- 是错误的。 2)+,- 的结合方向是自右到左。如 j=3; printf(”%d”,-j+ ); 则输出-3,后使j值增为4。 思考: 1、(i+)+(i+)+(i+)结果?2、(+i)+(+i)+(+i)结果?3、i+j是(i+)+j还是i+(+j)? 4、printf(“%d,%d”,i,i+)结果赋值运算符简单的赋值就是把一个表达式的值赋给一个变量。 复合的赋值运算符在赋值符“=”之前加上其它运算符,可以构成复合的运算符 运算符= 等价于 运算符 如:m+=n*3 等价于 m=m+(n*3)赋值表达式 对赋值表达式求

9、解的过程是:将赋值运算符右侧的表达式的值赋给左侧的变量。赋值表达式的值就是被赋值的变量的值。 设a的值为6,计算a+=a-=a*a 先进行a*a的计算,结果为36 再进行a-=36的计算,相当于a=a-36=-30 最后进行a+=-30的计算,相当于a=a-30=-60 问: j=k+=32*k合法吗?什么结果 printf(“%d”,i=20); 又是如何呢? 赋值时进行的类型转换 将实型数据(包括单、双精度)赋给整型变量时,舍弃实数的小数部分。 将整型数据赋给单、双精度变量时,数值不变,但以浮点数形式存储到变量中。 将一个double型数据赋给float变量时,截取其前面7位有效数字,存放

10、到float变量的存储单元(32位)中。 将一个float 型数据赋给double变量时,数值不变,有效位数扩展到16位,在内存中以64位存储。 字符型数据赋给整型变量时:若系统将字符处理为无符号的量,则将字符的8位放到整型变量的低8位,高8位补0。若系统将字符处理为带符号的量,如果字符最高位为0,则整型变量高8位补0;如果字符最高位为1,则整型变量高8位补1。 将一个int、short、long型数据赋给一个char型变量时,只将其低8位原封不动地送到char型变量(即截断)。 将带符号的整型数据赋给long型变量时,要进行符号扩展,将整型数的16位送到long型变量的低16位中,如果int

11、型数据为正值,则long型变量的高16位补0;如果int型数据为负值,则long型变量的高16位补1。以保持数值不变。 若将一个long型数据赋给一个int型变量,只将long型数据中的低16位原封不动地送到整型变量中(即截断)。 将unsigned int型数据赋给long int型变量时,不存在符号扩展问题,只需将高位补0。 将unsigned 类型数据赋给一个占字节数相同的整型变量时,是将unsigned型变量的内容照原样送到非unsigned型变量中,但如果数据范围超过相应的整型范围,则会出现数据错误。 将非unsigned int型数据赋给长度相同的unsigned型变量时,也是原样

12、照赋(连原有的符号位也作为数值一起传送)。逗号是一种运算符形式如下: 表达式1,表达式2由逗号隔开的一对表达式从左向右进行计算,其求解过程为:先求解表达式1,再求表达式2,整个逗号表达式的值是表达式2的值。逗号运算符是所有运算符中级别最低的。注:一个逗号表达式又可以与另一个表达式组成一个新的逗号表达式,例如:(a=4*6,a+5),a+6 整个表达式的值为30。 在进行运算时,不同类型的数据要先转换成同一类型,然后进行运算。(转换规则见书)C语言提供一种“强制类型转换”运算符,将一个类型的变量强制转换为另一种类型。一般形式为: (类型标识符)(表达式) 若x原为实型变量且值为2.6,在执行 i

13、=(int)x后得到一个整数2,并把它赋给整型变量i,但x仍为实型,值为2.6。C运算符的优先顺序:(从上到下依次为由高到低,同一级的按各自的结合方向)1. ( )、 、. (从左到右)2. !、+、-、-、*、&、sizeof、(类型) (单目、从右到左)3. *、/、% (从左到右)4. +、- (从左到右)5. 、= (从左到右)6. =、!= (从左到右)7. & (从左到右)8. | (从左到右)9. ? :(条件运算符) (从右到左)10. = 、+=、 -=、 *=、 /=、 %= (从右到左)11. ,(逗号运算符) (从左到右)复习作业题:1请编写程序,输入两个整数n和m,计

14、算以下表达式的值: sum=n+m diff=n-m prod=n*m quot=n/m 并上机时调试完成。main() int m,n,sum,diff,prod; float quot; scanf(%d,%d,&n,&m); sum=n+m; diff=n-m; prod=n*m; if(m=0) printf(data error); else quot=1.0*n/m; printf(%5d,%5d,%5d,%5fn,sum,diff,prod,quot);2请编写程序,输入x,计算以下表达式的结果。fun1(x)= + main() float x,y; printf(x=); s

15、canf(%f,&x); y=2*x/(x+1.21)+2/(x-1.54); printf(fun1(x)=%fn,y);3请编写程序,输入x,计算以下表达式的结果。 y= +main() float x; double y; printf(x=); scanf(%f,&x); y=x*x/sin(x)+2*x/(exp(2)+1); printf(y=%10fn,y);4请编写程序,输入两个自然数,求它们的商和余数。main() int x,y,a,b; scanf(%d,%d,&x,&y); a=x/y; b=x%y; printf(%5d,%5dn,a,b);5请编写程序,输入一个自然

16、数,判断该数是否能够被3和7同时整除。main() int x; scanf(%d,&x); if(x%3=0) & (x%7=0) printf(%5d can be devide by 3 and 7n,x); else printf(%5d can not be devide by 3 and 7n,x);第四章 顺序程序设计字符输出函数 格式:putchar(c) 功能:将c值所对应的字符输出到标准输出设备上(一般为显示器)。c可以是整型或字符型。一次只能输出一个字符,也可以输出控制符,如 putchar(n) 输出一个换行符,即光标移到下一行。putchar()函数也可以输出转义字符

17、,如:putchar(101) 即输出字符A。字符输入函数 格式:getchar( )、getch()或getche() 功能: 从标准设备(一般是键盘)输入一个字符。字符输入函数没有参数,函数值就是从设备输入的字符。三个函数有一些差别: getchar()函数在由键盘键入一个字符后,必须按回车键,而getch()和getche()函数不需要。 getche()函数和getchar()会显示出所输入的字符,而getch()函数不响应输入的字符。格式输出函数 格式:printf(格式控制,输出表列) 功能:printf函数可以将任意类型的多个数据输出到标准输出设备上(一般为显示器)。1d格式字符

18、 有以下几种格式字符:(1)%d 按整型数据的实际长度输出。 (2)%md m为要指定输出字段宽度,若m小于实际长度,则按实际长度输出。(3)%ld 输出长整型数据2(字母) o 格式符 以8进制形式输出整数3x 格式符 以16进制形式输出整数4u 格式符 用来输出unsigned型数据,即无符号数,以10进制输出。int 型可用%u输出,而unsigned型,也可用%d输出。5 c 格式符 用来输出一个字符6 s 格式符 用来输出一个字符串,有几种用法: (1)%s 如 printf(“%s”,“CHINA”); 输出结果 CHINA (注意:不包括双引号)(2)%ms m串长,突破;否则按

19、右对齐,左补空格。(3)%-ms mbc的计算过程是: 先计算ab,结果为真,值为1 再计算1c,结果为假,值为0 f=bc!=a的计算过程是: 先计算bc,结果为真,值为1 再计算1!=a结果为真,值为1 最后将1赋值给f 逻辑运算符 ! (逻辑非) & (逻辑与) | (逻辑或)1)& 和 | 是双元运算符 它要求有两个关系表达式做为操作数, 如: (ab)|(xy) 就是一个逻辑表达式。2)! 是一元运算符 只要求有一个关系表达式做为操作数, 如: !(ab) 就是一个逻辑表达式。请思考: 53&2|84-!0 的值。逻辑表达式 逻辑表达式的值是一个逻辑量“真”或“假”。 C语言编译系统

20、在给出逻辑结果时,以数值1代表“真”,以0代表“假”;但是在判断一个量是否为“真”时,以非0代表“真”,以0代表“假”。 例如: 若x=10, 则 !x的值为0。若a=3, b=2, 则a&b的值为1。 5&0|8的值为1。逻辑运算符特点 在逻辑表达式的求解中并不是所有的运算符都被执行,只是在必须执行下一个逻辑运算符才能求出表达式的解时,才执行下一个运算符。 当a=5,b=3,c=2,d=1,x=1,y=1则表达式(x=ab)&(y=cd)首先计算“ab”,结果为0,则x=0,因此,整个表达式的值为0。而“y=cb?a:bc?b:c 先计算 bc?b:c,结果为4 再计算 m=ab?a:4,结

21、果为4 则m的值为4,整个表达式的值也为4。 if语句的三种形式:if形式: if (表达式) 语句; 例如:if(xy) printf(“%d”,x);if-else形式: if (表达式) 语句1; else 语句2; 例如: if(xy) printf(“%d”,x); else printf(“%d”,y);else-if形式 if (表达式1) 语句1; else if (表达式2) 语句2; else 语句n;例如:if(number500) cost=0.15;else if(number300) cost=0.10;else if(number100) cost=0.075 ;

22、else if(number50) cost=0.05;else cost=0;if语句中的书写问题:(1)if 语句中,在if后面都有“表达式”,一般为逻辑表达式或关系表达式。执行if 语句时先对表达式求解,若表达式的值为0,按“假”处理,为非0,按“真”处理。(2)在每一个else前面要有一个分号(;),整个语句结束处也要有一个分号(;)。 (3)在if和else 后面只能含有一个内嵌的操作语句,如果有多个语句,要用花括号“”将几个语句括起来成为一个复合语句。嵌套的if语句 在一个if语句中又包含了另一个if语句,称为if语句的嵌套。C语言规定,else总是和它上面离它最近的if配对。因此,最好使内嵌的if语句也包含else部分,如果遇到if和else的数目不匹配,可以通过加花括弧来确定配对关系。例如: if ( ) if ( ) 语句1 else 语句2 switch语句的基本格式: switch (表达式) case 常量表达式1: 语句1; break; case 常量表达式2: 语句2; break; case 常量表达式n: 语句n; break; default:语句n+1;注意: 当表达式的值与某一个case后面的常量表达式的值相等时,就

copyright@ 2008-2022 冰豆网网站版权所有

经营许可证编号:鄂ICP备2022015515号-1