5. 分支语句
C语言实现选择语句:
1.if else
2.switch
以下是一个if语句的例子。
满足if的条件就执行下面的表达式,如果不满足,就执行else下的表达式。
#define _CRT_SECURE_NO_WARNINGS
#include <stdio.h>
int main()
{
int input = 0;
printf("现在大三\n");
printf("要好好学习吗?(0/1)");
scanf("%d", &input);
if (input == 1)
{
printf("好offer\n");
}
else
{
printf("作田");
}
return 0;
}
Switch语句的格式为:
switch()
{
case 1:
表达式
case 2:
表达式
case 3:
表达式
}
需要注意的是,Switch语句在选择好入口后,会从这个入口按照顺序一直执行下去。因此想要执行完某个表达式之后不想继续,可以使用 break 退出语句。另外,如果都不满足入口条件,可以使用 default 输出。
这是一个判断输入数字除以3余数是多少的例子:
#include <stdio.h>
int main()
{
int num = 0;
scanf("%d", &num);
int a = (num % 3);
switch (a)
{
case 1:
printf("余数是1\n");
break; // 如果不加break,则会一直讲后面的printf()全部输出
case 2:
printf("余数是2\n");
break;
case 0:
printf("余数是0\n");
break;
}
return 0;
}
6. 循环语句
C语言实现循环语句:
while
for
do ... while
均以输出1~10的整数为例
while 语句的基本格式为:
while() 括号中通常为需要满足的条件
{
需要自己设置变量的初始值,取值范围,以及变化情况
}
#include <stdio.h>
int main()
{
int i = 1;
while (i <= 10) // 满足条件则可以进入循环体,不满足即退出
{
printf("%d", i);
i++; // 即i = i + 1
}
return 0;
}
for 语句的基本格式为:
for ( 变量初始值; 取值范围; 变量变化情况)
{
相比while,for对于变量的描述更加简洁明了
}
#include <stdio.h>
int main()
{
for (i = 1; i <= 10; i++) // 一定要用;相连
{
printf("%d", i);
}
return 0;
}
do while 语句的基本格式
do
{
}while();
它的执行流程是先执行一次循环体中的语句,然后再检查循环条件是否成立,如果成立则继续执行循环体,否则跳出循环。与while循环和for循环不同的是,do while循环保证了循环体至少被执行一次。
#include <stdio.h>
int main()
{
int num = 1;
do
{
printf("%d", num);
num++;
} while (num <= 10);
return 0;
}
7. break 和 continue
通常使用在循环语句中,用于跳出循环或者跳过执行体部分
break 的使用
相比于上个例子,满足条件会运行break后会跳出循环,因此最后输出的结果是1234
#include <stdio.h>
int main()
{
int i = 1;
while (i <= 10)
{
if (i == 5)
break; // break会直接跳出循环,程序将不会执行后续的循环
printf("%d", i);
i++;
}
return 0;
}
continue 的使用
continue会跳过本身后的所有部分,直接回到判断体部分,因此这个例子输出的结果为1234_
其中最后_为光标,表示后续死循环。如果想要只跳过i == 5的部分,可以将 i++ 放在continue语句之前,才可以继续执行下去。
#include <stdio.h>
int main()
{
int i = 1;
while (i <= 10)
{
if (i == 5)
continue; // continue会跳过本次循环的后续部分,直接跳转到判断部分
printf("%d", i);
i++; // 由于这里i++在continue后面,所以continue执行后不被执行,导致死循环
}
return 0;
}