目录
什么是语句
在C语言中,有许多语句,可分为:
1 | 控制语句 |
2 | 函数调用语句 |
3 | 表达式语句 |
4 | 空语句 |
5 | 复合语句 |
而在本篇中,会说明其中的控制语句
什么是分支结构
分支结构是编程中的一种逻辑结构,它允许程序在满足特定条件时选择不同的执行路径。这种结构通常包括一个条件测试和一个或多个代码块,每个代码块表示可能的执行路径。
在编程中,分支结构通常用于处理不确定性,比如用户输入的选择、系统状态的判断等。例如,如果用户选择“是”,程序将执行一个代码块;如果用户选择“否”,程序将执行另一个代码块。
分支结构的常见形式包括“if-else”结构和“switch-case”结构。
if- else
其语法构成为:
//单分支
if (表达式)
语句1;
//双分支
if (表达式)
语句1;
else
语句2;
//多分支
if (表达式)
语句1;
else if (表达式)
语句2;
else
语句3;
//例子
#include <stdio.h>
int main()
{
int another_num = 0;
int num = 0;
scanf("%d %d",&another_num,&num);
if (another_num > num)
printf("well you win");
else if (another_num < num)
printf("haha,i win");
else
printf("wow");
return 0;
}
在if的表达式中,当内部的表达式为真时则执行if下的语句
如若为假,则执行else的语句
在多分支语句中,在if判断后在else if 判断后为真则执行语句,否则就执行else1的语句
在C语言中 0 为假 非 0 为真
switch-case
switch常用于多分支结构,例如如果我们需要实现输入1-10其中一个值时,输出他们的中文,使用if - else if - else 来写过于复杂,这时候就可以使用switch语句来实现我们所需要解决的问题
其基本语法构成为:
switch(整型表达式)
{
case 整型常量表达式:
语句;
}
但一般情况下,会搭配break语句,只有跟break语句一起使用才会有if - else if - else 的作用
如例子:
#include <stdio.h>
int main()
{
int num;
scanf("%d",&num);
switch(num)
{
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;
case 7:
printf("七\n");
break;
}
return 0;
}
break语句也可以根据需求而改变
随后便是default语句,它的作用等于else,当case的值无法匹配的时,就会匹配default语句
如例子:
#include <stdio.h>
int main()
{
int num;
scanf("%d",&num);
switch(num)
{
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;
case 7:
printf("七\n");
break;
default:
printf("输入错误!");
break;
}
return 0;
}
什么是循环结构
循环结构是编程中的一种逻辑结构,它允许程序反复执行一段代码,直到满足特定的条件为止。这种结构通常包括一个条件测试和一个代码块,条件测试用于判断是否继续循环,代码块表示每次循环时需要执行的代码。
在编程中,循环结构通常用于处理重复性任务,比如读取一系列的数据、计算某个数的阶乘等。循环结构可以提高代码的效率,避免重复编写相同的代码。
循环结构的常见形式包括“for”循环、“while”循环、“do-while”循环等。
while
while循环是编程中使用的一种控制流语句,它基于一个条件进行循环,只要条件为真,循环体内的代码块就会一直执行。
while循环的基本结构如下:
while(condition)
{
执行语句;
}
在这个结构中,condition 是一个逻辑表达式,它返回 True 或 False。当 condition 为 True 时,循环体内的代码块将执行。执行完后,程序将再次检查 condition`的值。如果 condition`仍然为真,代码块将继续执行。这个过程会一直持续下去,直到 condition`变为 False,此时循环将终止。
下面是一个例子,展示了一个 while 循环,它打印数字,直到打印了 5 个数字为止:
#include <stdio.h>
int main()
{
int i = 1;
while(i < 5){
printf("%d",i);
i++;
}
return 0;
}
这个循环将打印出:
0
1
2
3
4
在编写 while循环时,可以使用break和continue语句来结束或跳过循环,但必须确保循环条件最终会变为 False,以避免无限循环,。
do .... while
do...while是一种循环结构,它在编程中用于执行至少一次代码块,然后检查一个条件。与while循环不同,do...while循环至少会执行一次代码块,即使条件一开始就不满足。
do...while循环的基本结构如下:
do {
condition;
}
while(表达式);
在这个结构中,代码块会先执行一次,然后检查condition。如果condition为真,代码块会再次执行。这个过程会一直持续下去,只要condition为真。
下面是一个简单的例子,展示了一个do...while循环,它打印数字,直到打印了 5 个数字为止:
#include <stdio.h>
int main()
{
int i = 0;
do{
printf("%d",i);
i++;
}while(i < 5)
return 0;
}
这个循环将打印出:
0
1
2
3
4
for
在C语言中,for循环是一种控制语句,用于多次执行一段代码,直到满足某个条件为止。for循环通常用于处理已知迭代次数的情况。
for循环的基本结构如下:
在这里:
初始化语句,用于设置循环变量。
循环条件,用于判断是否继续循环。
循环变量的更新语句,通常在每次循环体执行完毕后执行,用于更新循环变量的值。
代码块是要在每次循环中执行的内容。
for循环会不断重复执行代码块,直到循环条件表达式为 False`时停止。在每次循环开始之前,都会执行循环变量的更新语句和 循环条件检查,然后执行代码块。代码块执行完毕后,循环变量的更新语句表达式会被执行,然后再次检查循环条件。这个过程会一直持续下去,直到循环条件 为 False`时停止。
下面是一个简单的例子,展示了如何使用 `for` 循环来打印数字 1 到 5:
#include <stdio.h>
int main() {
int i;
for (i = 1; i <= 5; i++) {
printf("%d\n", i);
}
return 0;
}
这个程序会打印出:
1
2
3
4
5