【C语言基础】遍历

news/2024/10/18 1:29:56/
  • (꒪ꇴ꒪(꒪ꇴ꒪ ),我是祐言
  • 博客主页:C语言基础,Linux基础,软件配置领域博主🌍
  • 快上🚘,一起学习!
  • 送给读者的一句鸡汤🤔:
  • 集中起来的意志可以击穿顽石!
  • 作者水平很有限,如果发现错误,可在评论区指正,感谢🙏
  • 🎉感谢关注

一、遍历

         遍历是指按照一定的顺序逐个访问集合中的元素或执行某个操作的过程。遍历通常使用循环结构来实现,以便对集合中的每个元素进行处理。在编程中,遍历常用于处理数据结构(如数组、链表、树等)或迭代访问某个范围的元素。通过遍历,我们可以逐个访问集合中的元素,进行读取、修改、打印等操作。

        遍历的基本思路如下:

        (1)确定遍历的起点和终点:确定要遍历的集合或范围,以及遍历的起始位置和终止条件。

        (2)设定循环:使用循环结构(如 for 循环、while 循环等)来控制遍历过程。循环的计数器或迭代变量通常与集合的索引相关。

        (3)访问元素:在每次循环迭代中,根据当前的计数器或迭代变量,访问集合中相应的元素。

        下面是一的遍历的简单示例:

#include <stdio.h>int main() {int numbers[] = {1, 2, 3, 4, 5};int length = sizeof(numbers) / sizeof(numbers[0]);// 使用 for 循环遍历数组for (int i = 0; i < length; i++) {printf("%d \n", numbers[i]);}return 0;
}

        在这个示例中呢,我们定义了一个整数数组 numbers,然后使用 for 循环遍历数组的每个元素并打印出来。循环的计数器 i 控制了遍历的索引,从 0 递增到数组长度减 1。

        需要注意的是,遍历的终止条件通常是计数器达到集合的长度或满足特定的条件。通过遍历,我们可以按照需要逐个处理集合中的元素,执行特定的操作,比如查找最大值、求和、筛选符合条件的元素等。

二、双重遍历

        

        双重遍历是指嵌套两层循环,内层循环在外层循环的每次迭代中都完全执行一遍。这种嵌套循环的结构常用于处理多维数据结构等。在双重遍历中,外层循环控制着整体的迭代次数,内层循环用于对每个外层循环迭代中的元素执行操作。

        下面我们来通过一个简单的示例题目学习双重遍历:

编写一个程序,接受一个整数输入,然后显示所有小于或等于该数的素数。

(ps:素数:只能被1和本身整除的数)

        先来看看实现效果吧。        

        效果不错,那么一起来学习一下如何实现吧:

#include <stdio.h>// 自定义函数,用于打印小于等于给定整数的素数
void prime(int n)
{int i, j;// 首先判断输入是否有效if (n < 2){printf("无效参数\n");return;}// 从2开始遍历到给定整数nfor (i = 2; i <= n; i++){// 对于每个数字i,从2到i-1遍历for (j = 2; j < i; j++){// 如果i能够被j整除,则说明不是素数,退出内层循环if (i % j == 0)break;}// 如果内层循环正常结束,说明i没有被整除过,是素数,打印出来if (i == j)printf("%d ", i);}printf("\n");
}int main(int argc, char *argv[])
{int n;printf("请输入一个整数: \n");scanf("%d", &n);// 调用自定义函数,打印小于等于给定整数的素数prime(n);return 0;
}

        是否看的一头雾水呢,那么再来看看解释吧:

  • 首先在开头引入了 <stdio.h> 标准库头文件,以便使用输入输出函数。

  • 定义一个自定义函数 prime,用于打印小于等于给定整数的素数。

  • prime 函数中,首先判断输入的参数是否小于2。如果小于2,即无效参数,打印一条错误提示信息,并返回到调用函数。

  • 在外层循环中,从2开始遍历到给定的整数n。

  • 在内层循环中,对于每个数字i,从2到j(i-1)进行遍历。

  • 如果i能够被某个数字j整除(即 i % j == 0),则说明i不是素数,退出内层循环。

  • 如果内层循环正常结束(即 i == j),说明i没有被整除过,是素数,将其打印出来。

  • main 函数中,首先提示用户输入一个整数,并使用 scanf 函数将输入的值存储在变量n中。

  • 然后,调用自定义函数 prime(n),打印小于等于给定整数的素数。

  • 最后,返回0表示程序成功执行完毕。

