关于选择判断
前言
当遇到不同结果需要采取不同处理方式时,需要用到选择判断,c语言中的选择判断结构最常见的是if…else,switch
一、只有一种情况
int a;
a=2-1;
if(1==a)
{
代码块1;
代码块2;
}
1.注意if后的括号内装条件,且括号后不要随意加分号
2.如果只有一条语句可以不加{},不能一条都没有,没有则加空语句
注意点1.条件的写法(易错)
表示一段范围时,不要写成一个表达式,最好用逻辑运算符连接起来。
下面以表示成绩在60-70分之间输出合格为例:
int i=65;
if (60<=a<=70)
printf("及格\n");
计算机会拆解括号内的信息,60<=65成立为真(1),1<=70成立也为真(1),执行输出1
所以能输出是因为条件判断最后的结果是非0,而非60<=a<=70
注意点2.if条件的注意点
-
if(a==60)是比较a与60,if(a=60)是将60赋值给a
为避免丢掉一个=,可以将常量写在左边,牢记赋值的左边是变量,if条件中常量放左侧,变量放右侧 -
if嵌套,程序从上向下执行
二、有两种情况(用if else二选一)
格式如下:
if(条件)
{
代码块;
}
else
{
代码块;
}
注意点1.if与if else的区别
1.逻辑上,if else只执行一个,if嵌套可能两个都不执行
2.运行上,一种情况两个if都会执行,if else只执行一个,if else执行速度更快
注意点2.if else 使用时的注意事项
1.加{},理论上只有一条语句时不加{}也行,但是最好每次都加
2.不要随意加分号,条件后面都不加分号
3.else后面没有条件,直接就是if(条件)的对立面
4.else必须跟if挨着,中间不能加语句
5.else跟同层的,上边的最近的if进行匹配,嵌套的时候可以一条一条看
三、多种情况(多选一)
格式如下(以switch为例):
switch(匹配标签的)
{
case 1:语句1;
break;
case 2:语句2;
break;
...
default:缺省语句;
}
注意点1.switch结构注意事项
1.switch后面没有分号,case后面是冒号 : case和标签之间要有空格,每个case结束要有break
2.循环内部有switch,switch内有break,那么跳出switch,不跳出循环
3. switch的条件要是整型表达式,浮点型不行
4.标签是整型常量表达式,不能含有变量
5.标签内部定义变量需要加上{}
6.标签不能重复,1.2.3都只能有一个
7.default也可以不写,相当于是没有默认处理
注意点2.if else与switch case的区别
1.if else 适合复杂条件,比如范围,浮点型比较,复合表达式(与或非),switch就不方便
2.switch结构有break,比if else 更灵活
3.switch也可以表示范围,但是比较繁琐
总结
本文介绍了有不同种选择情况对应的最常用的几种方法和使用注意事项,要想熟练的运用好这几种结构,还需要大家不断去练习去尝试。
本文围绕C#中的选择判断展开,介绍了只有一种情况、两种情况(if else)和多种情况(switch)下的选择判断结构。详细说明了各结构使用时的注意点,如条件写法、if与if else区别等,还对比了if else与switch case的差异,最后鼓励大家多练习运用。
328

被折叠的 条评论
为什么被折叠?



