break语句和continue语句
- 用break语句提前终止循环。
- break语句可以用来从循环体内跳出循环体,即提前结束循环,接着执行循环下面的语句。
- 只能用于循环语句和switch语句之中,而不能单独使用
- 用continue语句提前结束本次循环。
- 有时并不希望终止整个循环的操作,只希望提前结束本次循环,而接着执行下次循环,这时可以用continue语句。
- break语可和continue语句的区别:
- continue语句只结束本次循环,而不是终止整个循环的执行。
- break语句结束整个循环过程,不再判断执行循环的条件是否成立。
例子
代码语言:javascript复制捐款活动,当人数达到1000人,或者捐款总额度达到100000,不再接受捐款,计算出平均每人捐款数额。(break)
#include <stdio.h>
#define SUM 100000
void main() {
float amount, aver, total, i;
for (i=1,total=0;i<= 1000;i )
{
printf("请输入数额:");
scanf_s("%f", &amount);
total = amount total;
if (total >= SUM)
break;
}
aver = total / i;
printf("平均:%fn", aver);
}
代码语言:javascript复制要求输出100~200之间的整数不能被3整除的数。(continue)
#include <stdio.h>
void main() {
int i;
for (i=100;i<= 200;i )
{
if (i % 3 != 0)
printf("%d, ", i);
else
continue;
}
}
循环嵌套
- 一个循环体内又包含另一个完整的循环结构,称为循环的嵌套。
- 内嵌的循环中还可以嵌套循环,这就是多层循环
- 3种循环(while循环、do...while循环和for循环)可以互相嵌套
时钟就是典型的循环嵌套:秒针走一圈,分针走一格;分针走一圈,时针走一格。
例子
代码语言:javascript复制,键盘输入打印行数,输出下列图案
*
**
***
****
*****
...
代码语言:javascript复制#include <stdio.h>
void main() {
int i,j,n;
printf("请输入打印的行数:");
scanf_s("%d", &n);
for (i=1;i<= n;i )
{
for (j = 1; j <= n - i; j )
printf(" ");
for (j = 1; j <= i; j )
printf("*");
printf("n");
}
}
代码语言:javascript复制输出四行五列随机数
#include <stdio.h>
#include <stdlib.h>
#include <time.h>
void main() {
srand(time(0)); //根据系统时间设置随机数种
int i,j,n =0;
for (i=1;i<= 4;i )
{
for (j = 1; j <= 5; j )
printf("%dt",rand()% 100); //取得区间[O,100)的随机整数
printf("n");
}
}