目录
前言
C语言的两种选择语句
- if语句
- witch语句
一、if 语句
1.if语句进行逻辑的判断
(1)第一种形式
/*
if(表达式或判断条件){
条件为真的时候执行的代码
}
*/
//第一种
if(){
}
//第二种
if()
{
}
如果if的判断语句后面只有一行的执行代码,则花括号是可以省略不写的
#include<stdio.h>
int main(){
int x=4;
if(x>=3)
printf("%s","bigger than 3");
}
(2)第二种形式
注意:
- else永远和他临近的if是一对的
- 如果if或else的后面只有一行的执行代码,则花括号是可以省略不写的
- ? : 是if else结构的变体形式 ,?前面是判断条件,?后面相当于条件为真时执行的代码,:后面相当于条件为假时执行的代码。
int x = 2;
x==2 ? putchar('2'): putchar('1');
(3) 第三种形式
注:以上代码的else可不写;if…else结构是可以嵌套的,理论上是没有嵌套层的限制的,但实际上尽量不要超过3层。注意代码的锁紧,避免不必要的麻烦。
二、运算符
1.关系运算符
2.逻辑预算符
1) 与运算(&&):参与运算的两个表达式都为真时,结果才为真,否则为假。
2) 或运算(||):参与运算的两个表达式只要有一个为真,结果就为真;两个表达式都为假时结果才为假。
3) 非运算(!):参与运算的表达式为真时,结果为假;参与运算的表达式为假时,结果为真。
注意:C语言的判断,是非零即真。
如果是书写代码的时候,把常量放在前面,变量放在后面(80==x);若少写一个等号,语法是报错的,因为变量不能给常量赋值
3.优先级
赋值运算符(=) < &&和|| < 关系运算符 < 算术运算符 < 非(!)
二、Switch语句
1.switch多路分支结构
switch语法
示例:
int weekday = 1 ; // 这里的weekday表示星期,1表示星期一
switch (weekday){
case 1:
printf("星期一\n");
break;
case 2:
printf("星期二\n");
break;
case 3:
printf("星期三\n");
break;
case 4:
printf("星期四\n");
break;
case 5:
printf("星期五\n");
break;
case 6:
printf("星期六\n");
break;
default:
printf("星期日\n");
break;
}
注:
- 当出现switch时,注意break的存在
- 如果case中有break时,仅执行当前case中的代码,然后退出switch;如果case中没有break,后面的case代码会按顺序执行,直到遇到break,若一直没有遇到break就执行到switch的结束。
- default 可写可不写