C语言:while后接分号“;”与不接分号“;”的区别 您所在的位置:网站首页 分号句是什么意思 C语言:while后接分号“;”与不接分号“;”的区别

C语言:while后接分号“;”与不接分号“;”的区别

2024-03-20 09:13| 来源: 网络整理| 查看: 265

注意:本文讨论的while后接分号“;”与否的区别,是针对while循环,因为do……while循环中while 后面的分号必须要有且千万不能省略,否则编译会报错。

while 循环的格式是: while (循环条件) {     循环体; }

1、while(循环条件)后不带分号“;”时:当循环条件为真(非0)时, 不断执行循环体语句。直到循环条件为假(0)时,就跳出循环,执行while循环后面的语句。例:利用while循环计算 1+2+3+4+…+9 之和

#include int main(void) { int i = 10; int sum = 0; while (i--) // 没有分号“;” { sum = sum + i; } printf("sum = %d\n", sum); return 0; }

执行结果:sum = 45 符合预期。

2、while(循环条件)后带有分号“;”时: while(循环条件)与其后面的分号“;”成为了一个整体。当循环条件为真(非0)时, 不会执行循环体语句。直到循环条件为假(0)时,才会执行循环体语句(执行一遍),然后继续执行后面的语句。例:利用while循环计算 1+2+3+4+…+9 之和

#include int main(void) { int i = 10; int sum = 0; while (i--); // 有分号“;” { sum = sum + i; } printf("sum = %d\n", sum); return 0; }

执行结果:sum = -1 不符合预期。

3、总结 虽然while循环中while后面加了分号“;”不会出现编译出错,但是它已经不是while循环了,理解也变了,执行结果因此就不同了。 所以,while循环中while后面没有分号“;”(do……while循环中while后面才有分号“;”)。



【本文地址】

公司简介

联系我们

今日新闻

    推荐新闻

    专题文章
      CopyRight 2018-2019 实验室设备网 版权所有