目录
一、if else语句
二、switch case语句
前言
对分支语句中易错的提醒
一、if else语句
下面对if else语句中最基础的部分不再说明,主要讲一些我在学习过程中犯的错误与心得。
对于下面的代码大家认为应该输出什么
#include<stdio.h>
int main()
{
int a = 5;
int b = 6;
if (a<0)
if (b>0)
printf("***\n");
else
printf("---\n");
return 0;
}
这里肯定会有人说是一定是输出---了,没错那就是第一次看到这段代码的我
那么结果是什么呢,接下来看运行结果
出现这种情况是因为在if else语句中,else应与离其最近的if进行匹配所以会造成无输出的结果。
我们在写代码时应在if else 语句中加入大括号,以免代码造成歧义以及方便阅读。
#include <stdio.h>
int main()
{
if(表达式)
{
语句列表1;
}
else
{
语句列表2;
}
return 0; }
在if语句中进行判断时切记不要将等于写成赋值,写为复制会使其为永真
在其比较时可以写为if(5==a);
将常量写在左边是很好的解决方法。
二、switch case语句
switch
语句也是一种分支语句。
常常用于多分支的情况。
switch
(
整型表达式
)
{
语句项;
}
在switch中必须是整型
当表达的值与所有的case标签的值都不匹配时需要default来结束case语句
#define _CRT_SECURE_NO_WARNINGS 1
#include<stdio.h>
int main()
{int a = 0;
scanf("%d",&a);
switch (a)
{case 1:
printf("**\n");
break;
case 2:
printf("***\n");
break;
default:
break;
}
return 0;
}
此时选择一个不是1或2的数那么default会被执行,程序结束。