使用if语句时常犯的错误

最近在学习if语句时发现了两种典型的错误写法,在此分享给和我一样的初学者。

一、悬空else

(一)改正前
使用if语句时常犯的错误_第1张图片
写代码人的本身意图应该是让第一个if与else匹配,从而打印出“haha”,但C语言的语法规定,else总是与离它最近的if相匹配。所以,这段代码的运行结果为空。

(二)改正后
使用if语句时常犯的错误_第2张图片

若想让代码运行结果为“haha”,应用“{}”使else与第一个if相匹配。

二、在if(表达式)后面加“;”

(一)改正前
使用if语句时常犯的错误_第3张图片
写代码人的本身意图应该是让i增加到5后执行if语句中的continue,从而停止运行后面的代码,打印出"01234"。但细心的读者会发现if(i==5)的后面多加了一个“;”,导致if控制的是一个空语句,continue不受if控制。所以,当i=0时continue就会执行,使运行结果为空。

(二)改正后
使用if语句时常犯的错误_第4张图片
删掉分号后,打印结果为01234。

你可能感兴趣的:(使用if语句时常犯的错误)