C语言:分支与循环语句

目录

if语句

if-else语句

switch语句

whlie循环

for循环

[do while循环](#do while循环)


if语句

语法格式:

复制代码
if(表达式){
    语句
}

if小括号内表达式如果为真,就执行下面的语句,为假则不执行。(0表示假,1表示真)

if语句执行流程图如下:

还有一种情况为:

复制代码
if(表达式){
    语句1
}
esle{
    表达式2
}

if-else语句执行流程图如下:

默认情况下(if和else不写大括号的情况),if和else都只控制一个语句,若要控制多条语句,则必须加上大括号,(这里建议加上,不仅美观也是一个好习惯)

if-else也可以嵌套使用

复制代码
#include<stdio.h>
int main() {
	int age = 0;
	printf("请输入年龄:\n");
	scanf("%d", &age);
	if (age < 0)
	{
		printf("输入格式不正确,年龄没有负数");
	}
	else {
		if ((age >= 0) &&(age <= 10))
		{
			printf("为人类幼崽\n");
		}
		else if ((age > 10) && (age <= 18))
		{
			printf("青少年\n");
		}
		else
		{
			printf("成年人\n");
		}
	}
	return 0;
}

输出结果:

这行代码里边有一个"&&"表示的短路与,(表达式1) && (表达式2),当表达式1为假时,不再执行表达式2,直接为假,返回0。与这个用法类似的还有短路或"||",(表达式1) || (表达式2),当表达式1成立时,不再执行表达式2,直接为真,返回1。

switch语句

switch在英语中有开关的含义,在C语言中也充当"开关的作用"

复制代码
switch()
{
    case (数字):
        语句1;
        break;

    case (数字):
        语句2;
        break;
    case (数字):
        语句3;
        break;
    default:
        语句4;
        break;
}

switch是特殊形式的if-else结构,用于判断条件有多个结果时不同结果对应的语句。

注:case和数字之间要留有空格。default在case语句都没有匹配的时候充当默认语句。

C语言提供了三种循环:for,while,do while

whlie循环

复制代码
while(判断条件)
{
    循环体语句
}

程序流程图如下:

for循环

复制代码
for(表达式1;表达式2;表达式3){
    循环语句
}

for循环中的表达式123在实际写代码的过程中可能会遇到空着不写的地方,也是正确的书写。

for循环程序流程图如下:

例子:

复制代码
#include<stdio.h>
int main() {
	for (int i = 0; i < 10; i++)
	{
		int num = i + 1;
		printf("%d ",num);
	}
	return 0;
}

运行结果如下:

do while循环

格式为:

复制代码
do{
    循环语句
}
while(条件判断);

程序流程图如下:

do-while循环先执行一遍循环体再对条件进行判断。

这三个循环都有continue和break。在循环中,continue语句用于跳出本次循环,进入下一次循环,而break语句则是直接终止循环,执行后面的语句。这两个语句的共同点是:break\continue后面的语句均不再执行。

相关推荐
三毛的二哥2 小时前
BEV:典型BEV算法总结
人工智能·算法·计算机视觉·3d
2401_873479402 小时前
如何利用IP查询定位识别电商刷单?4个关键指标+工具配置方案
开发语言·tcp/ip·php
我爱cope2 小时前
【从0开始学设计模式-10| 装饰模式】
java·开发语言·设计模式
菜鸟学Python2 小时前
Python生态在悄悄改变:FastAPI全面反超,Django和Flask还行吗?
开发语言·python·django·flask·fastapi
南宫萧幕2 小时前
自控PID+MATLAB仿真+混动P0/P1/P2/P3/P4构型
算法·机器学习·matlab·simulink·控制·pid
浪浪小洋3 小时前
c++ qt课设定制
开发语言·c++
charlie1145141914 小时前
嵌入式C++工程实践第16篇:第四次重构 —— LED模板,从通用GPIO到专用抽象
c语言·开发语言·c++·驱动开发·嵌入式硬件·重构
handler014 小时前
Linux: 基本指令知识点(2)
linux·服务器·c语言·c++·笔记·学习
故事和你914 小时前
洛谷-数据结构1-4-图的基本应用1
开发语言·数据结构·算法·深度优先·动态规划·图论
我叫黑大帅4 小时前
为什么map查找时间复杂度是O(1)?
后端·算法·面试