C语言易错点考点_第1页
C语言易错点考点_第2页
C语言易错点考点_第3页
C语言易错点考点_第4页
C语言易错点考点_第5页
已阅读5页,还剩2页未读 继续免费阅读

下载本文档

版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领

文档简介

1、总体上必须清楚的:1)程序结构是三种:顺序结构,循坏结构(三个循坏结构),选择结构(If和switch)2)用C语言编写的程序称为C语言源程序,源程序文件的后缀名为“c”;源程序经编译后生成后缀名为“obj”的目标文件;再把目标文件与各种库函数连接起来,生成“exe”的可执行文件。3)mam函数,又称主函数,每个C程序有且只有一个main函数:无论main函数在整个程序中的位置如何,程序总是从main函数开始执行、也从main函数结束。读程序时应从main函数开始,然后从上往下读(碰到循环做循环,碰到选择做选择)。4)计算机的数据在电脑中保存是以二进制的形式.数据存放的位置就是他的地址.5)b

2、it是位是指为0或者lobyte是指字节,一个字节=八个位.6)定要记住二进制如何划成十进制。概念常考到的:1、编译预处理不是C语言的一部分,不占运行时间,不要加分号。C语言编译的程序称为源程序,它以asch数值存放在文本文件中。2、每个C语言程序中main函数是有且只有一个。3、在函数定义中不可以再定义函数、即不允许函数嵌套定义。4、算法可以没有输入,必须要有输出。5、break口J用于循坏结构和switch语句。6、逗号运算符的级别最低。7、任意合法的表达式一定有一个数值与它对应。第一章1)C程序中对字母的大小写是敏感的,如A与a是不同的标识符。注释:是对程序的说明,目的是提高程序的可读性

3、,可出现在程序中任意合适的地方,注释从“/*”开始到最近一个“*/,结束,其间任何内容都不会被计算机执行,不允许嵌套注释。3)合法的用户标识符考查:合法的要求是由字母,数字,卞划线组成。有其它元素就错了。并且第一个必须为字母或则是下划线。第一个为数字就错了。关键字不可以作为用户标识符号。mamdefinescaiifprmtf都不是关键字。迷惑你的地方If是可以做为用户标识符。因为If中的第一个字母大写了,所以不是关键字。注意:连接(-)符不能出现在标识符中:区分字母o与数字0,字母1和数字1;熟悉常见的关键字4)实型数据的合法形式:2.333e-l就是合法的,且数据是2.333x10-1o考

4、试【I诀:e前e后必有数,e后必为整数。.5)字符数据的合法形式::T是字符占一个字节,T“是字符串占两个字节(含有一个结束符号)。0的ASCH数值表示为48,a的ASCII数值是97,A的ASCH数值是65。一般考试表示单个字符错误的形式:5,T”字符是可以进行算术运算的,记住:0-0=48人写字母和小写字母转换的方法:A,+32=h相互之间一般是相差32。大小写字母的转换:人写字母转换成对应小写字母:ch+32如tA,+32=a,小写字母转换成对应大写字母:ch-32如y-32=Y,I诀:大小字母转换正相反,加人转小,减小转大。数字字符与对应数字的转换:ch-48如T-48=14)整型一般

5、是两个字节,字符型是一个字节,双精度一般是4个字节:考试时候一般会说,在16位编译系统,或者是32位系统。碰到这种情况,不要去管,一样做题。掌握整型一般是两个字节,字符型是一个字节,双精度一般是4个字节就可以了。5)转义字符的考查:在程序中mta=0 x6d,是把一个十六进制的数给变量a注意这里的Ox必须存在。在程序中mta=06d,是一个八进制的形式。在转义字符中,&才是合法的,0不能写,并且x是小写。141,是合法的,0是不能写的。108,是非法的,因为不可以出现8。什么是转义字符:所有的ASCII码都可以用加数字【一般是8进制数字】来表示。而C中定义了一些字母前加”来表示常见的那些不能显

6、示的ASCII字符,如O,t,n等,就称为转义字符,因为后面的字符,都不是它本来的ASCII字符意思了。6)算术运算符号的优先级别:同级别的有的是从左到右,有的是从右到左。补充两点:1、算术运算算术运算符一共有+、一、*、/、这五个:求余运算要求运算对彖只能为【整型】,除法运算符两边运算对彖都为整型时,运算结果也为整型,即舍掉小数部分。例如:18/10结果为1,而不是1.8:3.5%3是非法的表达式2、赋值运算及表达式赋值运算符为“=”,不同于关系等于“=赋值表达式格式为:变量名=表达式,赋值运算符左边必须为变量,赋值运算是把赋值运算符右边表达式的值赋给左边变量。注意赋值运算符和复合赋值运算符

7、的优先级仅仅高于逗号运算符,结合性为从右到左例如:有语句inta=5;表达式a=6值为6,而表达式a=6结果为07)强制类型转换:一定是(mt)a不是mt(a),注意类型上一定有括号的。注意(int)(a+b)和(int)a+b的区别。前是把n+b转型,后是把a转型再加b。8)表达式的考查:是表达式就一定有数值。赋值表达式:表达式数值是最左边的数值,a=b=5;该表达式为5,常量不可以赋值。自加、自减表达式:假设a=5,-H-a(是为6),a-H-(为5);运行的机理:+a是先把变量的数值加上1,然后把得到的数值放到变量a中,然后再用这个+a表达式的数值为6,而a卄是先用该表达式的数值为5,然

