IT数码 购物 网址 头条 软件 日历 阅读 图书馆
TxT小说阅读器
↓语音阅读,小说下载,古典文学↓
图片批量下载器
↓批量下载图片,美女图库↓
图片自动播放器
↓图片自动播放器↓
一键清除垃圾
↓轻轻一点,清除系统垃圾↓
开发: C++知识库 Java知识库 JavaScript Python PHP知识库 人工智能 区块链 大数据 移动开发 嵌入式 开发工具 数据结构与算法 开发测试 游戏开发 网络协议 系统运维
教程: HTML教程 CSS教程 JavaScript教程 Go语言教程 JQuery教程 VUE教程 VUE3教程 Bootstrap教程 SQL数据库教程 C语言教程 C++教程 Java教程 Python教程 Python3教程 C#教程
数码: 电脑 笔记本 显卡 显示器 固态硬盘 硬盘 耳机 手机 iphone vivo oppo 小米 华为 单反 装机 图拉丁
 
   -> C++知识库 -> C语言之循环结构 -> 正文阅读

[C++知识库]C语言之循环结构

[TOC]文章目录

目录

前言

循环语句

·while语句

·do...while语句

·for语句

·break和continue

? ? ? ?

? ? ? ?

·循环的嵌套

总结


前言

本篇文章主要是针对网上学习C语言的阶段性总结三,主要是C语言中的循环结构

循环语句

·while语句

while语句的一般格式:? ? while(表达式)

? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? {语句}

其相对应的程序框图:?

?用while语句时,需注意

1、while循环的特点是先判断条件表达式,后执行循环体语句

2、“语句”就是循环体。循环体可以是一个简单的语句(可以不用花括号),可以是复合语句(用花括号括起来的若干语句)

3、表达式的值为“真”(以非0值表示)时,就执行循环体语句;为“假”(以0表示)时,就不执行循环体语句,退出循环

·do...while语句

do...while语句的一般形式:? ?do{语句(循环体)}

? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ?while(表达式)

其所对应的程序框图:?

由图可知,do...while语句先无条件的执行循环体,然后判断循环条件是否成立。

通过比较while语句与 do..while语句,可以发现?while语句是先判断条件是否成立,然后执行循环体;而do..while语句则是先执行循环体,然后判断循环条件是否成立。

接下来通过例子,可更直观的体会出来:

首先是while语句:

#include<stdio.h>
int main()
{
    int i,sum=0;
    printf("enter i is ");
    scanf("%d",&i);
    while(i<=10)
    {
         sum=sum+i;
         i++;
     }
     printf("sum=%d\n",sum);
     return 0;
}

输入i为1时,输出结果为

enter i is 1
sum=55

当输入i为11时,输出结果为

enter i is 11
sum=0

接下来是do...while语句:

#include<stdio.h>
int main()
{
    int i,sum=0;
    printf("enter i is ");
    scanf("%d",&i);
    do
    {
         sum=sum+i;
         i++;
    }while(i<=10);
    printf("sum=%d\n",sum);
    return 0;
}

输入i为1时,输出结果为

enter i is 1
sum=55

当输入i为11时,输出结果为

enter i is 11
sum=11

·for语句

一般形式:for(表达式1;表达式2;表达式3)? 与while语句的关系:?表达式1;? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ?{语句}? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ?while (表达式2)
? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? {? ? ??

? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? 语句

? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? 表达式3?

? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? }

? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ?

其所对应的程序框图如下:

?for语句的各种形式

1、for语句的一般形式中的“表达式1”可以省略,此时应在for语句之前给循环变量赋初值。注意,省略表达式1时,其后的分号不能省略。如:

i=1;

for( ;i<=10;i++)

? ? ? sum=sum+i;

2、如果表达式2省略,即不判断循环条件,循环无终止地进行下去。也就是认为表达式2始终为真。如:

for(i=1; ;i++)

? ? ?sum=sum+i;? ? ? ? ? ? ? ?//死循环

3、表达式3也可省略,但应另外设法保证循环能正常结束。如:

for(i=1;i<=10; )

