vlambda博客
学习文章列表

C语言编程常见错误集锦 【下】





1、输入数据时,规定精度

C语言编程常见错误集锦 【下】

输入数据时不能规定精度。

2、switch语句中漏写break语句

C语言编程常见错误集锦 【下】

由于漏写了break语句,case只起标识的作用,而不起判断的作用。当grade的值为A时,程序会从上到下执行完,五个printf都输出。

正确的写法应为:

C语言编程常见错误集锦 【下】

3、忽视while和do-while语句区别

while语句

C语言编程常见错误集锦 【下】

do-while语句

C语言编程常见错误集锦 【下】

当输入的i值小于等于10时,两者输出结果无区别。当输入的i大于10时,while语句不执行循环体,do-while语句执行一次循环题。因为while语句先判断后执行,do-while语句先执行后判断。

4、忽略自增(自减)运算符的细节

【第一个区别】

i++ 返回原来的值,++i 返回加1后的值

C语言编程常见错误集锦 【下】


输出结果: a=i+1  b=i。因为a=++i;是先把i加1再赋值给a,可以把此句分解为:i=i+1;a=i;;b=i++; 是先把i赋值给b再加1。

可分解为:b=i;i=i+1;


【第二个区别】

i++ 不能作为左值,而++i 可以

C语言编程常见错误集锦 【下】

5、忽略sizeof()和strlen()的区别

C语言编程常见错误集锦 【下】

6、定义数组时,将定义的“元素个数”误认为是可使用的最大下标

C语言编程常见错误集锦 【下】

C语言中,定义时用a[5],表示a数组中有5个元素。其下标是从0开始的,数组中最后一个元素是a[4],不存在a[5]。

7、定义数组时误用变量

C语言编程常见错误集锦 【下】

数组名后用方括号括起来的是常量表达式,可以包括常量和符号常量。即C不允许对数组大小作动态定义。

8、地址运算符&使用错误

C语言编程常见错误集锦 【下】

正确的应为:

C语言编程常见错误集锦 【下】

9、同时定义了形参和函数中的局部变量

C语言编程常见错误集锦 【下】

形参应在函数体外定义,而局部变量应在函数体内定义。

正确的应为:

C语言编程常见错误集锦 【下】



END