C(十)for循环 --- 黑神话情景

embedded/2024/12/22 21:56:54/

前言:

"踏过三界宝刹,阅过四洲繁华。笑过五蕴痴缠,舍过六根牵挂。怕什么欲念不休,怕什么浪迹天涯。步履不停,便是得救之法。"  

国际惯例,开篇先喝碗鸡汤。

今天,杰哥写的 for 循环相关内容👉目录:

  • for循环 的组成、运行流程及其变式
  • 使用for循环的若干注意事项
  • 关键字break 和 continue 在for 循环中的作用
  • for 循环的嵌套
  • 天命人

 一、for循环 的组成、运行流程及其变式

1、for循环的组成 

表达式1--->初始化

表达式2--->判断

表达式3--->调整

for (表达式1; 表达式2; 表达式3)
{语句;
}

场景一:大圣法力积聚,1,2,3,···,9,10。👉

#define _CRT_SECURE_NO_WARNINGS 1#include <stdio.h>
int main()
{int i = 0;for (i = 1; i <= 10; i++){printf("%d ", i);}return 0;
}

 2、for循环的运行流程

emmm 字丑勿喷 ,哈哈。

 3、for循环的变式

 3.1变表达式1(初始化)

#define _CRT_SECURE_NO_WARNINGS 1#include <stdio.h>
int main()
{int i = 0;for (i = 5; i <= 10; i++){printf("%d ", i);}return 0;
}

运行结果👉:

5 6 7 8 9 10

3.2变表达式2(判断)

#define _CRT_SECURE_NO_WARNINGS 1#include <stdio.h>
int main()
{int i = 0;for (i = 1; i <= 9; i++){printf("%d ", i);}return 0;
}

 运行结果:👉

1 2 3 4 5 6 7 8 9

3.3变表达式3(调整)

#define _CRT_SECURE_NO_WARNINGS 1#include <stdio.h>
int main()
{int i = 0;for (i = 1; i <= 10; i += 2){printf("%d ", i);}return 0;
}

运行结果:👉

1 3 5 7 9

3.4表达式移位与删除

 3.4.1(表达式1移位)

#define _CRT_SECURE_NO_WARNINGS 1#include <stdio.h>
int main()
{int i = 1;for (; i <= 10; i++){printf("%d ", i);}return 0;
}

3.4.2(死循环)(表达式2删除)

#define _CRT_SECURE_NO_WARNINGS 1#include <stdio.h>
int main()
{int i = 0;for (i = 1; ; i++){printf("%d ", i);}return 0;
}

 3.4.3(表达式3移位)

#define _CRT_SECURE_NO_WARNINGS 1#include <stdio.h>
int main()
{int i = 0;for (i = 1; i <= 10; ){i++;printf("%d ", i);}return 0;
}
2 3 4 5 6 7 8 9 10 11

3.5三个表达式全变 

 场景二:

大圣在打斗过程中,原生命值为100,现以5格血的速度往下掉,直到为0;

#define _CRT_SECURE_NO_WARNINGS 1#include <stdio.h>
int main()
{int i = 0;for (i = 100; i >= 0; i -= 5){printf("%d ", i);}return 0;
}

运行结果👉

100 95 90 85 80 75 70 65 60 55 50 45 40 35 30 25 20 15 10 5 0

二、使用for循环的若干注意事项

 for循环的括号后面不可以加分号(因为分号可作为空语句,也算语句,那么分号假冒循环体)。

👉错误示例: 

for (表达式1; 表达式2; 表达式3);
{语句;
}

留意是否能够在循环体中改变变量(尤其是控制循环进行的变量)

👉错误示例:(死循环)

#define _CRT_SECURE_NO_WARNINGS 1#include <stdio.h>
int main()
{int i = 0;for (i = 1; i <= 10; i++){printf("%d ", i);i = 1;}return 0;
}

三、关键字break 和 continue 在for 循环中的作用 

 1、break

———遇到break直接跳出整个循环 

 2、continue

———遇到continue跳出本次循环中continue后面的部分,又回到表达式3(调整部分)的位置开始

如下:

#define _CRT_SECURE_NO_WARNINGS 1#include <stdio.h>
int main()
{int i = 0;for (i = 1; i <= 10; i++){if (5 == i){continue;}printf("%d ", i);}return 0;
}

 运行结果👉

