C语言 循环控制流程的跳转语句

本文 我们来说 控制流程的跳转语句

C语言 提供三种 控制流程的跳转语句

1. break 语句

我们之前讲 switch 时 大家已经看到过这个 break 了 作用是跳出当前 switch
在循环中 它的作用也差不多

这里 我们举个生活中的例子 例如 我们在操场上跑步
计划跑十圈 但是 还没跑完 我们感到了身体不适,就需要提前退场 不跑了 但其实并没有跑完
代码逻辑 举例如下图
在这里插入图片描述
我们开启一个计数循环 跑十圈 但 如果判断到身体不适 我们就需要 break 终止循环
break 的作用就是强制跳出当前循环

然后 又如 小红 想让妈妈买糖
如果不买 小红就哭到妈妈买 循环逻辑就是哭
但是 妈妈一直不买 条件没达到 但是小红哭累了 提前break结束循环
如下图
在这里插入图片描述
这里 我们做个代码小案例

#define _CRT_SECURE_NO_WARNINGS//禁用安全函数警告
#pragma warning(disable:6031)//禁用 6031 的安全警告
#include <stdio.h>int main() {for (int i = 1;i <= 10;i = i + 1) {printf("i的值为 %d\n", i);if (i == 5) {break;}}
}

按逻辑走 循环应该执行 10次
但是 我们判断 到第五次 就会 break
运行代码
在这里插入图片描述
到 第五次 就被迫停止了

2.continue 语句

continue 语句和break语句一样,也可用于对循环进行内部控制,起到条件跳转的作用,但二者对流程的控制效果是不同的。

例如 我们这样写

#define _CRT_SECURE_NO_WARNINGS//禁用安全函数警告
#pragma warning(disable:6031)//禁用 6031 的安全警告
#include <stdio.h>int main() {for (int i = 1;i <= 10;i = i + 1) {if (i == 5) {continue;}printf("i的值为 %d\n", i);}
}

逻辑 和我们上一个案例基本是一致的

然后 我们运行代码
在这里插入图片描述
可以看到 输出了 1 到 10 但少了 5 因为 5那次循环执行到 continue 就直接被跳出去 执行下一次循环了
简单说 遇到 break 整个循环就停了 而 continue只是跳出了这一次 循环 执行下一次去了

3. goto 语句

这是用于嵌套语句跳出的逻辑

#define _CRT_SECURE_NO_WARNINGS//禁用安全函数警告
#pragma warning(disable:6031)//禁用 6031 的安全警告
#include <stdio.h>int main() {for (int i = 1;i <= 10;i = i + 1) {for (int i = 1;i <= 10;i = i + 1) {if (i == 5) {break;}printf("i的值为 %d\n", i);}printf("外层执行\n");}
}

在这里插入图片描述
break 只能实现 每次 到 5把里面这个循环关了

但是 如果我们想一起关掉

#define _CRT_SECURE_NO_WARNINGS
#pragma warning(disable:6031)
#include <stdio.h>int main() {for (int i = 1; i <= 10; i = i + 1) {for (int j = 1; j <= 10; j = j + 1) { // 使用 j 代替内层循环的变量名if (j == 5) {goto PRN;}printf("j的值为 %d\n", j);}printf("外层执行\n");}PRN:printf("跳出内层循环\n");return 0;
}

运行结果如下
在这里插入图片描述
这里 我们做了 goto 表示为 PRN
自动跳到 PRN 的位置

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.hqwc.cn/news/682244.html

如若内容造成侵权/违法违规/事实不符,请联系编程知识网进行投诉反馈email:809451989@qq.com,一经查实,立即删除!

相关文章

压缩和归档库-LZ4介绍

1.简介 LZ4是一种快速的压缩算法&#xff0c;提供压缩和解压缩的速度&#xff0c;而牺牲了压缩率。它被设计用于快速的数据压缩和解压缩&#xff0c;特别是用于数据存储和传输。LZ4通常用于需要高速数据处理的场景&#xff0c;如数据库、日志文件处理和实时数据传输。 LZ4的特…

【LLM 论文】Least-to-Most Prompting 让 LLM 实现复杂推理

论文&#xff1a;Least-to-Most Prompting Enables Complex Reasoning in Large Language Models ⭐⭐⭐ Google Research, ICLR 2023 论文速读 Chain-of-Thought&#xff08;CoT&#xff09; prompting 的方法通过结合 few-show prompt 的思路&#xff0c;让 LLM 能够挑战更具…

