美文网首页IT@程序员猿媛C#C#基础
C#基础之011 循环语句01

C#基础之011 循环语句01

作者: tanyufeng | 来源:发表于2019-04-21 21:10 被阅读2次

    循环结构的概述


    在之前我们写的程序都是从上到下顺序执行的,要么就是选择性的执行某段代码,现在大家打印10遍“学生C#”,在打印100遍、1000遍。 这时候就会有问题了,发现我们写的代码都是重复的,那么有没有办法让某些代码可以跟据需求执行多次,这就是我们这次要学习的的循环结构

    什么是循环结构

    循环就是重复地做, 如下案例分析

    //案例
    在日常生活中有很多循环的例子,如打印50份试卷,炒一百道鱼香肉丝,
    被罚抄一百遍的单词默写,或者正在行驶中滚动的车轮都是在重复的做着某些相同的操作;
    
    //分析
    打印50份试卷
    循环条件:只要打印试卷的份数不够50份就继续打印
    循环操作:打印1份试卷,打印试卷的总数+1;
    
    炒100道鱼香肉丝
    循环条件:只要鱼香肉丝的数量不够100道菜就继续炒;
    循环操作:炒1份鱼香肉丝,鱼香肉丝炒菜总数+1;
    
    被罚抄100遍默写:
    循环条件:只要罚抄不够100遍就得继续写;
    循环操作:写一遍罚抄,罚抄总数+1;
    
    滚动的车轮:
    循环条件:没有到达目的地就继续滚动
    循环操作:车轮滚动一圈,离目的地的距离减少车轮的周长;
    

    循环总结

    • 循环结构的特点:在某条件成立时不断地做某事情
    • 循环不是无休止进行的,满足一定的条件时,循环才会继续,称为循环条件;
    • 循环结构是反复进行相同的或类似的一系列操作,称为循环操作;

    所以要想构成循环操作必须满足拥有循环条件循环操作两件事;

    循环实现方式

    在C#中基本的循环实现方式有三种:

    • for循环
    • while循环
    • do...while循环
      由于篇幅限制, 我们在本节中学习for循环。

    for循环


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

    for(循环变量初始化; 循环条件; 循环增量)
    {
          循环语句段也叫循环体或者循环操作
    }
    

    格式解释:

    • 1循环变量初始化:循环时需要有一个变量来记录循环的次数,这此处定义记录次数的变量, 并初始化次数,比如默认次数为0.
    • 2循环条件:什么情况下循环继续执行
    • 3循环增量:循环变量每次增加或者减少多少
    • 4循环操作:在满足循环条件时被重复执行的代码段

    循环语法:
    先执行1-变量初始化-->再进行2 条件判断 -->然后执行4-循环操作 -->最后 3变量增量-->接着 再判断2 -->执行 4 --> 增量 3-->……………… 按照此顺序直到判断2不满足时 结束循环。
    1 --> 2 ---> 4 --> 3 -->2 --> 4--> 3-->2-->4-->3-->…………-->2-->结束

    for循环流程图

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

    /**
    *  练习1:打印10遍 学习C#基础.
    */
    
    for (int i = 0; i < 10; i++) {
       Console.WriteLine("学习C#基础");
    }
    
    /**
    *  练习2:打印100遍 学习C#基础.
    *  与上一题次数不一样
    */
    for (int i = 0; i < 100; i++) {     //循环条件不一样   
       Console.WriteLine("学习C#基础");
    }
    
    /**
    *  练习3:正序打印1~10
    */
    for (int i = 1; i <= 10; i++)
    {
        Console.WriteLine(i);
    }
    
    /**
    *  练习4:倒序打印1~10
    */
    for (int i = 10; i >= 1; i--)
    {
        Console.WriteLine(i);
    }
    
    /**
    *  练习5:打印1~10之间的偶数
    */
    //方式一
    for (int i = 1; i <= 10; i++)
    {
        //判断是不是偶数
        if(i%2 == 0)
        {
            Console.WriteLine(i);
        }
    }
    
    //方式二
    //2是最小的偶数, 每次+2, 后面的就都是偶数了
    for (int i = 2; i <= 10; i+=2)
    {
        Console.WriteLine(i);
    }
    
    /**
    *  练习6:打印1~100之间的所有能被7整除的数
    *  注:遍历出1~100之间的数,然后判断是否是7的倍数.
    */
    for (int i = 1; i <= 100; i++)
    {
        //判断能不能被7整除
        if(i%7 == 0)
        {
            Console.WriteLine(i);
        }
    }
    
    /**
    *  练习7:打印200~300之间十位不为7的数. 
    *  注:遍历出200~300之间的数,然后判断是否十位不为7. 
    *  取十位:三位数取出十位数需要先除10得到一个包含百位和十位的两位数, 
    *         然后再直接对10取余数即可. / 10 % 10.
    */
    for (int i = 200; i <= 300; i++) {
        if (i / 10 % 10 != 7) 
        {
            Console.WriteLine(i);
        }
    }
    
    /**
    *  练习8:求1 ~ 100的整数和.
    *
    *  注:遍历出1~100之间的数,然后累加求和.
    */
    
    int sum = 0; //累加器
    for (int i = 1; i <= 100; i++) {
       sum += i; //累加求和
    }
    Console.WriteLine(sum);
    
    
    /**
    *  练习9:求1 ~ 100的偶数和.
    *
    *  注:遍历出1~100之间的数,然后判断是否是偶数,将偶数累加求和.
    */
    
    int sum = 0;
    for (int i = 1; i <= 100; i++) {
       //判断是否是偶数
       if (i % 2 == 0) {
            //只有偶数才累加
           sum += i;
       }
    }
    Console.WriteLine(sum);
    
    
    /**
    *  练习10:判断一个数是否是质数. (只能被1和它本身整除的数是质数)
    *  注:遍历2~该数-1,如果有数能被该数整除, 则说明该数不是质数
    */
    
    int number = 0; //存储当前数
    Console.WriteLine("请输入一个数:\n");
    number = int.Parse (Console.ReadLine ()); 
    bool isTrue = true;
    
    for (int i = 2; i < number; i++) {
        if (number % i == 0) {
            //一旦发现该数能够被2到本身-1的数整除,说明该数不是质数,立即将状态位置为false.
            isTrue = false; 
        }
    }
    //根据状态位判断该数是否是质数.
    if (isTrue) {
        Console.WriteLine("该数是质数\n");
    } else {
        Console.WriteLine("该数不是质数\n");
    }
    
    

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

    相关文章

      网友评论

        本文标题:C#基础之011 循环语句01

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