當(dāng)您確定需要循環(huán)的時(shí)候垢啼,應(yīng)該使用哪一種呢窜锯?首先要確定您需要入口條件循環(huán)還是退出條件循環(huán)。通常是需要入口條件循環(huán)(即先判斷條件后進(jìn)入循環(huán))芭析。有若干原因使得計(jì)算機(jī)科學(xué)家認(rèn)為入口條件循環(huán)更好一些锚扎。首先是因?yàn)橐话阍瓌t是在跳過(guò)(或循環(huán))之前進(jìn)行查看要比之后好;其次是如果在循環(huán)開始的地方進(jìn)行循環(huán)判斷馁启,程序的可讀性更強(qiáng)驾孔;最后一點(diǎn)是在很多應(yīng)用中,如果一開始就不滿足判斷條件进统,那么跳過(guò)整個(gè)循環(huán)是重要的助币。
假定您需要一個(gè)入口循環(huán)條件,應(yīng)該使用for還是while循環(huán)螟碎?這有些事個(gè)人愛(ài)好的問(wèn)題眉菱,因?yàn)槎呖梢宰龅氖虑槭窍嗤摹R筬or循環(huán)看起來(lái)像while循環(huán)掉分,可以去掉它的第一個(gè)和第三個(gè)表達(dá)式俭缓。例如克伊,下面兩種寫法是相同的:
for(; test;)
while(test)
要使得while循環(huán)像for循環(huán),可以在前面初始化并包含更新語(yǔ)句华坦。例如:
initialize;
while(test)
{
? ? body;
? ? update;
}
與下面這種形式相同:
for(initialize; test; update)
? ? body;
說(shuō)道更流行的風(fēng)格愿吹,在循環(huán)涉及到初始化和更新變量時(shí)使用for循環(huán)較為適當(dāng),而在其他條件下使用while循環(huán)更好一些惜姐。while循環(huán)對(duì)以下條件來(lái)說(shuō)是很自然的:
while(scanf("&ld",&num) == 1)
而對(duì)那些涉及到索引計(jì)數(shù)的循環(huán)犁跪,使用for循環(huán)是更自然的選擇。例如:
for(count = 1; count <= 100 ; count++)