关于c:C程序设计-05-循环语句

60次阅读

共计 1163 个字符,预计需要花费 3 分钟才能阅读完成。

一、while语句

while语句个别模式为:

while (表达式) 语句

其中 表达式 为循环条件,语句 为循环体。while的特点为:先判断循环条件,后执行循环体。

#include <stdio.h>
int main()
{
int n, result = 1;
scanf("%d", &n);
while (n > 1)
{
result = result * n;
n--;
}
printf("%d", result);
return 0;
}

二、do...while语句

do...while语句的个别模式为:

do
语句
while (表达式)

该语句的特点是:先执行循环体,后判断循环条件。

#include <stdio.h>
int main()
{
int n, result = 1;
scanf("%d", &n);
do
{
result = result * n;
n--;
} while (n > 0);
printf("%d", result);
return 0;
}

三、for语句

相比 while 语句和 do...while... 语句,for语句更加灵便,不仅能够用于循环次数曾经确定的状况,也能够用于循环次数不确定而只给出了循环完结条件的状况。其个别模式为:

for (表达式 1; 表达式 2; 表达式 3)
语句

其中三个表达式的作用顺次为:

  • 表达式 1 :设置初始条件,只执行一次,能够为多个变量设置初始值,可省略。
  • 表达式 2 :循环条件,可省略。
  • 表达式 3 :循环的调整,执行完循环体后才执行,可省略。
#include <stdio.h>
int main()
{
int n, result = 1;
scanf("%d", &n);
for (; n > 0; n--)
result = result * n;
printf("%d", result);
return 0;
}

C99 规范容许在 表达式 1 中定义变量并初赋值,但定义变量的作用域仅限于 for 循环内,在循环外不可调用该变量。

3 种循环语句都能够互相嵌套。

四、扭转循环执行状态

1. break语句

break语句能够间接跳出循环体,提前结束循环,接着执行循环上面的语句。该语句只能用于循环语句和 switch 语句中。

#include <stdio.h>
int main()
{
int n, result = 1;
scanf("%d", &n);
while (1)
{
result = result * n;
n--;
if (n == 0)
break;
}
printf("%d", result);
return 0;
}

2. continue语句

continue语句用于完结此次循环而不终止整个循环,而是接着执行下一次循环的操作。

#include <stdio.h>
#define M 100
int main()
{
int n;
for (n = 1; n < 100; n++)
{if (n % 7 != 0)
continue;
printf("%d\t", n);
}
return 0;
}

Reference:

谭浩强《C 程序设计(第五版)》

正文完
 0