C语言自学之三种循环比较
使用循环计算1-2+3-4+5-6+…-100的值?
在编辑器中给出了三种循环体结构的部分代码,请选择合适的循环结构补全代码实现此功能。
运行结果为: sum=-50
#include <stdio.h>
int main()
{
/*
小伙伴们:
选择你们认为最合理的循环结构完成功能吧
*/
int sum = 0; //定义计算结果变量sum
int i = 1; //定义循环数字变量i
int flag = 1; //定义符号状态变量flag
//使用while循环
while(i<=100)
{
i++;
sum+= i*flag;//sum=sum+i*flag;
flag *= -1;
}
i = 1; //重新初始化变量i
//do-while循环
do{
i++;
sum+= i*flag;
flag *= -1;
}while(i<=100);
i = 1; //重新初始化变量i
//使用for循环
for(i=1;i<=100;i++)
{
sum+= i*flag;
flag *= -1;
}
printf("sum=%d\n",sum);
return 0;
}
while、do-while和for三种循环在具体的使用场合上是有区别的,如下:
1、在知道循环次数的情况下更适合使用for循环;
2、在不知道循环次数的情况下适合使用while或者do-while循环,
如果有可能一次都不循环应考虑使用while循环,如果至少循环一次应考虑使用do-while循环。
但是从本质上讲,while,do-while和for循环之间是可以相互转换的