C语言易错
i 可不简单
知识的海洋里\n我竟只是条淡水鱼。
展开
-
【C语言易错】for语句易错
原因:开始时 i = 0,判断条件为真,打印0,接着i ++ 变成1,此时不满足判断条件 “i!= 1”,于是不打印1。然后,很容易认为 i 继续自增并打印2 3,这是不对的,因为判断条件一旦为假,循环就结束了,而不是执行变量调整部分继续判断.......这是一个易忽略的点!错误结果:0 2 3。原创 2023-11-18 13:59:18 · 120 阅读 · 0 评论 -
【c语言易错】if语句常犯错误
编译器在执行上述代码时,执行顺序是先判断“a==b”并返回一个值作为表达式“a==b”的结果,然后判断“a==b==c”,然后此时表达式“a==b”已经被返回值1(假设前面的判断结果为真)替代,也就是说,此时的“a==b==c”变成了“1==c”,这表示判断c的值是否等于1,显然与最初的目的不符。原因同第三点一样,应当改为b>=a && b<=c。判断相等时应该使用“==”,"="是赋值运算符。正确的代码应该是:a==b && b==c。原创 2023-10-20 13:30:17 · 406 阅读 · 0 评论 -
【C语言易错】设定数组大小时不能使用变量名
使用数组时,在某些特殊情况下,我们需要去更改数组的大小,但是当数组的使用次数很多时,更改起来就较为麻烦,于是想到用变量来代替数字去设定数组的大小。但是并不能这么做,这是一种语法错误。解决方法:定义一个宏代替变量。可以看到,此时编译器不再报错。原创 2023-10-18 18:16:38 · 504 阅读 · 0 评论 -
【C语言易错】不能用 ^ 计算次方??
在C语言中,^ 是一个位操作符——按位抑或,而非次方。格式:pow(操作数 , 次方 )1的2次方等于3,显然错了!原创 2023-10-15 19:08:49 · 241 阅读 · 0 评论 -
【C语言易错】直接用一个数组对另一个数组进行赋值
数组名的本质是首元素的地址,地址,地址!也就是说arr1和arr2是两个数字,因此图中的“装填操作”大错特错。图中的操作试图将数组arr2中的内容直接装填进数组arr1,这么做是错误的。利用循环语句对两个数组中的元素进行一一调换。原创 2023-09-27 13:51:57 · 595 阅读 · 1 评论