这个程序通过嵌套循环来判断素数,并打印出小于等于给定整数的素数。素数判断的逻辑是通过判断一个数是否能被2到它本身减1的数字整除来实现的。

    最后总结一下!

        遍历的终止条件通常是计数器达到集合的长度或满足特定的条件。通过遍历,我们可以按照需要逐个处理集合中的元素,执行特定的操作,比如查找最大值、求和、筛选符合条件的元素等。

📢写在最后

  • 今天的分享就到这啦~
  • 觉得博主写的还不错的烦劳 一键三连喔~

 


http://www.ppmy.cn/news/775044.html

相关文章

【动手学习深度学习--逐行代码解析合集】10Dropout暂退法

【动手学习深度学习】逐行代码解析合集 10Dropout暂退法 视频链接&#xff1a;动手学习深度学习–Dropout暂退法 课程主页&#xff1a;https://courses.d2l.ai/zh-v2/ 教材&#xff1a;https://zh-v2.d2l.ai/ 1、暂退法原理 2、从零开始实现暂退法 import torch from torch i…

Java垃圾回收机制详解和调优

gc即垃圾收集机制是指jvm用于释放那些不再使用的对象所占用的内存。java语言并不要求jvm有gc&#xff0c;也没有规定gc如何工作。不过常用的jvm都有gc&#xff0c;而且大多数gc都使用类似的算法管理内存和执行收集操作。 在充分理解了垃圾收集算法和执行过程后&#xff0c;才能…

Everything如何按时间查找文件和文件夹 everything使用教程

d: datemodified:2023/07/05 size:>10Mb d: dc:2023/07/05 size:>10Mb datecreated:<date> 搜索指定创建日期的文件和文件夹.简写dc: datemodified:<date> 搜索指定修改日期的文件和文件夹. 简写dm: daterun:<date> 搜索指定打开时间的文件和文件夹…

BCJC 6O《图灵的秘密》读书笔记10纽曼与算法

剑桥大学的数理逻辑大拿证明不确定性定理.并首次提出了"算法"概念. 算法:解决某个问题的一组明确的指令集. 算法是对解决一类问题(过程)思路的描述.

软件设计模式与体系结构-设计模式-行为型软件设计模式-状态模式

五、状态模式 概念 与策略模式类似&#xff0c;状态模式将不同状态下的行为封装在不同的类中&#xff0c;每个类代表一个状态 状态模式的组成 Context&#xff1a;定义了与客户程序的接口&#xff0c;它保持了一个concreteState的代表现在状态的实例State&#xff1a;定义了…

021-企业站:纽曼移动端微官网实战

一、移动端纽曼项目首页菜单栏模块 二、移动端纽曼项目首页产品中心模块 三、移动端纽曼项目首页新闻列表模块 四、移动端纽曼项目首页公司简介模块

投影仪怎么看电视节目?超简单几个步骤小白也能马上学会

小时候我们大院看电视节目都是通过胶卷投影实现的&#xff0c;简单原理就是把图像或者视频投射到大白布上&#xff0c;让更多的人一起来欣赏&#xff0c;这是最开始的投影概念。由于现在科学技术的进步&#xff0c;不同于以前的投影设备&#xff0c;更加智能化的投影仪应运而生…

[自学第十一天] 静态项目实战_纽曼官网(用时三天)

1.需求分析 2.创建项目目录 样式分为 index.css 首页内容样式 public.css 公共样式 reset.css 页面样式初始化 3.完成首页的结构与样式 首页结构展示 初始化样式部分展示 4.最终效果展示(静态) 5.总结 第一次自己写静态网页,思路不是很清晰,结构调整了很久.样式也敲了很久才…