上位机图像处理和嵌入式模块部署(树莓派4b和c++新版本的问题)

【 声明&#xff1a;版权所有&#xff0c;欢迎转载&#xff0c;请勿用于商业用途。 联系信箱&#xff1a;feixiaoxing 163.com】 自己读书的时候是03年&#xff0c;学习c也是差不多04年开始&#xff0c;到现在基本上20年了。这20年过程当中&#xff0c;其实c的语言版本一直是在…

phpstudy(MySQL启动又立马停止)问题的解决办法

方法一&#xff1a;查看本地安装的MySQL有没有启动 1.鼠标右击开始按钮选择计算机管理 2.点击服务和应用程序 3.找到服务双击 4.找到MySQL服务 5.双击查看是否启动&#xff0c;如启动则停止他&#xff0c;然后确定&#xff0c;重新打开phpstudy,启动Mysql. 方法二&#xff…

【半夜学习MySQL】数据库概念详解探索数据库到底是如何存储的?

&#x1f3e0;关于专栏&#xff1a;半夜学习MySQL专栏用于记录MySQL数据相关内容。 &#x1f3af;每天努力一点点&#xff0c;技术变化看得见 文章目录 什么是数据库主流数据库与数据库分类数据库的基本使用数据库的启动及关闭查看配置文件与数据库存储位置连接数据库服务器服务…

Linux网络部分——SSH远程访问及控制

目录 一、配置OpenSSH服务端【☆】 1. ssh服务端配置 vim /etc/ssh/sshd_config 2.客户端连接验证 二、使用SSH客户端程序 1.ssh 远程登录 2.scp 远程复制 3.sftp 安全FTP 三、SSH的验证方式 1. 密钥对验证【☆】 2. 如何实现免密登录 【拓展】免交互创建密钥对和免交…

配电室智能巡检机器人

近年来&#xff0c;生产过程高度自动化&#xff0c;各工矿企业关键场所需定期巡检维护。但目前巡检主要靠人工&#xff0c;既耗时费力效率又低&#xff0c;且受环境等因素影响&#xff0c;巡检难以全面规范&#xff0c;隐患或问题易被忽视。在此情况下&#xff0c;如何利用现有…

OpenHarmony实战开发——WLAN驱动框架介绍及适配方法

1. WLAN 驱动框架概述 WLAN 是基于 HDF(Hardware Driver Foundation)驱动框架开发的模块&#xff0c;该模块可实现跨操作系统迁移、自适应器件差异、模块化拼装编译等功能。从而降低 WLAN 驱动开发的难度&#xff0c;减少 WLAN 驱动移植和开发的工作量。 本文主要分析 WLAN 驱…

利用自动获客软件实现高效精准获客

在数字化时代的浪潮中&#xff0c;企业之间的竞争愈发激烈。客户资源的获取成为企业生存和发展的关键。传统的获客方式如广告投放、线下推广等不仅成本高昂&#xff0c;而且效率和准确性难以保证。随着科技的进步&#xff0c;自动获客软件应运而生&#xff0c;它以其独特的优势…

【Linux】yum与vim

文章目录 软件包管理器&#xff1a;yumLinux安装和卸载软件包Linux中的编辑器&#xff1a;vimvim下的底行模式vim下的正常模式vim下的替换模式vim下的视图模式vim下的多线程 软件包管理器&#xff1a;yum yum其实就是一个软件,也可以叫商店 和你手机上的应用商店或app store一…

多进程编程

创建一对父子进程&#xff1a; 父进程负责向文件中写入 长方形的长和宽 子进程负责读取文件中的长宽信息后&#xff0c;计算长方形的面积 代码&#xff1a; #include <stdio.h> #include <string.h> #include <stdlib.h> #include <unistd.h> #inc…

Linux(openEuler、CentOS8)企业内网DHCP服务器搭建(固定Mac获取指定IP)

----本实验环境为openEuler系统<以server方式安装>&#xff08;CentOS8基本一致&#xff0c;可参考本文&#xff09;---- 目录 一、知识点二、实验&#xff08;一&#xff09;为服务器配置网卡和IP&#xff08;二&#xff09;为服务器安装DHCP服务软件&#xff08;三&a…