首先要确定您需要入口条件循环还是退出条件循环。通常是需要入口条件循环。首先是因为一般原则是在跳过(或循环)之前进行查看要比之后好;其次是如果在循环开始的地方进行循环判断,程序的可读性更强;最后一点是在很多应用中,如果一开始就不满足判断条件,那么跳过整个循环是重要的。
假定您需要一个入口条件循环,应该使用for还是while循环?这两者能做的事情是一样的。
要使for循环看起来像while循环,可以去掉它的第一个和第三个表达式。
例如:for(;test;) while(test)
要使while循环看起来像for循环,可以在前面使用初始化并包含更新语句:
initialize ; //在前面使用初始化
while(test)
{
body;
update; //并包含更新语句
}
与下面这种形式相同:for(initialize;test;update) body;
说到流行风格,在循环涉及到初始化和更新变量时使用for循环较为适当,而在其他条件下使用while循环更好一些。while循环对以下的条件来说是很自然的:
while(scanf("%d",&num)==1)
而对那些涉及到用索引计数的循环,使用for循环是一个更自然的选择:
for(count=1; count<=100; cont++)