正文

[027] 1到100之和~while^do-while区别2006-02-23 13:41:00

【评论】 【打印】 【字体: 】 本文链接:http://blog.pfan.cn/wentao/10418.html

分享到:

练练循环结构: 1到100之和 <1> for 语句 #include <stdio.h>int main(){    int i, sum;    sum = 0;    for (i = 1; i < 101; i++)        sum += i;    printf("sum=%d\n", sum);    return 0;    } <2> goto 语句 #include <stdio.h>int main(){    int i = 1, sum = 0;    table: sum += i;       /*有点像汇编^_^ */          i++;          if(i < 101)              goto table;          printf("sum=%d\n", sum);          return 0;} ★ goto 语句使程序的转移控制变得非常灵活,但是也造成了导致破坏程序良好结构的可能性,使用时要谨慎。另外,goto语句的使用机会已大大减少,只是需要从多层循环的内层循环跳到外层循环外时才用到goto语句。但是这种用法不符合结构化原则,一般不宜采用,只有在不得已时(例如能大大提高效率)才使用。 <3> while 语句 #include <stdio.h>int main(){    int i, sum;    i = 1;    sum = 0;    while (i < 101)    {        sum += i;        i++;    }    printf("sum=%d\n", sum);    return 0;    } <4> do-while 语句 #include <stdio.h>int main(){    int i, sum;    i = 1;    sum = 0;    do    {        sum += i;        i++;        } while(i <101); /*注意此处的分号不可省,while和do-while区别之一*/    printf("sum=%d\n", sum);    return 0;    } ★ 在一般情况下,用while语句和用do-while语句处理同一问题时,若二者的循环体部分是一样的,它们的结果也一样。如上<3>和<4>的循环体是相同的,得到结果也相同。但是如果while后面的表达式一开始就为假(0值)时,两种循环的结果是不同的。while是"当型"结构,只有条件成立才执行循环体,而do-while是"直到"型结构,先执行一次循环体后再做判断。    另外while结构用{}引起的块不用分号结束,而do-while结构后必须有分号做为语句的结束标志。  

阅读(5410) | 评论(1)


版权声明:编程爱好者网站为此博客服务提供商,如本文牵涉到版权问题,编程爱好者网站不承担相关责任,如有版权问题请直接与本文作者联系解决。谢谢!

评论

loading...
您需要登录后才能评论,请 登录 或者 注册