一 运算符号
1. > 大于 ;>= 大于等; < 小于 ; <= 小于等 ; == 等于 关系运算符中等于是双等号
2.逻辑运算符号:
1⃣逻辑与 && (并且); 与运算符两侧,同时为真才为真,只要有一侧为假,就为假. a < b && a > b;
2⃣逻辑或 || (或者);或运算符两侧,同时为假才是假,只要有一侧为真,即为真; a > b || a < b;
3⃣ 逻辑非 ! (颠倒是非): !(a < b)
二 If 语句
1. 1⃣if(判断条件(条件表达式)){
语句1;
语句2;
...
}
2⃣
if的第二种形式if...else...
if(条件表达式){
语句1;
语句2;
...
}else{
语句1;
语句2;
...}
PS://判断一个年份是不是闰年
//1.能被400整除
//2.能被4整除,但不能被100整除
int year = 0;
printf("请输入年份:");
scanf("%d",&year);
//判断能否被400整除
BOOL b1 = year % 400 == 0;
//判断能否被4整除
BOOL b2 = year % 4 == 0;
//判断能否被100整除
BOOL b3 = year % 100 != 0;
if (b1 || (b2 && b3)) {
printf("year = %d是闰年\n",year);
}else{
printf("year = %d是平年\n",year);
}
3⃣️//if的第三种形式
if(条件表达式1){
语句1;
...
}else if(条件表达式2){
语句1;
...
}else if(条件表达式3){
语句1;
...
}else{
语句1;
...
}
//注意:if开头,else结束,中间可以多个else if,
PS: //定义一个变量,存储分数
float score = 0;
printf("请输入考生的分数:");
scanf("%f",&score);
if (score > 100) {
printf("你考这样的分数你爸妈知道吗?");
} else if(90 <= score) {
printf("优秀\n");
}else if(score >= 80){
printf("优\n");
}else if(score >= 70){
printf("良\n");
}else if(score >= 60){
printf("差\n");
}else if(score < 60 && score >= 0){
printf("不及格\n");
}else{
printf("你这是什么命啊!\n");
}
4..执行顺序:碰到 if 语句,先判断条件表达式,如果为真 就执行{}内的语句,如果为假 就不执行{}内语句 if 语句后面不跟分号,();
三 三目运算
1. //条件表达式(三目运算符)
//格式:条件表达式 ? 表达式1 : 表达式2;
//执行:先判断条件表达式,如果为真,返回表达式1的值,如果为假,返回表达式2的值
PS: int max = 0;
max = a1 > b1 ? a1 : b1;
printf("max = %d",max);
四 switch 分支语句
1.switch:
switch(整形表达式){
case 值1:
执行语句
break;
case 值2:
执行语句
break;
...
default
执行语句
break;
}
- 1⃣每个case中要加break;
2⃣switch语句中要有default,止case后的值都不满足
3⃣switch的()内一定是整形表达式 - 变形:
switch (month) {
case 1:
case 3:
case 5:
case 7:
case 8:
case 10:
case 12:
printf("31天\n");
break;
default:
执行语句
break;
}