do-while语句
3 do-while语句
do
循环体语句;
while(表达式);
/*连续输出1~9九个数字*/
int i=1;
do
{
打印i;
i++;
} while(i<10);
循环体为多个语句组成,必须用{}括起来,形成复合语句。
do必须与while一起使用。
用while语句或do-while语句处理同一问题时,若二者的循环体部分一样,其结果也一样。但在do-while语句中,若while后面的表达式一开始就为假时,则先执行循环体,然后转向循环体下面的语句执行,这与while循环是不同的。
do-while语句的表达式后面必须加分号。
3 do-while语句
【例5.5】编写计算s=1+2+3+…+n的值,其中n 由键盘输入。
程序如下:
main()
{
int n,i=1,s=0;
scanf("%d",&n);
do
{
s=s+i;
i++;
}
while(i<=n);
printf("s=%d\n",s);
}
3 do-while语句
printf("s=%d\n",s);
}
3 do-while语句
谢 谢 观 看
在C语言中,`do-while`语句是一种循环控制结构,它允许程序至少执行一次循环体,然后再根据条件判断是否继续执行。这种循环结构在处理需要确保至少执行一次循环体的情况时非常有用。
`do-while`语句的基本语法如下:
```c
do {
// 循环体,可以包含多条语句
} while (表达式);
```
在这里,`表达式`是一个条件,用于决定循环是否应该继续。循环体中的语句将首先执行,然后评估`表达式`。如果`表达式`的结果为真(非零),循环将继续;如果为假(零),循环将终止。
在提供的示例中,我们有一个简单的例子展示了如何连续输出1到9的数字:
```c
int i = 1;
do {
// 打印 i
i++;
} while(i < 10);
```
在这个例子中,`i`初始化为1,`do`块内的代码将首先执行,打印`i`并将其加1。之后,`while(i < 10)`被检查,由于`i`现在为2,条件为真,因此会再次进入循环。这个过程会一直持续到`i`达到10,此时`while`条件变为假,循环结束。
另一个例子是计算1到n的和,其中n由用户输入:
```c
int n, i = 1, s = 0;
scanf("%d", &n);
do {
s = s + i;
i++;
} while(i <= n);
printf("s=%d\n", s);
```
这里,`do-while`语句用于累加从1到n的所有整数,直到`i`超过`n`。
在另一个示例中,`do-while`语句用于计算自然对数的底e的近似值,直到最后一项的绝对值小于10的负6次方:
```c
long p = 1;
int n = 1;
float s = 1;
do {
s = s + 1.0 / p;
n++;
p = p * n;
} while(1.0 / p >= 1e-6);
printf("s=%f\n", s);
```
在这个例子中,`do-while`循环持续执行,直到序列项的倒数小于1e-6,这是判断序列收敛的一个标准。
`do-while`循环在C语言中用于处理那些需要至少执行一次循环体,且循环次数依赖于某个条件的情况。与`while`循环不同的是,`do-while`循环的条件测试是在循环体执行后进行的,这意味着即使初始条件不满足,循环体也会至少执行一次。此外,循环体如果是多条语句,必须使用花括号`{}`包裹,以构成复合语句。记住,`do-while`语句的表达式后面必须跟一个分号。
- 1
- 2
前往页