【循环程序设计-谭浩强适配】(适合专升本、考研)

2024-05-14 04:36

本文主要是介绍【循环程序设计-谭浩强适配】(适合专升本、考研),希望对大家解决编程问题提供一定的参考价值,需要的开发者们随着小编来一起学习吧!

无偿分享学习资料,需要的小伙伴评论区或私信dd。。。

无偿分享学习资料,需要的小伙伴评论区或私信dd。。。

无偿分享学习资料,需要的小伙伴评论区或私信dd。。。

完整资料如下:纯干货、纯干货、纯干货!!!

关注专栏:<后续持续更新>


目录

循环结构语句

1.while循环语句

2.do-while循环语句

3.for循环语句

4.goto语句

循环结构的嵌套

三种循环的比较

break语句

continue语句

break与continue的区别:


循环结构语句

分类:while循环语句、do-while循环语句、for循环语句、goto语句。

  • 所有循环语句与选择语句相同,若后面的循环体是一个复合语句则需要加上{}括起来。

  • 一般情况下三种循环语句可以相互替换(只有while与for无条件等价)

  • 只有for循环可以缺省表达式(while与do-while都不可以)

1.while循环语句

格式:

while(表达式){ //只要条件表达式为真就执行下面的循环体循环体;
}
  • while语句的特点是先判断条件表达式、后执行循环体语句(这点与do-while区别)

  • while后面的表达式称为循环条件表达式(24年真题)

  • while配合getchar赋值,只要第一次满足条件,那么让你多次输入直到不满足条件为止

    char ch;
    while((ch=getchar())!='9');//只要不等于9,那么执行空语句,返回去再判断,判断又要进行输入
    printf("ok");

2.do-while循环语句

格式:

do{循环体;//先无条件执行一次,在判断循环条件,为真则继续执行
}
while(表达式);
  • do-while循环是先无条件执行一次循环体,再去判断循环条件(这点与while不同),即do-while至少执行一次循环体

  • do后面不允许加分号,while后面必须加分号

3.for循环语句

格式:

