4.4 循环
循环就是重复执行语句。这个技术使用起来非常方面,因为可以对操作重复任意多次(上千次,甚至百万次),而无需每次都编写相同的代码。
循环的另一个重要类型是一直循环到给定的条件满足为止。
4.4.1 do循环
do循环以下述方式执行:执行标记为循环的代码,然后进行一个布尔测试,如果测试的结果为true,就再次执行这段代码。当测试结果为false时,就退出循环。
note: do循环一定会执行一次循环代码。
do循环的结构如下:
do
{
<code to be looped>
} while (<Test>);
其中计算<Test>会得到一个布尔值。
注意:while语句之后必须使用分号。
下面用一个示例说明下do循环的使用,代码如下:
using System; using System.Collections.Generic; using System.Linq; using System.Text; using System.Threading.Tasks; namespace Ch04Ex04 { class Program { static void Main(string[] args) { double balance, interestRate, targetBalance; Console.WriteLine( "What is your current balance?" ); balance = Convert.ToDouble( Console.ReadLine() ); Console.WriteLine( "What is your current annual interest rate (in %)?" ); interestRate = 1 + Convert.ToDouble( Console.ReadLine() ) / 100.0; Console.WriteLine( "What balance would you like to have?" ); targetBalance = Convert.ToDouble( Console.ReadLine() ); int totalYears = 0; do { balance *= interestRate; ++totalYears; } while( balance < targetBalance ); Console.WriteLine( "In {0} year{1} you'll have a balance of {2}.", totalYears, totalYears == 1 ? "":"s", balance ); Console.ReadKey(); } } }
运行结果如下:
这段代码利用固定的利率,对年度计算余额的过程重复必要的次数,直到满足临界条件为止。在每次循环中,递增一个计数器变量,就可以确定需要多少年。