概述
一、循环结构的思想及意义:
知道了循环结构,那么在生活中也一样,我们每天都在重复做着相同的事情,例如:吸气呼气的过程;又如夏天开电扇,电扇一圈一圈的转,这都是在重复。现在大家玩个游戏,一个人A来说一个人B来做,一个人A说命令“敬礼,礼毕”,另一人B做动作十遍;第一种思维那就是说一下命令就让B执行动作,B执行完动作后,A再继续说命令,B再继续做动作,同样的事情重复十遍。如果利用所学的知识,让你输出十遍“敬礼,礼毕”,你会怎么写程序呢?
/* 输出敬礼礼毕十遍 */
#include "stdio.h"
void main()
{
printf("1.敬礼、礼毕n");
printf("2.敬礼、礼毕n");
printf("3.敬礼、礼毕n");
printf("4.敬礼、礼毕n");
printf("5.敬礼、礼毕n");
printf("6.敬礼、礼毕n");
printf("7.敬礼、礼毕n");
printf("8.敬礼、礼毕n");
printf("9.敬礼、礼毕n");
printf("10.敬礼、礼毕n");
}
那A要让B说一万遍呢,显然如果还是用上面的程序来写的话,那么今天你一个小时不用做别的了,你就在这里慢慢复制粘贴吧!所以肯定有好的办法:A应该对B说执行命令动作“敬礼、礼毕”十遍。同样的问题大家来看第二段程序代码:
/* 输出敬礼礼毕十遍 */
#include "stdio.h"
void main()
{
int i;
i=1;
while(i<=10)
{
printf("%d.敬礼、礼毕n",i);
i=i+1;
}
}
二、while的基本格式
while的基本格式:(流程图如右图所示)
while(表达式)
{
语句1;
……
语句 n;
}
其中表达式代表了循环条件,整个复合语句为循环体。
while语句规范:
1:{和}自成一行
2:语句1—语句n自动缩进
while循环属于当型循环,也就是先判断表达式的值是否为真的(也可以理解为条件是否成立),若为真则循环,否则退出循环。
它的格式变形如下;
表达式1;
while(表达式2)
{
语句;
表达式3;
}
其中表达式1代表了程序循环前的初始值,表达式2代表了控制条件,表达式3代表了增量变化
拿输出1到100为例分析。
最初始的值(假设变量为i)应该是i=1;条件是i<101(或i<=100);语句是输出相应的变量值 printf(“%d ”,i);而表达式3应该是输出一个后进入下一个数,也就是i++;
所以它的代码也就很容易就出来了:
void main()
{
int i;
i=1;
while(i<101)
{
printf(“%d ”,i);
i++;
}
}
do—while循环语句
do–while语句
在循环中有当型循环,还有直到型循环。接下来我们就来学习下直到型循环。
一、do—while语句格式
1.do—while语句格式1
表达式1;
do
{
语句;
表达式3;
} while(表达式2);
其中表达式1代表了程序循环前的初始值,表达式2代表了控制条件,表达式3代表了增量变化
这种格式在程序中已经很少用了。主要应用于下种变形格式:
2.do—while语句格式变形
do
{
语句;
} while(条件表达式);
二、do-while语句的思想及意义
do英文翻译成中文是做的意思,那么从上面的结构我们也能看出,do语句后判断条件表达式,如果条件还表达式成立,再次执行语句,直到条件表达式不成立,往下继续执行。所以do—while的中心思想是至少执行一次循环语句。
三、do-while循环结构实例
下面我们一些操作实例来讲解循环结构的逻辑思维过程。
1.求1+2+3+4±—+100和是多少?
(1)步骤1,首先我们应该分析的是,我们要求一个数即和,那么和初值是几呢? sum=0
(2)sum+=1;
(3)sum+=2;
(4)sum+=3;
(5)假如我们如一个变量i来代表值的变化的话那么我们应该也能推算去,求和其实就是
(6)sum+=i;只是i要从1变化到100
(7)while代码参考代码如下
/*求1+2+3+---+100的和*/
#include "stdio.h"
void main()//求各
{
//定义变量并初始化
int i=1;
int sum=0;
while(i<=100) //条件表达式
{
sum+=i;
i+=1; //步长
}
printf("和是%d",sum);
}
(8)do–while代码参考代码如下
/*求1+2+3+---+100的和*/
#include "stdio.h"
void main()//求各
{
//定义变量并初始化
int i=1;
int sum=0;
do
{
sum+=i;
i+=1; //步长
} while(i<=100); //条件表达式
printf("和是%d",sum);
}
2.输入qq的密码;输入正确则显示登录成功,否则可以一直输入密码直到对为至,假设密码为123456
(1)那么我们分析题目,应该是先输入后判断的一种循环方式,那么应该选择do—while语句
(2)程序中要求我们输入密码,密码可以变,所以要给密码定义成一个变量,我们假设int password;
(3)因为密码是输入的,所以没有初始值
(4)输入密码以后我们应该判断密码是否和默认密码相同
(5)相同则登录成功
(6)不相同则重新
(7)do–while代码参考代码如下
/*判断qq密码*/
#include "stdio.h"
void main()//登录
{
//定义变量并初始化
int password;
do
{
printf("请输入qq登录密码:");
scanf("%d",&password);
}while(password!=123456); //条件表达式
printf("登录成功");
}
(8)do—while语句是可以被while()替换,其实循环之间的语句都可以相互替换,哪种方法更适合你,就选那种,也就是说一定要有一种是自己专长的。
(9)参考代码如下
/*登录*/
#include "stdio.h"
#include "stdlib.h"
void main()//登录
{
//定义变量并初始化
int password;
while(1)
{
printf("请输入qq登录密码:");
scanf("%d",&password);
if(password==123456)
{
printf("登录成功");
break;
}
}
}
3.while 与do—while的相同与不同总结?
(1)while 语句是先计算表达式的值,再执行循环体,do…while是执行完一次循环体,再计算表达式的值
(2)当表达式的值第一次为假时,while的循环体一次都不执行,do…while则执行一次循环体;
(3)当表达式的值为真时,两者无区别
(4)在不确定条件次数的情况下,程序一般用while比较多
for循环语句
for 循环为当型循环。for循环最容易实现计数控制循环方法。for循环的使用最为灵活,且适合应用在循环次数确定的情况下。
for循环的思想是,先分析清楚循环的初始值,循环的控制条件,循环变量的步长变化,然后直接把语句再写到for的循环体里即可,这样可以让问题想的很清楚,流程也很清楚。
二、for循环语句的应用
for语句是c语言所提供的功能更强,使用更广泛的一种循环语句。
1.for语句的一般格式
(1)第1种情况
for(表达式1;表达式2;表达式3)
语句;
(2)第2种情况
for(表达式1;表达式2;表达式3)
{
语句块;
}
2.for语句的注意事项
(1)各表达式之间分号不能省略
(2)表达式1与表达式2与表达式3均可省略,一般是不省略的。
①当表达式1省略时,相当于省去了为循环变量赋初值,此时应在for语句之前给循环变量赋初值
②当表达式2省略时,表示不判断循环条件,也就是认为表达式2始终为真, 这时应在循环体内设法结束循环,否则将成为死循环
③当表达式3省略时,即省去修改循环变量的值,但此时应在循环体内设法结束循环
(3)虽然说表达式可以省略,但是在使用for时,还是要正常使用的,也就是该有的都有。
三、for的逻辑思维过程
for语句和while语句一样,它的思想是在做循环之前,也是先有一个初值表达式1,然后判断条件表达式2是否成立,如果成立就执行{}里的语句然后跳转到表达式3,表达式3再跳转到表达式2,再次判断表达式2,如若成立再次,执行{}里的语句语句然后跳转到表达式3,表达式3再跳转到表达式2,如果成立就再重复执行,如果不成立就退出循环。
for的流程图走向和while语句一模一样,但是for的思维过程,可以直接先分析从第一次开始执行,执行条件是什么,步长是多少,然后执行的语句是什么,套用for的结构即可。
最后
以上就是野性大地为你收集整理的C语言while循环语句 do while语句 for循环语句的全部内容,希望文章能够帮你解决C语言while循环语句 do while语句 for循环语句所遇到的程序开发问题。
如果觉得靠谱客网站的内容还不错,欢迎将靠谱客网站推荐给程序员好友。
发表评论 取消回复