美文网首页dotNETC#C#基础
C#基础之012 循环语句02

C#基础之012 循环语句02

作者: tanyufeng | 来源:发表于2019-04-23 01:29 被阅读30次

    通过上一章节我们已经掌握了什么是循环, 并且学会了for循环的实现方式,那么本节我们来继续学习循环的另外两种实现方式:

    • while循环
    • do...while循环

    while循环


    循环关键字: while
    循环格式:

    while(bool表达式)
    {
        循环体
    }
    

    格式解释:

    • 1bool表达式:循环条件,表达式结果必须为bool类型
    • 2循环体:被重复执行的操作

    循环语法:

    • a、先判断1bool表达式是否为真,
    • b、如果为真, 则执行2循环体, 并且回到a继续
    • c、如果为假, 则结束循环, 执行循环下面的语句
    while循环流程图

    学习案例: 案例非常重要,一定要看哦

    /**
    *  练习1:打印10遍 学习C#基础.
    */
    int i=0;
    while(i<10)
    {
        Console.WriteLine("学习C#基础");
        i++;
    }
    
    /**
    *  练习2:打印100遍 学习C#基础.
    *  与上一题次数不一样
    */
    int i=0;
    while(i<100)
    {
        Console.WriteLine("学习C#基础");
        i++;        //手动添加循环增量
    }
    
    /**
    *  练习3:正序打印1~10
    */
    int i=0;
    while(i<10)
    {
        Console.WriteLine(i);
        i++;        //手动添加循环增量
    }
    
    /**
    *  练习4:打印1~100之间的所有能被7整除的数
    *  注:遍历出1~100之间的数,然后判断是否是7的倍数.
    */
    int i=1;
    while(i<=100)
    {
        //判断能不能被7整除
        if(i%7 == 0)
        {
            Console.WriteLine(i);
        }
        i++;        //手动添加循环增量
    }
    
    /**
    *  练习5:打印200~300之间十位不为7的数. 
    *  注:遍历出200~300之间的数,然后判断是否十位不为7. 
    *  取十位:三位数取出十位数需要先除10得到一个包含百位和十位的两位数, 
    *         然后再直接对10取余数即可. / 10 % 10.
    */
    int i=200;
    while(i<=300)
    {
        if (i / 10 % 10 != 7) 
        {
            Console.WriteLine(i);
        }
        i++;
    }
    
    /**
    *  练习6:求1 ~ 100的整数和.
    *
    *  注:遍历出1~100之间的数,然后累加求和.
    */
    int sum = 0; //累加器
    int i=0;
    while(i<=100)
    {
        sum += i;
        i++;
    }
    Console.WriteLine(sum);
    
    /**
    *  练习7:输入一个整数, 求这个整数是几位数。
    */
    int number = 0;
    Console.WriteLine("请输入一个整数:\n");
    number = int.Parse (Console.ReadLine ());
    int count = 0; //记录位数
    while (number != 0) {
       count++;
       number /= 10;
    }
    Console.WriteLine("这个整数是" + count + "位数。");
    
    /**
    *  练习8:不断的输入整数, 直到输入0结束
    */
    int number = 0;
    Console.WriteLine("请输入一个整数:\n");
    number = int.Parse (Console.ReadLine ());
    while(number != 0)
    {
        Console.WriteLine("请继续输入一个整数:\n");
        number = int.Parse (Console.ReadLine ());
    }
    Console.WriteLine("已经结束输入");
    

    do...while循环


    循环关键字: do...while
    循环格式:

    do
    {
          循环语句段也叫循环体或者循环操作
    }while(bool表达式);
    

    格式解释:

    • 1循环体:被重复执行的操作
    • 2bool表达式:循环条件,表达式结果必须为bool类型

    循环语法:

    • a、先执行1循环体, 然后判断2bool表达式是否为真
    • b、如果为真, 则回到a继续
    • c、如果为假, 则结束循环, 执行循环下面的语句


      do...while循环流程图

    学习案例: 案例非常重要,一定要看哦

    
    /**
    *  练习1:打印10遍 学习C#基础.
    */
    int j = 1;
    do {
       Console.WriteLine("学习C#基础");
       j++;
    } while (j<=10);
    
    /**
    *  练习2:正序打印1~10
    */
    int j = 1;
    do {
       Console.WriteLine(j);
       j++;
    } while (j<=10);
    
    /**
    *  练习3:不断的输入整数, 直到输入0结束
    */
    int number = 0;
    do
    {
        Console.WriteLine("请继续输入一个整数:\n");
        number = int.Parse (Console.ReadLine ());
    }while(number != 0);
    Console.WriteLine("已经结束输入");
    

    循环实现方式总结


    while循环与do...while循环注意点:

    • while循环可以没有循环变量
    • 在要循环变量时, 记得添加循环增量, 防止死循环

    while循环与do...while循环异同点:

    相同点:

    • 都是循环结构,使用”while(循环条件)”表示循环条件,使用大括号将循环操作扩起来;

    不同点:

    • 语法不同:与while循环结构相比,do-while循环结构将while关键字和循环条件放在后面,而且前面多了关键字do,后面多了一个分号;

    • 执行次序不同:while循环结构先判断,再执行;do-while循环结构先执行后判断;

    • 在一开始循环条件不满足的情况下,while循环结构一次都不会执行,do-while循环结构则不管什么情况都会执行一次;

    三种循环比较

    • 通常情况下,他们三个可以相互替代,但是使用最多的还是for,do-while是基本很少使用的。
    • while能实现的,for都能实现。
    • 使用while和do-while时,循环变量初始化在循环语句之前完成,循环增量在循环体内部完成。
    • 如果使用for循环,直接在for语句中,可以完成3个操作。
    • 通常情况下,如果我们知道具体循环的次数,直接使用for循环,如果循环次数不是固定值,可以使用while循环。

    欢迎大家踊跃评论,让我们一起探讨技术!!
    如果觉得文章不错,请帮忙点击文章下方的喜欢!!
    你的支持将是对我最好的鼓励, 谢谢!!!

    相关文章

      网友评论

        本文标题:C#基础之012 循环语句02

        本文链接:https://www.haomeiwen.com/subject/vfuzwqtx.html