欢迎来到天天文库
浏览记录
ID:51687212
大小:35.95 KB
页数:2页
时间:2020-03-15
《C语言初学者上机容易犯的错误.doc》由会员上传分享,免费在线阅读,更多相关内容在工程资料-天天文库。
1、1、scanf函数中,遗忘输入列表中的地址符。例如对两个整形变量由键盘输入赋值。同学们往往容易遗忘地址符&scanf("%d%d",&x,&y);2、在使用数学函数时,忘记在程序初始位置把math.h文件包含进来。例如使用数学函数fabs,sqrt等函数时,需要在程序开始加上#include"math.h"或者#include3、在if语句的条件表达式中,容易把赋值运算符=与逻辑等运算符==相混淆。其实,初学者容易把==写成=例如:if(x==1) //初学者容易把==写成= printf("O
2、K");4、对除运算符了解不透。对于除运算符,如果参加运算的两个量其中有一个是浮点数的话,最后的结果便为浮点型,但若两个数均为整数的话,则结果为整型,而且仅仅是简单的截取整数部分。例如1/2的结果是0而不是0.55、由两个字符组成的运算符中间不允许夹有任何其它符号(包括空格)例如 <=和 ++及 &=等等 6、变量输入时的格式符要与其定义时类型相同,否则会出现运行时错误。例如:inti; scanf("%f",&i);7、强制类型转换时,容易落掉小括号。例如:(float)5/2;说明:如果需要进行强
3、制类型转换的是表达式的话,需要把表达式括起来。当然如果需要转换的是一个变量或者常量的话,括号可以省略,例如该例子。8、switch语句中,括号里的表达式是整型(包括字符型和枚举类型),但不能是其他类型,例如浮点型。9、输出时的格式符要与变量的类型相吻合。例如,如果变量x是int型,输出时,格式符应该是%d。而x变量是float型,输出时,格式符应该是%f。很多同学变量输入输出的格式符和变量的类型不一致,导致出现结果错误。编译链接时没错,但运行结果错误。10、if和else的匹配问题。if语句嵌套时,else跟哪个if语句成对
4、呢。从上向下看,每遇到一个else,则往回看,与离其最近的一个,并且没有被配对的if配对。11、数组定义时,其长度是常量,而不能是变量。例如:inta[10];或者#defineN10inta[N];对于这种不正确:intn;inta[n];12、数组作为函数参数时的虚实结合。定义函数时,数组作为函数的虚拟参数(简称虚参)。那么在调用该函数时,实在参数(简称实参)是数组的名字,不要写成数组元素的形式或者数组定义时的形式。此时传递的是数组的首地址,而不是数组元素。
此文档下载收益归作者所有