zoukankan      html  css  js  c++  java
  • C# 循环语句 for循环

    循环:反复执行某段代码。

    循环四要素:初始条件,循环条件,循环体,状态改变。
    for(初始条件;循环条件;状态改变)
    {
    循环体
    }

    给出初始条件,先判断是否满足循环条件,如果不满足条件则跳过for语句,如果满足则进入for语句执行,for语句内的代码执行完毕后,将按照状态改变,改变变量,然后判断是否否和循环条件,符合则继续执行for语句内的代码,直到变量i不符合循环条件则终止循环,或者碰到break命令,直接跳出当前的for循环。

    break ——中断循环,跳出最近的循环循环
    continue——停止本次循环,进入下次循环

    循环(for)和分支语句(if  else等)一样可以相互嵌套

    死循环:

    for (; ; )
    {
     Console.WriteLine("Hello");
    }

    注意:程序中不允许出现死循环!

    应用

    循环语比较繁琐,多加练习

    1.输入一个整数,计算从1加到这个数的结果
    Console.Write("请输入一个正整数:");
    int a = int.Parse(Console.ReadLine());
    int sum = 0;
    for (int i = 1; i <= a; i++)
    {
    sum += i;//sum=sum+i;
    }

    Console.WriteLine(sum);
    Console.ReadLine();

    2.输入一个正整数,求阶乘
    Console.Write("请输入一个正整数:");
    int a = int.Parse(Console.ReadLine());
    int sum = 1;
    for (int i = 1; i <= a; i++)
    {
    sum *= i;//sum=sum*i;
    }

    Console.WriteLine(sum);
    Console.ReadLine();

    3.输入一个正整数,求阶乘的和1!+2!+...+n!
    Console.Write("请输入一个正整数:");
    int a = int.Parse(Console.ReadLine());
    int sum = 1;
    int sum1 = 0;
    for (int i = 1; i <= a; i++)
    {
    sum *= i;//sum=sum*i;
    if (i == 4)//不想要4的
    {
    continue;//终止本次循环,继续下次循环
    }
    sum1 += sum;
    }

    Console.WriteLine(sum1);
    Console.ReadLine();

    4.一个游戏,前20关是每一关自身的分数,
    21-30关每一关是10分
    31-40关,每一关是20分
    41-49关,每一关是30分
    50关,是100分
    输入你现在闯到的关卡数,求你现在拥有的分数
    两种做法:if嵌套for for嵌套if
    (1)Console.Write("请输入您现在闯到的关卡数:");

    int guan = int.Parse(Console.ReadLine());
    if (guan >= 1 && guan <= 50)
    {
    int sum = 0;
    if (guan <= 20)
    {
    for (int i = 1; i <= guan; i++)
    {
    sum += i;
    }
    }
    else if (guan <= 30)
    {
    for (int i = 1; i <= 20; i++)
    {
    sum += i;
    }
    for (int i = 21; i <= guan; i++)
    {
    sum += 10;
    }
    }
    else if (guan <= 40)
    {
    for (int i = 1; i <= 20; i++)
    {
    sum += i;
    }
    for (int i = 21; i <= 30; i++)
    {
    sum += 10;
    }
    for (int i = 31; i <= guan; i++)
    {
    sum += 20;
    }
    }
    else if (guan <= 49)
    {
    for (int i = 1; i <= 20; i++)
    {
    sum += i;
    }
    for (int i = 21; i <= 30; i++)
    {
    sum += 10;
    }
    for (int i = 31; i <= 40; i++)
    {
    sum += 20;
    }
    for (int i = 41; i <= guan; i++)
    {
    sum += 30;
    }
    }
    else//50关
    {
    for (int i = 1; i <= 20; i++)
    {
    sum += i;
    }
    for (int i = 21; i <= 30; i++)
    {
    sum += 10;
    }
    for (int i = 31; i <= 40; i++)
    {
    sum += 20;
    }
    for (int i = 41; i <= 49; i++)
    {
    sum += 30;
    }
    sum += 100;
    }
    Console.WriteLine(sum);
    }
    else
    {
    Console.WriteLine("输入有误!");
    }
    Console.ReadLine();

    (2)Console.Write("请输入您现在闯到的关卡数:");
    int guan = int.Parse(Console.ReadLine());
    if (guan <= 50 && guan >= 1)
    {
    int sum = 0;
    for (int i = 1; i <= guan; i++)
    {
    if (i <= 20)
    {
    sum += i;
    }
    else if (i <= 30)
    {
    sum += 10;
    }
    else if (i <= 40)
    {
    sum += 20;
    }
    else if (i <= 49)
    {
    sum += 30;
    }
    else
    {
    sum += 100;
    }
    }
    Console.WriteLine(sum);
    }
    else
    {
    Console.WriteLine("输入有误!");
    }
    Console.ReadLine();


    5.找出100以内与7有关的数并打印、
    (1).从1找到100
    (2).找出与7有关的数
    个位数是7 a%10==7
    十位数是7 a/10 ==7
    能被7整除 a%7 ==0
    for (int i = 1; i <= 100; i++)
    {
    if (i % 7 == 0 || i % 10 == 7 || i / 10 == 7)
    {
    Console.Write(i+" ");
    }
    }
    Console.ReadLine();

  • 相关阅读:
    Sql 行转换列(列转换行), JavaScript解决思路
    c# 异步线程
    C# 读取数据库存储过程返回值 笔记
    利用UtilityLibrary.dll WeifenLuo.WinFormsUI.Docking.dll控件创建工具栏效果
    关于C#Winform线程调用窗体的使用方法以及窗体的单一显示
    通过调用API函数实现的无边框窗体的拖拽,比判断坐标更快捷
    ubuntu下安装redis
    ubuntu下安装beanstalkd
    preg_match_all 执行一个全局正则表达式匹配
    mongodb的安装和进入
  • 原文地址:https://www.cnblogs.com/1711643472qq/p/5699440.html
Copyright © 2011-2022 走看看