c#-循环

桃扇骨 2022-05-26 11:53 295阅读 0赞

前言

  对于一些事件,我们判断一次并不能得出我们想要的结果,那么怎么办呢?由此我们引出了循环这一功能。那循环一共有几种,这个您了解吗?想要更了解的就往下看吧!

While-先判断在执行循环体

  我们来做一个例题:2006年学员是80000人,每年增长25%,请问按此增长速度,到哪一年学员人数将达到20万人。

  1. double student = 80000;
  2. int year = 2006;
  3. while (student<200000)
  4. {
  5. student *= 1.25;
  6. year++;
  7. }
  8. Console.WriteLine("{0}年是{1}人", year, student);
  9. Console.ReadKey();

  这个例题中我们用到了While循环,先判断学生是否小于20万,如果小于的话执行循环体,如果不小于的话直接输出。

DO While-先执行一次循环体,然后再判断条件是否成立

  我们再来做一个例题:要求用户输入用户名和密码,只要不是admin,88888就一直提示用户名或密码错误。

  1. string name = "";
  2. string pwd = "";
  3. do
  4. {
  5. Console.WriteLine("请输入账号");
  6. name = Console.ReadLine();
  7. Console.WriteLine("请输入密码");
  8. pwd = Console.ReadLine();
  9. } while (name != "admin" || pwd != "88888");
  10. Console.WriteLine("程序结束");
  11. Console.ReadKey();

  这道题中我们应该使用Do While循环,先输入用户名和密码,判断是否是要求输入的内容,如果不是,需要重新输入。所以,Do While的作用就是先执行循环体,再判断条件是否成立,成立的话直接输出,不成立重新执行。

小结

  While和Do While循环有一个共同点,就是我们都不知道要循环的次数,那要是知道循环的次数了,应该用什么呢?没错就是接下来的for循环。

For

  求1-100之间的偶数和。

  1. int sum = 0;
  2. for (int i = 0; i <= 100; i++)
  3. {
  4. if (i % 2==0)
  5. {
  6. sum += i;
  7. }
  8. }
  9. Console.WriteLine("总和为{0}",sum);
  10. Console.ReadKey();

  这种题中,我们大概知道要循环的次数,所以我们使用for循环。

小扩充Forr

  将一个字符串数组的元素的顺序进行反转。(“我”,“是”,“好人”)(“好人”,“是”,“我”)。

  1. string[] text = { "我", "是", "好人" };
  2. for (int i = text.Length - 1; i >= 0; i--)
  3. {
  4. Console.Write(text[i]+"\t");
  5. }
  6. Console.ReadKey();

  没错,Forr的作用就是进行反转,与i++不同,而是i- -。

Break-用于循环中,退出当前循环

  求:1-100之间的整数相加,得到累加值大于20的当前数(比如:1+2+3+4+5+6=21)结果6。

  1. int sum = 0;
  2. for (int i = 1; i <= 100; i++)
  3. {
  4. sum += i;
  5. if (sum > 20)
  6. {
  7. Console.WriteLine("{0}----------{1}", sum, i);
  8. break;
  9. }
  10. }
  11. Console.ReadKey();

  如果和大于20的话,就输出当前的值,然后跳出循环,如果和不大于20,继续当前循环。

Continue-跳到循环条件位置

  求:1-100(含)之间的除了能被7整除之外所有整数的和。

  1. int i = 0;
  2. int sum = 0;
  3. while (i < 100)
  4. {
  5. i++;
  6. if (i % 7 == 0)
  7. {
  8. continue;
  9. }
  10. sum += i;
  11. }
  12. Console.WriteLine("总和为{0}", sum);
  13. Console.ReadKey();

  该题中,如果是7的倍数,通过continue就会自动跳到循环的位置走i++的代码。

总结

  这是循环的基本知识,要区分清楚什么情况下使用哪种循环,是否需要使用break和continue。

发表评论

表情:
评论列表 (有 0 条评论,295人围观)

还没有评论,来说两句吧...

相关阅读

    相关 C++ 循环

    C++ 循环 有的时候,可能需要多次执行同一块代码。一般情况下,语句是顺序执行的:函数中的第一个语句先执行,接着是第二个语句,依此类推。 编程语言提供了允许更为复杂的执

    相关 c#-循环

    前言   对于一些事件,我们判断一次并不能得出我们想要的结果,那么怎么办呢?由此我们引出了循环这一功能。那循环一共有几种,这个您了解吗?想要更了解的就往下看吧! Wh