文章声明:本系列博客为本人,在学习C语言过程中的一些心得与总结,可能会出现一些错误,希望大家指正,我定会虚心接受并改正。
我们在学习编程的时候一定离不了三种基本结构,即选择结构、循环结构和分支结构。其中在使用选择结构时必定少不了if语句,if语句使用的好会让你的程序干净整洁,运行流畅,但是初学者在使用的时候常常会出现一些错误,导致程序崩溃无法运行。
废话不多说,我们直接来看一下新手使用if语句常见的错误!
一.在if语句的括号后面添加分号
if(a>1);
{
printf("该值比a大\n");
}
将此代码运行之后会发现无论a为何值,结果都会输出 “该值比a大” 的结果,这显然不是我们想要的结果。其原因就是 括号后面的“;”惹的祸,我们仔细分析发现,上面这个代码等价于下面这个代码,我们发现在括号后面多了一句空语句。我们知道,if语句后面没有大括号的时候,只执行离它最近的一条语句,所以在当前代码下,if语句判断为真之后执行了空语句(执行空语句之后什么也不会发生),接着顺序执行了printf语句。
if(a>1)
{
;
}
{
printf("该值比a大\n");
}
二.判断相等时使用 =
if(a=0) //错误的写法
if(b==0)
在C语言中 = 称为赋值运算符,而 == 才是判断相等的运算符,上面代码执行后,0会把值赋给a&#