C语言易错点归纳

合集下载
  1. 1、下载文档前请自行甄别文档内容的完整性,平台不提供额外的编辑、内容补充、找答案等附加服务。
  2. 2、"仅部分预览"的文档,不可在线预览部分如存在完整性等问题,可反馈申请退款(可完整预览的文档不适用该条件!)。
  3. 3、如文档侵犯您的权益,请联系客服反馈,我们会尽快为您处理(人工客服工作时间:9:00-18:30)。

C语言易错点归纳:

•c环境下变量使用前没有集中定义!

•不要在双引号之外使用汉字符号!

•变量使用前没有初始化,导致结果为不定值!

•字符型常量要用单引号括起来!

•字符串常量要用双引号括起来!

•两整数相除结果取整影响程序结果!

•%模运算两边只能是整形或字符型!

•将浮点数进行精确比较!如if(f==0)导致程序意外!

•scanf(“%f,”var);变量名前忘加&!

•scanf(“%6.2f,”&var);指定浮点数的输入精度!

•scanf(“%...”,变量列表);prinf(“%...”,变量列表);语句中输入输出类型与列表中变量类型不匹配!

•‘=’与‘==’使用意义混淆!

•使用错误的逻辑表达式!如企图用if(a>b>c)表达if(a>b&&b>c)

•对逻辑表达式求值时没有注意“最少计算步骤原则”!

•没有注意运算符的优先次序!如if(x=z==y)理解为if((x=z)==y)

•没有注意函数实参为多个表达式时,求值顺序是从右至左!如printf(“…”,i,i++);

•多条语句作为结构性语句的语句组时,没有用花括号{}括起来!导致程序结构混乱!

•左右大括号{}或if…else不匹配!

•使用库函数时没有包含相应的头文件!如使用sin,cos,sqrt,fabs,pow 等函数时,不要忘写#include使用getch,putch,exit(-1)等函数时,不要忘写#include

•do{…}while(…)语句后面忘加分号!

•while(…);for();后面加分号导致循环体为空语句!

•for(初始表达式,条件表达式,循环变量表达式)中用逗号作为分隔符!•数值型数据相互赋值时应注意数据丢失及符号改变!

•switch(表达式)中表达式只能是整形或字符型表达式!不能是float或double型!

•switch(…){case:常量或常量表达式:…}语句关键字case之后只能是常量或常量表达式!

•switch_case:_break_default:结构语句:首先是找入口、没有case…匹配值就以default作为入口,从入口处往下执行各语句(包括下面其他case:之后语句),遇到break可跳出该层switch结构!

•for(初始;条件表达式;循环变量表达){…if(…)continue}如果continue被执行将会跳到循环变量表达式而不是跳到条件表达式!while 和do_whlie跳到条件表达式!

•printf(“%%,\\”);才可打印出%和\

•%u,%o,%x无符号位;%d考虑符号位!

•八进制、十六进制常量分别以0、0x开头!

•?:表达式中的操作对象可以是不同的类型,且其值取较高的类型!

•if_else_if…和switch_case_break常用来实现多分支选其一结构!•熟练使用交换语句!

相关文档
最新文档