for(表达式1;表达式2;表达式3){循环体;
}
//表达式1:设置初始条件,只执行一次。可以为零个、一个或多个变量设置初值
//表达式2:循环判断条件(循环条件表达式)
//表达式3:循环变量的增值或减值(使循环趋于结束的条件)
  • for循环不仅可以解决循环未知的问题,还特别适合解决循环次数未知的问题,可完全代替while语句,即两者无条件等价。

  • 表达式1还可以是与循环无关的其他表达式,同时允许在表达式1内定义变量并初始化(此变量作用域只限于for语句),如果定义多个变量,那么多个变量只能是同一数据类型

    for(sum=0;i<100;i++){sum+=i}//与循环无关的变量
    ​
    for(int sum=0;i<100;i++){sum+=i}//定义并初始化
    ​
    for(int i=1,sum=0;i<100;i++);//i与sum都是int类型

  • 表达式2省略时循环条件一直为真,导致for循环无终止死循环(可以在循环体中配合break判定)

  • 表达式3省略需要在循环体内设置趋于结束的循环条件(即表达式3与循环体内的内容可以调换位置。

  • 当三个表达式都省略时,for循环会陷入死循环

    for(;;){printf("ok");//无终止输出“ok”
    }

  • 三个表达式都可以是逗号表达式。

    for(int i=0,sum=1;i<100,sum<200;i++,sum++){printf("ok");
    }
    ⚠️注意:此时表达式2以最后一个终止条件为准。

  • 三个循环语句中,只有for循环可以缺省循环条件表达式

  • 表达式1一般在for语句之前定义并初始化,因为这样可以在for语句之外拿到循环变量的值。

    int i=0;
    for(;i<=10;i++){printf("ok\n");
    }
    ⚠️注意:循环结束后,循环变量等于循环结束的终止值+1,即这里的i最后等于11。

  • 表达式3可以与循环体互换位置,作用效果相同。

    for(int i=0;i<10;i++){printf("%d\n",i);
    }等价于:for(int i=0;i<10;printf("%d\n",i),i++);

4.goto语句

格式:goto 语句标号

loop:if(i<100){sum+=i;i++;goto loop;//在执行到goto语句时,跳转到上面语句标号的位置执行
}
  • goto 语句语句标号:必须在同一函数内(即在同一函数内,可以跳转到任何地方)

  • 语句标号:不允许放在初始化语句和声明语句前面

    loop:int i 和 loop int i=1都是错误的

  • goto语句通常与if语句连用以构成循环的目的

    loop:if(i<100){sum+=i;i++;goto loop;//在执行到goto语句时,跳转到上面语句标号的位置执行
    }

循环结构的嵌套

定义:在一个循环语句中又包含另一个完整的循环语句称为循环嵌套

  • 三种循环语句可以相互嵌套。

  • 内循环使用break与continue对外循环没有影响。

三种循环的比较

  1. 一般情况下,3种循环可以相互替换。

  2. while和do-while的循环体中必须指定循环趋于结束的语句,而for可以放在表达式3也可以放在循环体中。

  3. while和do-while的循环初始条件操作应该放在while和do-while之前完成。

break语句

作用:终止循环,跳出循环体(还可以跳出switch分支)

  • break只能用于循环语句与switch语句之中,不能单独使用。(如果出现在其他语句中,说明其他语句在循环或switch中)

    int a=12;
    for(int i=0;i<a;i++){if(i==5)break;//出现在if语句中,原因if在for语句中
    }

continue语句

作用:终止“本次”循环

  • continue只能出现在循环体中(如果出现在其他语句中,说明其他语句在循环中)

    int a=12;
    for(int i=0;i<a;i++){switch(i){case 12:break;case 10:continue;}
    }
break与continue的区别:

break是结束当前循环,所以在嵌套循环中,内循环遇到一个break,是结束整个内循环,但是没有结束外循环

continue是结束本次循环,所以在嵌套循环中,内循环遇到一个continue,是结束内循环这一次的循环条件,直接进行到内循环下一个

循环条件

这篇关于【循环程序设计-谭浩强适配】(适合专升本、考研)的文章就介绍到这儿,希望我们推荐的文章对编程师们有所帮助!



http://www.chinasem.cn/article/987761

相关文章

什么是 Linux Mint? 适合初学者体验的桌面操作系统

《什么是LinuxMint?适合初学者体验的桌面操作系统》今天带你全面了解LinuxMint,包括它的历史、功能、版本以及独特亮点,话不多说,马上开始吧... linux Mint 是一款基于 Ubuntu 和 Debian 的知名发行版,它的用户体验非常友好,深受广大 Linux 爱好者和日常用户的青睐,

JAVA中while循环的使用与注意事项

《JAVA中while循环的使用与注意事项》:本文主要介绍while循环在编程中的应用,包括其基本结构、语句示例、适用场景以及注意事项,文中通过代码介绍的非常详细,需要的朋友可以参考下... 目录while循环1. 什么是while循环2. while循环的语句3.while循环的适用场景以及优势4. 注意

Python中的异步:async 和 await以及操作中的事件循环、回调和异常

《Python中的异步:async和await以及操作中的事件循环、回调和异常》在现代编程中,异步操作在处理I/O密集型任务时,可以显著提高程序的性能和响应速度,Python提供了asyn... 目录引言什么是异步操作?python 中的异步编程基础async 和 await 关键字asyncio 模块理论

鸿蒙开发搭建flutter适配的开发环境

《鸿蒙开发搭建flutter适配的开发环境》文章详细介绍了在Windows系统上如何创建和运行鸿蒙Flutter项目,包括使用flutterdoctor检测环境、创建项目、编译HAP包以及在真机上运... 目录环境搭建创建运行项目打包项目总结环境搭建1.安装 DevEco Studio NEXT IDE

如何选择适合孤独症兄妹的学校?

在探索适合孤独症儿童教育的道路上,每一位家长都面临着前所未有的挑战与抉择。当这份责任落在拥有孤独症兄妹的家庭肩上时,选择一所能够同时满足两个孩子特殊需求的学校,更显得尤为关键。本文将探讨如何为这样的家庭做出明智的选择,并介绍星贝育园自闭症儿童寄宿制学校作为一个值得考虑的选项。 理解孤独症儿童的独特性 孤独症,这一复杂的神经发育障碍,影响着儿童的社交互动、沟通能力以及行为模式。对于拥有孤独症兄

好题——hdu2522(小数问题:求1/n的第一个循环节)

好喜欢这题,第一次做小数问题,一开始真心没思路,然后参考了网上的一些资料。 知识点***********************************无限不循环小数即无理数,不能写作两整数之比*****************************(一开始没想到,小学没学好) 此题1/n肯定是一个有限循环小数,了解这些后就能做此题了。 按照除法的机制,用一个函数表示出来就可以了,代码如下

poj3750约瑟夫环,循环队列

Description 有N个小孩围成一圈,给他们从1开始依次编号,现指定从第W个开始报数,报到第S个时,该小孩出列,然后从下一个小孩开始报数,仍是报到S个出列,如此重复下去,直到所有的小孩都出列(总人数不足S个时将循环报数),求小孩出列的顺序。 Input 第一行输入小孩的人数N(N<=64) 接下来每行输入一个小孩的名字(人名不超过15个字符) 最后一行输入W,S (W < N),用

C语言程序设计(数据类型、运算符与表达式)

一、C的数据类型 C语言提供的数据类型: 二、常量和变量 2.1常量和符号常量 在程序运行过程中,其值不能被改变的量称为常量。 常量区分为不同的类型: 程序中用#define(预处理器指令)命令行定义变量将代表常量,用一个标识符代表一个常量,称为符合常量。 2.2变量 变量代表内存中具有特定属性的一个存储单元,用来存放数据,在程序运行期间,这些值是可以 改变的。 变

C语言程序设计(选择结构程序设计)

一、关系运算符和关系表达式 1.1关系运算符及其优先次序 ①<(小于) ②<=(小于或等于) ③>(大于) ④>=(大于或等于 ) ⑤==(等于) ⑥!=(不等于) 说明: 前4个优先级相同,后2个优先级相同,关系运算符的优先级低于算术运算符,关系运算符的优先级高于赋值运算符 1.2关系表达式 用关系运算符将两个表达式(可以是算术表达式或关系表达式,逻辑表达式,赋值表达式,字符

校验码:奇偶校验,CRC循环冗余校验,海明校验码

文章目录 奇偶校验码CRC循环冗余校验码海明校验码 奇偶校验码 码距:任何一种编码都由许多码字构成,任意两个码字之间最少变化的二进制位数就称为数据检验码的码距。 奇偶校验码的编码方法是:由若干位有效信息(如一个字节),再加上一个二进制位(校验位)组成校验码。 奇校验:整个校验码中1的个数为奇数 偶校验:整个校验码中1的个数为偶数 奇偶校验,可检测1位(奇数位)的错误,不可纠错。