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后面的语句均不再执行。

相关推荐
愚润求学5 分钟前
【C++】vector的模拟实现
开发语言·c++·stl·语法
uhakadotcom12 分钟前
OpenAI 的 PaperBench:AI 研究复现基准测试工具
算法·面试·github
凯强同学18 分钟前
第十四届蓝桥杯大赛软件赛省赛Python 大学 C 组:6.棋盘
python·算法·蓝桥杯
我的大老婆19 分钟前
【Python】Python 环境 + Pycharm 编译器 官网免费下载安装(图文教程,新手安装,Windows 10 系统)
开发语言·windows·经验分享·python·青少年编程·pycharm
m0_5557629024 分钟前
多人协同进行qt应用程序开发应该注意什么?
开发语言·qt
wuqingshun3141591 小时前
蓝桥杯 切割
数据结构·c++·算法·职场和发展·蓝桥杯
艾妮艾妮1 小时前
C语言常见3种排序
java·c语言·开发语言·c++·算法·c#·排序算法
百度Geek说1 小时前
前沿多模态模型开发与应用实战3:DeepSeek-VL2多模态理解大模型算法解析与功能抢先体验
算法
小王努力学编程1 小时前
动态规划学习——回文子串系列问题【C++】
c++·学习·算法·leetcode·动态规划
A_ugust__1 小时前
vue3项目使用 python +flask 打包成桌面应用
开发语言·python·flask