? ?{ sum=sum+i;

? ? ? i++;

? ? }

4、可以省略表达式1和表达式3,只有表达式2,即只给循环条件。在这种情况下,完全等同于while语句。可见for语句比while语句功能性强,除了可以给出循环条件外,还可以赋初值,使循环变量自动增值等。如:

I=1;

for( ;i<=10;)

? ?{ sum=sum+i;

? ? ? i++;

? ? }

5、三个表达式都可省略,例如:

for(? ;? ;? );? ? ? ? ? ?// 在for语句之后加上分号,表示语句结束。这种语句相当于while(1)语句

即不设初值,不判断条件(认为表达式2为真值),循环变量不增值。无终止地执行循环体。?

6、表达式1可以是设置循环变量初值的赋值表达式,也可以是与循环变量无关的其他表达式。表达式1和表达式3可以是一个简单的表达式,也可以是逗号表达式,即包含一个以上的简单表达式,中间用逗号间隔。如:

for(i=1,sum=0;i<=10;i++)

? ? sum=sum+i;

7、表达式2一般是关系表达式(如i<=10)或逻辑表达式(如a<b && x<y),但也可以是数值表达式或字符表达式,只要其值为非0,就执行循环体。如:

for(x=10;x;x--)? ? ? ? ? ? ? ? ? //其中的x可以看作 x!=0

? ?sum=sum+x;

·break和continue

都有改变循环执行状态的作用

? ? ? ?<break>

应用:

while(表达式1)? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ?

? ? ? ? ?...

? ? ? ? ?if(表达式2)break;

? ? ? ? ?...

作用:break语句可以使流程跳出switch结构;还可以用来从循环体内跳出循环体,即提前结束循环,接着执行循环下面的语句。

?

注意:break语句只能用于循环语句和switch语句之中,而不能单独使用。

? ? ? ?<continue>

应用:

while(表达式1)

? ? ? ...

? ? ? if(表达式2)continue;

? ? ? ...

作用:结束本次循环,即跳过循环体中下面尚未执行的语句,接着进行下一次是否执行循环的判定。

·循环的嵌套

一个循环体内又包含另一个完整的循环结构,称为循环的嵌套。内嵌的循环体中还可以嵌套循环,这就是多层循环。3种循环(while循环、do...while循环和for循环)可以相互嵌套。如:

?

?

?

?

总结

?循环结构的总结就到这里,谢谢大家的观看~

  C++知识库 最新文章
【C++】友元、嵌套类、异常、RTTI、类型转换
通讯录的思路与实现(C语言)
C++PrimerPlus 第七章 函数-C++的编程模块(
Problem C: 算法9-9~9-12:平衡二叉树的基本
MSVC C++ UTF-8编程
C++进阶 多态原理
简单string类c++实现
我的年度总结
【C语言】以深厚地基筑伟岸高楼-基础篇(六
c语言常见错误合集
上一篇文章      下一篇文章      查看所有文章
加:2022-09-04 00:51:43  更:2022-09-04 00:53:15 
 
开发: C++知识库 Java知识库 JavaScript Python PHP知识库 人工智能 区块链 大数据 移动开发 嵌入式 开发工具 数据结构与算法 开发测试 游戏开发 网络协议 系统运维
教程: HTML教程 CSS教程 JavaScript教程 Go语言教程 JQuery教程 VUE教程 VUE3教程 Bootstrap教程 SQL数据库教程 C语言教程 C++教程 Java教程 Python教程 Python3教程 C#教程
数码: 电脑 笔记本 显卡 显示器 固态硬盘 硬盘 耳机 手机 iphone vivo oppo 小米 华为 单反 装机 图拉丁

360图书馆 购物 三丰科技 阅读网 日历 万年历 2024年5日历 -2024/5/19 7:50:13-

图片自动播放器
↓图片自动播放器↓
TxT小说阅读器
↓语音阅读,小说下载,古典文学↓
一键清除垃圾
↓轻轻一点,清除系统垃圾↓
图片批量下载器
↓批量下载图片,美女图库↓
  网站联系: qq:121756557 email:121756557@qq.com  IT数码