1 2 3 4 6 7 8 9 10

四、for 循环的嵌套

 场景三:

每闯过一关,难度会以下方式增加。

第一关:1 ;第二关:1 * 2 ;第三关 :1 * 2 * 3;······求难度总和,即1!+ 2!+···+10!

#define _CRT_SECURE_NO_WARNINGS 1#include <stdio.h>
int main()
{int sum = 0;int i = 0;for (i = 1; i <= 10; i++){int r = 1;int j = 0;for (j = 1; j <= i; j++){r *= j;}sum += r;}printf("%d", sum);return 0;
}

思考👉👉👉

  • 为什么int  sum = 0不放在循环的里面?
  • 为什么int  r  =  1不放在循环的外面?

运行结果👉

4037913

 五、天命人

敢问路在何方?路在脚下。

不是顺从天命,而是逆天改命。


http://www.ppmy.cn/embedded/121726.html

相关文章

负载均衡--相关面试题(六)

在负载均衡的面试中&#xff0c;可能会遇到一系列涉及概念、原理、实践应用以及技术细节的问题。以下是一些常见的负载均衡面试题及其详细解答&#xff1a; 一、什么是负载均衡&#xff1f; 回答&#xff1a;负载均衡是一种将网络请求或数据传输工作分配给多个服务器或网络资源…

计算机前沿技术-人工智能算法-大语言模型-最新研究进展-2024-10-02

计算机前沿技术-人工智能算法-大语言模型-最新研究进展-2024-10-02 1. APM: Large Language Model Agent-based Asset Pricing Models Authors: Junyan Cheng, Peter Chin https://arxiv.org/abs/2409.17266 APM: 基于大型语言模型的代理资产定价模型&#xff08;LLM Agent-b…

版本发布 | IvorySQL 3.4 发版

[发行日期&#xff1a;2024年9月26日] IvorySQL 3.4基于PostgreSQL 16.4&#xff0c;并修复了多个问题。更多信息请参考文档网站。 >>>新版本体验链接&#xff1a; https://docs.ivorysql.org/cn/ivorysql-doc/v3.4/v3.4/1.html 1 增强功能 >>>PostgreSQL…

【Spring】运行Spring Boot项目,请求响应流程分析以及404和500报错

1. 运行项目 import org.springframework.boot.SpringApplication; import org.springframework.boot.autoconfigure.SpringBootApplication; SpringBootApplication public class Application { public static void main(String[] args) { SpringApplication.run(Appl…

什么是 HTTP 请求中的 options 请求?

在 Chrome 开发者工具中的 Network 面板看到的 HTTP 方法 OPTIONS&#xff0c;其实是 HTTP 协议的一部分&#xff0c;用于客户端和服务器之间进行“预检”或“协商”。OPTIONS 请求的作用是让客户端能够获取关于服务器支持的 HTTP 方法和其他跨域资源共享 (CORS) 相关的信息&am…

OceanBase企业级分布式关系数据库

简介 OceanBase 数据库是阿里巴巴和蚂蚁集团不基于任何开源产品&#xff0c;完全自研的原生分布式关系数据库软件&#xff0c;在普通硬件上实现金融级高可用&#xff0c;首创“三地五中心”城市级故障自动无损容灾新标准&#xff0c;具备卓越的水平扩展能力&#xff0c;全球首…

LeetCode24. 两两交换链表中的节点(2024秋季每日一题 32)

给你一个链表&#xff0c;两两交换其中相邻的节点&#xff0c;并返回交换后链表的头节点。你必须在不修改节点内部的值的情况下完成本题&#xff08;即&#xff0c;只能进行节点交换&#xff09;。 示例 1&#xff1a; 输入&#xff1a;head [1,2,3,4] 输出&#xff1a;[2,1,…

高校教师成果管理小程序的设计与实现springboot(lw+演示+源码+运行)

摘 要 互联网发展至今&#xff0c;无论是其理论还是技术都已经成熟&#xff0c;而且它广泛参与在社会中的方方面面。它让信息都可以通过网络传播&#xff0c;搭配信息管理工具可以很好地为人们提供服务。针对高校教师成果信息管理混乱&#xff0c;出错率高&#xff0c;信息安全…