8、后再把a的数值加上1为6,再放到变量a中。进行了+a和a+后在下面的程序中再用到a的话都是变量a中的6了。考试II诀:在前先加后用,+在后先用后加。逗号表达式:优先级别最低;表达式的数值逗号最右边的那个表达式的数值。(2,3,4)的表达式的数值就是4。9)位运算的考查:会有一到二题考试题目。总的处理方法:几乎所有的位运算的题目都要按这个流程来处理(先把十进制变成二进制再变成十进制)。例1:chara=6,b;b=a2;这种题目的计算是先要把a的十进制6化成二进制,再做位运算。例2:定要记住,异或的位运算符号。0异或1得到1。0异或0得到0。两个女的生不出来。1异或1得到0。两个男的生不出来。考

9、试记忆方法:一男一女(0)才可以生个小孩。例3:在没有舍去数据的时候,右移一位表示除以2。10)018的数值是非法的,八进制是没有8的,逢8进1。11)%符号两边要求是整数。不是整数就错了。12)三种取整丢小数的情况:1ainta=1.6:2、(iiit)a:3、1/2:3/2;左移运算符“W”右移运算符“”第二章1)pimtf函数的格式考查:%d对应整型:c对应字符;f对应单精度等等。宽度的,左对齐等修饰。%ld对应longint;%lf对应doubleo2)scanf函数的格式考察:注意该函数的第二个部分是&a这样的地址,不是a:Scanf(“d%d%*d%d”,&a,&b,&c);跳过输

10、入的第三个数据。3)putchar.getchar函数的考查:chara=getcharQ是没有参数的,从键盘得到你输入的一个字符(包括回车、空格等字符)给变量a。putchar(y)把字符y输出到屏幕中。4)如何实现两个变量x,y中数值的互换(要求背下来)不可以把x=y,y=x;要用中间变量t=x;x=y;v=tQ5)如何实现保留三位小数,第四位四舍五入的程序,(要求背下来)11*1000+0.5)/1000.0这个有推广的意义,注意x=(nit)x这样是把小数部分去掉第三章特别要注意:c语言中是用非0表示逻辑真的,用0表示逻辑假的。1)关系表达式:表达式的数值只能为1(表示为真),或0(表

11、示假)当关系的表达是为真的时候得到1。如98这个是真的,所以表达式的数值就是1;2)逻辑表达式:只能为1(表示为真),或0(表示假)町共有&|!三种逻辑运算符号。b)!&|优先的级别。c)注意短路现彖,考试比较喜欢考到。例a+|b+,如果表达式的值非零,则表达式b+不再执行。d)要表示x是比0犬,比10小的方法。0CXV10是不可以的(一定记住)。是先计算0要用(0X)&(X10)表示比0大比10小。3)if语句else是与最接近的if且没有else的相组合的。4)条件表达式:表达式1?表达式2:表达式3注意是当表达式1值为非0时,整个表达式值为表达式2的值,表达式1值为0时,整个表达式值为表

12、达式3的值。考试II诀:真前假后。5)switch语句:a)一定要注意有break和没有break的差别,书上(34页)的两个例子,没有break时候,只要有一个case匹配了,剩下的都要执行,有break则是直接跳出了swiche语句。b)switch只可以和break起用,不可以和contmue用。第四章1)三种循环结构:a)for();whileQ;do-while0三种。b)for循环当中必须是两个分号,千万不要忘记。c)写程序的时候一定要注意,循环一定要有结束的条件,否则成了死循环。d)do-whileQ循坏的最后一个whileQ;的分号一定不能够丢。(当心上机改错)2)break和

13、continue的差别i己忆方法:break:是打破的意思,(破了整个循环)所以看见break就退出真个一层循环。continue:是继续的意思,(继续循坏运算),但是要结束本次循环,就是循环体内剩卞的语句不再执行,跳到循环开始,然后判断循环条件,进行新一轮的循坏。嵌套循环就是有循坏里面还有循环,这种比较复杂,要一层一层一步一步耐心的计算,一般记住两层是处理二维数组的。while(c=getchar()!=n)和wlule(c=getcharO!=,ii)的差别先看a=3!=2和(a=3)!=2的区别:(!=号的级别高于=号所以第一个先计算3!=2)第一个a的数值是得到的1;第二个a的数值是3。考试注意点:括号在这里的重要性。第五章函数:是具有一定功能的一个程序块;1)函数的参数,返回数值(示意图):main()inta=5,b=6,c;c=add(a.b);pnntfC第二行a2a789第三行步骤二:这样作题目间很简单:*(a0+l)我们就知道是第一行的第一个元素往后面跳一列,那么这里就是a0l元素,所以是1。*(al+2)我们就知道是第二行的第一个元素往后面跳二列。那么这里就是al2元素,所以是6。一定记住:只要是二维数组的题目,一定是写成如上的格式,再去做题目,这

温馨提示

  • 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
  • 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
  • 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
  • 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
  • 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
  • 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
  • 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。

评论

0/150

提交评论