循环结构程序

 前言:

        在前面,小编介绍了选择结构,只有这种结构是往往不够的,还需要用到循环结构,因为在日常生活中或是程序处理的问题中常常遇到需要重复处理的问题,熟练掌握选择结构和循环结构的概念及使用是进行程序设计的最基本要求。

一、用while语句实现循环

        while是计算机的一种基本循环模式。当满足条件时进入循环,进入循环后,当条件不满足时,跳出循环。while语句的一般表达式为:

        while(表达式)语句

        其中的语句就是循环体,执行循环体的次数是由循环条件控制的,循环条件就是上面的表达式,当表达式的值为真时,就执行循环体,为假时,就不执行循环体。

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

        下面给大家举个从1加到100的例子让大家感受一下。

  打印从1加到100的和

#include<stdio.h>
int main()
{
    int i=1;
    int num=0;
    while (i<101)
    {
       num=num+i;
       i=i+1;
    }

    printf("num=%d",num);

    return 0;
}


num=5050
PS C:\csay\cyuyan>

        首先判断i是否小于101,如果小于101,就将num加上一个i,i在自增一次,然后将i自增后的结果再和101比较,如果小于就接着循环,如果大于等于就结束循环,最后输出值,一定要注意给num和i赋初值。

二、用do...while语句实现循环

        do...while 循环是 while 循环的变体,在检查while条件是否为真之前,该循环首先会执行一次do之内的语句,然后在while内检查条件是否为真,如果条件为真的话,就会重复do...while这个循环,直至while为假。

        do...while 循环语法格式:

        do

        {(循环体); }

        while (条件表达式);

        下面给大家举个例子让大家感受一下。

  打印90到100之间的数

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

    return 0;
}


90919293949596979899100
PS C:\csay\cyuyan>

三、while和do...while的比较

        while循环会在进入循环前先判断条件是否成立。如果条件不成立,则不会执行循环体。

        do-while 循环则会先执行一次循环体内的代码,然后立即检查条件表达式。如果条件不成立,同样会停止循环并退出。

        while循环在条件不满足时会停止执行循环体。

        do-while循环在执行完一次循环体内的代码后,会立即检查条件表达式。如果条件不成立,也会停止循环并退出。因此,dowhile 循环的执行次数至少为一次

        接下来,小编举一个非常简单的例子,大家就能理解了。

  while和do...while的比较

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

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

        对于第一个代码,结果会打印一个101,而第二的代码将不会打印没有进入循环体。 

四、用for语句实现循环 

        除了用while和do...while语句实现循环外,c语言还提供了for语句实现循环,for语句更加灵活,不仅可以用于循环次数已经确定的情况,还可以用于循环次数不确定只给出循环结束条件的情况,它完全可以代替while语句。

        for语句的一般形式为:
        for(表达式1;表达式2;表达式3)

               语句

        表达式1:设置初始条件,只执行一次,可以为0个,多个或1个。

        表达式2:是循环条件表达式,用来判断是否继续循环,每次进入循环体前,先执行此表达式。

        表达式3:作为循环的调整,比如自增,自减等等。

        对与for循环,我们不仅要掌握它的一般用法还要掌握它的嵌套用法,接下来小编给大家举2

个典型的例子带大家分析分析。

  打印从1加到10的和

#include<stdio.h>
int main()
{
    int sum=0;
    for (int i = 1; i < 11; i++)
    {
        sum=sum+i;
    }
    printf("从1加到10的和=%d",sum);

    return 0;
}


从1加到10的和=55
PS C:\csay\cyuyan>

        在这段代码中,先给sum赋初值,在for中,先给i赋初值,然后在判断i是否小于11,如果小于进入循环体,将sum+i的值赋值给sum,让后再将i自增一次,因为初始条件只执行一次,则再将自增的i与11比较,循环此操作就可以得到结果。

打印99乘法表

#include<stdio.h>
int main()
{
    for (int i = 1; i < 10; i++)
    {
        for (int j = 1; j < 10; j++)
        {
            printf("%d*%d=%d ",i,j,i*j);
        }
            printf("\n"); // 每次外层循环结束后换行
    }
}


1*1=1 1*2=2 1*3=3 1*4=4 1*5=5 1*6=6 1*7=7 1*8=8 1*9=9 
2*1=2 2*2=4 2*3=6 2*4=8 2*5=10 2*6=12 2*7=14 2*8=16 2*9=18
3*1=3 3*2=6 3*3=9 3*4=12 3*5=15 3*6=18 3*7=21 3*8=24 3*9=27
4*1=4 4*2=8 4*3=12 4*4=16 4*5=20 4*6=24 4*7=28 4*8=32 4*9=36
5*1=5 5*2=10 5*3=15 5*4=20 5*5=25 5*6=30 5*7=35 5*8=40 5*9=45
6*1=6 6*2=12 6*3=18 6*4=24 6*5=30 6*6=36 6*7=42 6*8=48 6*9=54
7*1=7 7*2=14 7*3=21 7*4=28 7*5=35 7*6=42 7*7=49 7*8=56 7*9=63
8*1=8 8*2=16 8*3=24 8*4=32 8*5=40 8*6=48 8*7=56 8*8=64 8*9=72
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
PS C:\csay\cyuyan> 

        在这段代码中先执行外层的for语句,让后在执行内层的for语句,直到内层的for循环结束,再执行外循环,大家可以理解成外层的for语句执行一次,让后内层for语句执行10次,然后外层i加1,然后内层再循环10次 ,反复这样,直到外层的i>10,整体循环结束。

小结

        循环结构是指在程序中需要反复执行某个功能而设置的一种程序结构它由循环体中的条件,判断继续执行某个功能还是退出循环,在这里,小编用通俗易懂的语言向大家介绍了while,dowhile以及for循环,希望大家认真学习,同时也希望大家监督小编,如果发现错误,请立即私信,小编一定及时处理。

 

 

评论 13
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值