从零开始的循环之旅(下)

简介: 从零开始的循环之旅(下)

前言


在上期中,我们掌握了 if 语句:

if(条件)
     语句;


当条件满足的情况下,if语句后的语句执行,否则不执行。

但是这个语句只会执行一次。

很多情况下我们执行的某件事情需要反复执行,这时我们就需要使用 while 语句来实现循环。


1.1、while


while 语句如下:

while(表达式)
 循环语句;


我们来看下面的例子,来更好的学习它。

#include <stdio.h>
int main()               //在屏幕上打印1~10
{
  int i = 1;
  while(i<=10)            //当i<=10时为真,执行while里的语句
   {                   //当i=11时为假,不执行while里的语句
    printf("%d ", i);
    i = i+1;         //每次打印完i加一,再回到(i<=10)进行判断
   }
  return 0;
}


1.2、while语句中的break和continue


在上期的 switch 中,我们了解了 break ,那它在 while 语句中又是怎样的呢?

话不多说,我们上代码:

#include <stdio.h>
int main()           //大家觉得最终输出结果是什么呢?
{
  int i = 1;
  while(i<=10)
  {
    if(i == 5)
      break;
    printf("%d ", i);
    i = i+1;
  }
  return 0; 
 }

输出结果:1 2 3 4

从这个输出结果我们可以猜出 break 的作用就是退出循环了


下面我们再来看一下 continue 作用,话不多说直接上代码:

#include <stdio.h>
int main()        //大家可以猜猜这个代码输出结果是啥
{
   int i = 1;
   while(i<=10)
    {
      if(i == 5)
          continue;
        printf("%d ", i);
        i = i+1;
    }
  return 0;
 }


输出结果:1 2 3 4

那么 continue 的作用是什么呢?

continue是用于终止本次循环的,也就是本次循环中 continue 后边的代码不会再执行,而是直接跳转到while语句的判断部分。进行下一次循环的入口判断。


2.1、for循环


我们来看一下 for 循环的语法:

for(表达式1; 表达式2; 表达式3)
 循环语句;


表达式1为初始化部分,用于初始化循环变量的。

表达式2为条件判断部分,用于判断循环时候终止。

表达式3为调整部分,用于循环条件的调整。


我们来看个简单例子:


对比 while 循环,for 循环更加简洁明了,更容易修改。

所以 for 循环的使用频率最高。我们也优先选择 for 循环。


2.2、for循环中的break和continue


在for循环中也可以使用break和continue,break 的作用不变,continue 略有差异。

我们上代码来看看吧


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


我们来看输出结果吧 :1 2 3 4 6 7 8 9 10

这里的 continue 作用是直接回到 for 后面的 i++ ,也就是表达式3,使得5没有被打印。


3.1、do…while()循环


do语句的语法:

do
 循环语句;
while(表达式);

do语句的特点:

循环至少执行一次,使用的场景有限,所以不是经常使用。


#include <stdio.h>
int main()
{                      //打印1~10
  int i = 1;
  do
  {
  printf("%d ", i);
  i=i+1;
  }
  while(i<=10);     //若i<=10,进入循环语句
  return 0; 
}

3.2、do while循环中的break和continue


break 作用还是退出循环

我们来看看 continue 吧


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


输出结果:1 2 3 4

那么 continue 的作用也就很明显了,就是直接去到 i<=10 ,也就是表达式里进行判断。


总结


break和continue的用法大同小异,记住这几点就没错了:

1、break 是退出该循环。

2、continue 是用于终止本次循环的,也就是本次循环中 continue 后边的代码不会再执行,而是直接跳转到循环语句的判断部分(for 循环是跳到表达式3)。


最后


如果有错误的地方还请大家指出,有问题也可以在评论区讨论,我们下期见。


相关文章
|
11月前
|
资源调度 API 开发者
Three入门 【基础知识,并搭建第一个场景】
Three入门 【基础知识,并搭建第一个场景】
81 0
|
15天前
|
存储 Python
Python编程入门:从零开始的代码之旅
【9月更文挑战第4天】本文将带领初学者步入Python的世界,通过简明的语言和直观的例子,逐步揭示编程的乐趣。我们将一起构建基础的数据结构,探索控制语句的奥秘,并实现简单的函数。无论你是编程新手还是希望巩固基础,这篇文章都是你理想的起点。让我们开始吧,一步步将代码块搭建成思维的宫殿!
18 2
|
15天前
|
XML Java Android开发
探索Android开发之旅:打造你的第一个应用
【9月更文挑战第4天】在这篇专为初学者设计的文章中,我们将一起踏上激动人心的Android开发之旅。从设置开发环境到实现一个简单的“Hello World”应用,每一步都充满了发现和学习。文章将引导你理解Android开发的基础知识,并鼓励你动手实践。让我们开始吧,创造你的第一款Android应用,开启技术世界的新篇章!
|
19天前
|
数据采集 存储 数据库
构建你的第一个Python爬虫:从入门到实践
【8月更文挑战第31天】在数字时代的浪潮中,数据如同新时代的石油,而网络爬虫则是开采这些数据的钻头。本文将引导初学者了解并实现一个基础的网络爬虫,使用Python语言,通过实际代码示例,展示如何收集和解析网页信息。我们将一起探索HTTP请求、HTML解析以及数据存储等核心概念,让你能够快速上手并运行你的首个爬虫项目。
|
27天前
|
存储 程序员 Python
Python编程基础:从零开始的代码之旅
【8月更文挑战第24天】这篇文章旨在为初学者提供一个友好的Python入门指南。通过简明的语言和实际的编码示例,我们将探索Python的基本概念、数据结构、控制流程以及函数的使用。无论你是编程新手还是想扩展你的技能库,这篇文章都将是你学习旅程中的一块垫脚石。让我们开始吧,一起揭开编程的神秘面纱,享受代码带来的乐趣!
16 1
|
19天前
|
Java Maven Android开发
解锁Web开发新技能:从零开始的Struts 2之旅——让你的Java编程之路更加宽广,首个应用实例带你飞!
【8月更文挑战第31天】对于初学者,掌握 Struts 2 框架不仅能提升 Web 开发能力,还能深入了解 MVC 架构。Struts 2 是一个基于 Servlet 的 Java 框架,提供表单验证、文件上传、国际化等功能,便于快速构建易维护的 Web 应用。本文通过示例演示如何从零开始搭建环境并创建一个简单的 Struts 2 项目,包括配置 `struts.xml`、编写 Action 类及视图文件,并配置 web.xml。通过这些步骤,你将学会基本的开发流程,为进一步学习高级功能打下基础。
29 0
|
3月前
|
机器学习/深度学习 人工智能 数据挖掘
代码之旅:探索编程世界的无限可能
在数字时代的浪潮中,编程技术成为连接现实与虚拟的桥梁。本文将通过个人的技术感悟,探讨编程如何改变世界,提升个人能力,并预测未来技术的发展趋势。我们将一起揭开代码的神秘面纱,体验编程带来的创造乐趣和挑战。
|
3月前
一文搞懂:从零开始BlazorServer(7)
一文搞懂:从零开始BlazorServer(7)
15 0
|
3月前
|
程序员
程序员必知:从零开始的ArduinoUNOR3
程序员必知:从零开始的ArduinoUNOR3
64 0
|
4月前
|
NoSQL 应用服务中间件 Shell
从零开始掌握Docek的基础知识与应用技巧
从零开始掌握Docek的基础知识与应用技巧