1.for循环
for(表达式1;表达式2;表达式3){
循环语句块;
}
经典例题:
打印九九乘法表
#define _CRT_SECURE_NO_WARNINGS 1
#include <stdio.h>
int main4() {
int i, j;
//打印上三角九九乘法表
for (i = 9; i >= 1; i = i - 1) {
for (j = 1; j <= i; j = j + 1) {
printf("%d*%d=%d\t", i, j, i * j);
}
printf("\n");
}
return 0;
}
下面来看看它的执行过程:
- 求解表达式1。
- 求解表达式2。若其值为真,则执行 for 语句中指定的内嵌语句,然后执行第3步;若表达式2值为假,则结束循环,转到第5步。
- 求解表达式3。
- 转回上面第2步继续执行。
- 循环结束,执行 for 语句下面的语句。
关于自增与自减
简单地说:++i 和 i++ 在单独使用时,都表示 i=i+1;– –i 和 i– – 在单独使用时,都表示 i=i–1。
而 a=++i 就相当于 i=i+1,a=i;a=i++ 就相当于 a=i,i=i+1。
同理,a=––i 就相当于 i=i–1,a=i;a=i–– 就相当于 a=i,i=i–1。
2.do-while循环
do {
循环语句块;
} while(表达式);
do-while循环的特点 循环至少执行一次,使用的场景有限。
经典例题:
#define _CRT_SECURE_NO_WARNINGS 1
#include <stdio.h>
int main1() {
int i = 1, j;
do {
switch (i) {
case 1:
case 7:
printf(" *\n");
break;
case 2:
case 6:
printf(" ***\n");
break;
case 3:
case 5:
printf(" *****\n");
break;
case 4:
printf("*******\n");
break;
}
i = i + 1;
} while (i);
return 0;
}