C语言:循环语句(while循环、for循环)

简介: C语言:循环语句(while循环、for循环)

延续上文,本篇中我将为你们介绍循环语句。


一、 while循环

在if语句中,如果条件满足,则执行语句内容,否则不执行。但是语句只能执行一次。

C语言中,为我们引入了 while语句,可以在条件满足的情况下,实现语句内容的多次执行

int i=1;
while(i<=10)
{
    printf("%d ",i);
    i++;
}

如上代码,我们就可以一次性把1~10所有整数打印在屏幕上。

如果我们加上一点要求,比如:1、当 i > 5 时,不再打印;2、在打印 1 ~ 10 的过程中跳过5。

为了实现 1 , 2 ,我们需要引入两个新的关键词: breakcontinue

1. break 的功能

图1:

当 i > 5 时,执行 if 语句中的 break ,终止循环。

图二:

图一图二 进行对比 ,我们可以得出结论:

break 能够终止 其所在的 while 循环。

2. continue 的功能

continue 的作用总结:

本次循环中continue后边的代码不会再执行

而是直接跳转到while语句的判断部分。进行下一次循环的入口判断

 


二、 for循环

1. for循环语法

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

表达式 1 : 初始化部分,用于初始化循环变量;

表达式 2: 条件判断部分,用于判断循环是否继续进行;

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

这里,我将用for循环 为读者演示 while循环部分 代码功能的实现;

打印1 ~ 10 的数字:

for (i = 1; i <= 10; i++)
{    //i=1 初始化循环变量 ; 判断循环终止条件 ; 调整循环变量 
  printf("%d ", i);
}

2. for循环中的 break 和 continue

break:

continue:

可以看出,for循环中 break 和 continue 在功能上 与 二者在while循环中并无不同

3. for语句的循环控制变量

不可在for 循环体内修改循环变量,防止 for 循环失去控制

在这里,我故意写一个错误代码:

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

这里是运行结果:

(死循环地打印 5 )

4. for循环的一些变种

//代码1

for循环中的初始化部分,判断部分,调整部分是可以省略的

#include<stdio.h>
int main()
{
  for (;;)
  {
    printf("hehe\n");
  }
  return 0;
}

(死循环打印"hehe")

(建议新手不要这么用)

//代码2

#include<stdio.h>
//代码2
int main()
{
  int i = 0;
  int j = 0;
  for (; i < 4; i++)
  {
    for (; j < 4; j++)
      printf("hehe ");
        printf("\n");
  }
  return 0;
}
//给出代码3,供读者比较
//代码3
int main()
{
  int i = 0;
  int j = 0;
  for (i = 0; i < 4; i++)
  {
    for (j = 0; j < 4; j++)
      printf("hehe ");
    printf("\n");
  }
  return 0;
}

读者觉得 代码2 的运行结果 与代码3 相比如何?

代码2:

代码3 :

之所以两段代码在结果上产生不同,其原因在于 代码3 中第二个for循环起始都对 j进行了初始化 。

//代码4

#include<stdio.h>
int main()
{
  int i = 0;
  int j = 0;
  for (i = 0, j = 0; i < 2 && j < 5; ++i, j++)
  {
    printf("hehe ");
  }
  return 0;
}
//多变量控制循环

本篇文章到此结束!

相关文章
|
3天前
|
Java 程序员 Linux
探索C语言宝库:从基础到进阶的干货知识(类型变量+条件循环+函数模块+指针+内存+文件)
探索C语言宝库:从基础到进阶的干货知识(类型变量+条件循环+函数模块+指针+内存+文件)
11 0
|
4天前
|
C语言
C语言循环结构详解:for、while、do while、break与continue
C语言循环结构详解:for、while、do while、break与continue
10 0
|
6天前
|
存储 算法 C语言
二分查找算法的概念、原理、效率以及使用C语言循环和数组的简单实现
二分查找算法的概念、原理、效率以及使用C语言循环和数组的简单实现
|
7天前
|
C语言
C语言循环与分支
C语言循环与分支
19 5
|
10天前
|
C语言
C语言---正方形图案--循环
C语言---正方形图案--循环
10 0
|
10天前
|
C语言
C语言----循环---n的k次方
C语言----循环---n的k次方
|
10天前
|
C语言
C语言---循环迭代的方式求第n个斐波那契数
C语言---循环迭代的方式求第n个斐波那契数
|
10天前
|
C语言
C语言---循环迭代---n的阶乘
C语言---循环迭代---n的阶乘
10 0
|
10天前
|
C语言
C语言-----分支和循环
C语言-----分支和循环
43 0
|
17天前
|
C语言
【C语言基础】:分支与循环
【C语言基础】:分支与循环