深入了解c语言的循环语句

 更新时间:2021年12月13日 17:07:25   作者:欧杨小枫  
这篇文章主要为大家介绍了c语言的循环语句,具有一定的参考价值,感兴趣的小伙伴们可以参考一下,希望能够给你带来帮助

C语言循环语句

大多数人都希望自己是体格强健,天资聪慧,多才多艺的人。虽然有时事与愿违,但至少我们用c能写出这样的程序。诀窍是控制程序流。对于计算机科学(是研究计算机,不是用计算机作研究)

1 如果满足某些条件就重复执行语句(循环)。

2 通过测试选择执行哪一个语句(分支)。

在c语言当中有while,for,do......while循环。

while循环

while循环语句

while(表达式)

循环语句;

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

return 0;
}

上面的代码是打印1~100的数字。是while循环的简单使用。

在c语言当中,所有的非零值都视为真,只有零才为假,也可以这么说,只要测试条件的值为非零,就会执行while循环。

while语句中的breakcontinue

break介绍;

#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

所以while中的break是永久终止循环。

while中的continue是用于终止本循环也就是continue后面的代码不会执行而是直接跳转到while语句的判断部分。代码如下,它后面没有结束。

for循环

for循环表达式;

for(表达式1;表达式2;表达式3)

循环语句;

表达式1:是初始化部分。

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

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

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

上面的是用for循环打印1~10的数字。

for循环中的break和continue都有不同的用法,感兴趣的可以自己去试一下。

do......while

do......while表达式

do 循环语句

while(表达式)

do......while循环当中的break和continue也有不同的用法,我这里就不详细讲了,你们可以自己去试一下。

do......while循环用的很少,for循环用的最多,while循环在循环时要满足三个条件,而这三个条件偏离得很远,查找起来不是很方便所以for循环更胜一筹。

循环的嵌套

嵌套循环是指在一个循环内包含另一个循环。嵌套循环常用于按行和列显示数据,也就是说,一个循环处理一行中的所有列,另一个循环处理所有的行。

#define  _CRT_SECURE_NO_WARNINGS 1
#include <stdio.h>
int main() 
{
    int i, j;
    for (i = 1; i <= 9; i++)  //外面的循环把它看成列。
    { 
        for (j = 1; j <= i; j++) //而里面的循环时行。
        {  
            printf("%d*%d=%-2d  ", i, j, i * j); //内层 for 的结束条件是j <= i。外层 for 每循环一次,i 的值就会变化,所以每次开始内层 for 循环时,结束条件是不一样的。
               //具体如下:
        }
        printf("\n");
    }
   return 0;
}
 
当 i=1 时,内层 for 的结束条件为 j<=1,只能循环一次,输出第一行。
	
	当 i=2 时,内层 for 的结束条件是 j<=2,循环两次,输出第二行。
	
	当 i=3 时,内层 for 的结束条件是 j<=3,循环三次,输出第三行。
	
	当 i=4、5、6... 时,以此类推。

1*1=1
2*1=2 2*2=4
3*1=3 3*2=6 3*3=9
4*1=4 4*2=8 4*3=12 4*4=16
5*1=5 5*2=10 5*3=15 5*4=20 5*5=25
6*1=6 6*2=12 6*3=18 6*4=24 6*5=30 6*6=36
7*1=7 7*2=14 7*3=21 7*4=28 7*5=35 7*6=42 7*7=49
8*1=8 8*2=16 8*3=24 8*4=32 8*5=40 8*6=48 8*7=56 8*8=64
9*1=9 9*2=18 9*3=27 9*4=36 9*5=45 9*6=54 9*7=63 9*8=72 9*9=81

上面的代码很好的解释了循环的嵌套的使用。

在c语言当中if...else,while,for,都......while循环都可以相互嵌套。

总结:

while语句和for语句提供了入口条件循环。for语句特别适用于需要初始化和更新的循环。使用逗号运算符可以在for循环中初始化和更新多个变量。有些场合也需要使用出口条件循环,c为此提供了do......while循环。

本篇文章就到这里了,希望能够给你带来帮助,也希望您能够多多关注脚本之家的更多内容!

相关文章

  • C字符串函数对应的C++ string操作详解

    C字符串函数对应的C++ string操作详解

    在本篇文章里小编给大家整理的是一篇关于C字符串函数对应的C++ string操作知识点内容,有兴趣的朋友们学习下。
    2020-01-01
  • C语言字符串函数,字符函数,内存函数使用及模拟实现

    C语言字符串函数,字符函数,内存函数使用及模拟实现

    这篇文章主要介绍了C语言字符串函数,字符函数,内存函数使用及模拟实现,文章围绕主题展开详细的内容介绍,具有一定的参考价值,需要的小伙伴可以参考一下
    2022-09-09
  • C++中的数组、链表与哈希表

    C++中的数组、链表与哈希表

    这篇文章主要介绍了C++中的数组、链表与哈希表,具有很好的参考价值,希望对大家有所帮助。如有错误或未考虑完全的地方,望不吝赐教
    2022-09-09
  • C语言中的数据整除判断问题

    C语言中的数据整除判断问题

    这篇文章主要介绍了C语言中的数据整除判断问题,具有很好的参考价值,希望对大家有所帮助。如有错误或未考虑完全的地方,望不吝赐教
    2022-11-11
  • C++实现LeetCode(124.求二叉树的最大路径和)

    C++实现LeetCode(124.求二叉树的最大路径和)

    这篇文章主要介绍了C++实现LeetCode(124.求二叉树的最大路径和),本篇文章通过简要的案例,讲解了该项技术的了解与使用,以下就是详细内容,需要的朋友可以参考下
    2021-07-07
  • C++超详细讲解操作符的重载

    C++超详细讲解操作符的重载

    C++预定义中的运算符的操作对象只局限于基本的内置数据类型,但是对于我们自定义的类型(类)是没有办法操作的。但是大多时候我们需要对我们定义的类型进行类似的运算,这个时候就需要我们对这么运算符进行重新定义,赋予其新的功能,以满足自身的需求
    2022-06-06
  • C++ 迭代器失效问题解决

    C++ 迭代器失效问题解决

    在C++中,当一个vector进行了插入或删除操作时,其迭代器可能会失效,本文就来介绍一下C++ 迭代器失效问题解决,具有一定的参考价值,感兴趣的可以了解一下
    2024-01-01
  • C++同步线程实现示例详解

    C++同步线程实现示例详解

    这篇文章主要介绍了C++同步线程实现示例,线程同步是指同一进程中的多个线程互相协调工做从而达到一致性。之因此须要线程同步,是由于多个线程同时对一个数据对象进行修改操做时,可能会对数据形成破坏
    2022-11-11
  • C语言实现opencv提取直线、轮廓及ROI实例详解

    C语言实现opencv提取直线、轮廓及ROI实例详解

    这篇文章主要介绍了C语言实现opencv提取直线、轮廓及ROI实例详解,具有一定借鉴价值,需要的朋友可以参考下
    2018-01-01
  • C/C++ Qt 数据库与TreeView组件绑定详解

    C/C++ Qt 数据库与TreeView组件绑定详解

    本篇文章主要介绍了QT数据库与View组件的绑定,通过数据库与组件关联可实现动态展示数据库中的表记录。感兴趣的小伙伴可以了解一下
    2021-12-12

最新评论