3.3 for循环的其他形式
3.3.1 括号内的三个表达式都可以省略,或者省略一部分
例如:int i = 0
for(; i < 5; i++){
printf("i = %d", i);
}
或者 int i= 0;
for(;;){
if(i < 5){
printf("i = %d", i);
i++;
}else{
break;
}
}
3.4 for 循环的嵌套
3.4.1 嵌套循环在一般情况下,只有2两,不会超出3层
3.4.2 嵌套举例例子
3.4.2.1 打印5x5的*号矩阵
for(int i = 0; i < 5; i++){
for (int j = 0; j < 5; j++) {
printf("* ");
}
printf("\n");
}
打印结果:* * * * *
* * * * *
* * * * *
* * * * *
* * * * *
3.4.2.2 打印5x5的*号 倒上三角矩阵
for (int i = 5 ; i > 0; i--) {
for (int j = 0; j < i; j++) {
printf("* ");
}
printf("\n");
}
打印结果:* * * * *
* * * *
* * *
* *
*
3.4.2.3 打印正三角
for(int i = 1; i <= 5; i++){
for (int j = 1 ; j <= 5 ; j++) {
if(j > 5 - i){
printf("* ");
}
else{
printf(" ");
}
}
printf("\n");
}
打印结果:
*
* *
* * *
* * * *
* * * * *
3.4.2.4 打印九九乘法表
for (int i = 1; i < 10 ; i++) {
for (int j = 1; j <= i; j++) {
printf("%dx%d=%d ", i,j,i*j);
}
printf("\n");
}
打印结果:
1x1=1
2x1=2 2x2=4
3x1=3 3x2=6 3x3=9
4x1=4 4x2=8 4x3=12 4x4=16
5x1=5 5x2=10 5x3=15 5x4=20 5x5=25
6x1=6 6x2=12 6x3=18 6x4=24 6x5=30 6x6=36
7x1=7 7x2=14 7x3=21 7x4=28 7x5=35 7x6=42 7x7=49
8x1=8 8x2=16 8x3=24 8x4=32 8x5=40 8x6=48 8x7=56 8x8=64
9x1=9 9x2=18 9x3=27 9x4=36 9x5=45 9x6=54 9x7=63 9x8=72 9x9=81
4.break关键字和break语句
4.1 break和continue语句都可以用在循环中,用来跳出循环,即结束循环,break语句还可以用在switch语句中
例如 : for(int i = 0 ;; i++){
if(i > 4){
break;//break之后的语句不会再执行
}
printf("%d", i);
}
5.continue关键字和continue语句
5.1 continue是结束本次循环,继续下一次循环
continue语句的作用是跳过循环体中剩余的语句而继续下一次循环,continue语句只在for,while,do.. while循环中使用。经常是与if语句结合。
例如:
int a = 10;
while(a--){
if(a%2 == 0){
continue;
}
printf("###");
}
|
|