✨博文作者:烟雨孤舟
💖 喜欢的可以 点赞 收藏 关注哦~~✍️ 作者简介: 一个热爱大数据的学习者
✍️ 笔记简介:作为大数据爱好者,以下是个人总结的学习笔记,如有错误,请多多指教!
目录
简介
if循环
if(表达式){ /* 如果表达式为真将执行语句 */
语句组;
}
案例:
#include <stdio.h>
int main ()
{
int a = 10; /* 局部变量定义 */
/* 使用 if 语句检查布尔条件 */
if( a < 20 )
{/* 如果条件为真,则输出下面的语句 */
printf("a 小于 20\n" );
}
printf("a 的值是 %d\n", a);
return 0;
}
if...else 语句
if(表达式){/* 如果表达式为真将执行语句组1*/
语句组1;
}else{/* 如果表达式为假将执行的语句组2*/
语句组2;
}
案例:
#include <stdio.h>
int main (){
int a = 100;/* 局部变量定义 */
if( a < 20 ){/* 如果条件为真,则输出下面的语句 */
printf("a 小于 20\n" );
}else{/* 如果条件为假,则输出下面的语句 */
printf("a 大于 20\n" );
}
printf("a 的值是 %d\n", a);
return 0;
}
if...else if...else 语句
if(表达式1){
/* 表达式 1为真时执行 */
}
else if(表达式2){/*表达式 2 为真时执行 */
}
else if(表达式3){/*表达式 3 为真时执行 */
}
else {/* 当上面条件都不为真时执行 */
}
案例
#include <stdio.h>
int main (){
int a = 100;/* 局部变量定义 */
if( a == 10 ){ /* 如果表达式为真,则输出下面的语句 */
printf("a 的值是 10\n" );
}
else if( a == 20 ){/* 如果条件为真,则输出下面的语句 */
printf("a 的值是 20\n" );
}
else{ /* 如果上面条件都不为真,则输出下面的语句 */
printf("没有匹配的值\n" );
}
printf("a 的准确值是 %d\n", a );
return 0;
}
else和if的匹配准则:else与最靠近它的没有与别的else匹配过的if相匹配。
if语句嵌套
C可以嵌套 if 语句,也可以嵌套 else if...else
if( 表达式 1){ /* 当表达式 1 为真时执行 */
if(表达式 2){/* 当表达式 2 为真时执行 */
}
}
#include <stdio.h>
int main ()
{
int a = 100,b = 200:
if( a == 100 )
{ /* 如果条件为真,则检查下面的条件 */
if( b == 200 )
{ /* 如果条件为真,则输出下面的语句 */
printf("a 的值是 100,且 b 的值是 200\n" );
}
}
printf("a 的准确值是 %d\n", a );
printf("b 的准确值是 %d\n", b );
return 0;
}
switch 语句
switch语句测试一个变量是否等于多个值中的一个值的情况。每个值称为一个case,被测试的变量会对每个 switch case 进行检查。
switch(表达式){
case 常量1:语句组; break; /* 可选的 */
case 常量2:语句组; break; /* 可选的 */
default : 语句组;} /* 可选的 */
switch 语句必须遵循下面的规则:
switch中可以有任意数量的case语句。
case的值必须与变量具有相同的数据类型,且必须是一个整型常量或字符。
当变量等于case中的常量时,case后的语句将执行,直到遇到break语句为止。
如果case语句不包含break,将会继续执行后面的case,直到遇到break 为止。
一个switch语句可以有一个default出现在结尾,在所有case都不为真时执行,default中的 break 语句不是必需的。
switch语句相当于多个if-else语句;
case 后面至少要有一个空格,常量后面是冒号,在需要跳出的时候,在语句后面加上break;
#include<stdio.h>//switch 语句编程,根据输入的年份判断是否为闰年,根据输入的月份判断这月有多少天。
int main() {
int year, month, ex;
printf("请输入年份及月份(空格分隔):");
scanf("%d %d", &year, &month);
if(month < 1 || month > 12) {
printf("输入有误!!");
} else {
if((year%4 == 0 && year%100 != 0) || year%400 == 0) {
ex = 1;
printf("%d年为闰年。\n", year);
} else {
ex = 0;
printf("%d年不为闰年。\n", year);
}
switch(month) {
case 4: case 6: case 9: case 11: printf("%d月有%d天。", month, 30); break;
case 2: printf("%d月有%d天。", month, 27+ex); break;
default: printf("%d月有%d天。", month, 31);
}
}
}
嵌套 switch 语句
嵌套 switch 语句:
switch(ch1) {
case 'A':
printf("这个 A 是外部 switch 的一部分" );
switch(ch2) {
case 'A':
printf("这个 A 是内部 switch 的一部分" );
break;
case 'B': /* 内部 B case 代码 */
}
break;
case 'B': /* 外部 B case 代码 */
}
总结
1.if—else语句,如果语句为多语句用则用{},单语句则不用,可直接简写
例:
if(x>5){
语句组;}
if(x>5)语句1;
2.不使用break时,switch语句中表达式的值与常量表达式的值相等后不仅会执行此语句而且还会执行此语句其后的语句知道遇到break语句。
3.else和if的匹配准则:else与最靠近它的、没有与别的else匹配过的if相匹配。