多组输入
如果我们想要调用一次程序多输入几个来显示星期几的话只要用 do while循环和switch语句就好了。
#include<stdio.h> int main() { int day = 0; do { scanf("%d", &day); switch (day) { case 1: printf("星期一\n"); break; case 2: printf("星期二\n"); break; case 3: printf("星期三\n"); break; case 4: printf("星期四\n"); break; case 5: printf("星期五\n"); break; case 6: printf("星期六\n"); break; case 7: printf("星期日\n"); break; case 0: printf("退出程序"); break; default: printf("输入错误\n"); break; } } while (day); return 0; }
那么运行结果是怎么样的,我们一起来看一下
我们就实现了多组输入,当我们想要结束程序的时候,是需要输入0,会结束循环后执行完剩余的代码,也就退出程序了
接下来给大家稍微分析一下代码的为什么会这样执行,首先switch语句放在do while循环中,while的判断条件是day,那么每次都输入一个数字只要不是0,那么,我们都知道,c语言中0为假,非0为真,也就是因此,才把0设置为退出程序的原因,非0就为真,那么循环就继续执行下去了。
循环语句
在C语言中,循环语句用于重复执行一段代码,直到满足特定条件为止。
while循环
while循环:
while循环在循环次数未知或需要根据特定条件来判断时使用。
语法结构
它的基本语法如下:
while (condition) {
// 循环体,执行这里的代码
}
其中,condition是循环条件,当条件为真时执行循环体,当条件为假时结束循环。在进入循环体之前,会先判断条件是否为真,如果不真,则跳过循环体。
while语句代码示例
接下来我们用while循环打印一下1到100中所有3的倍数,来看一下while是怎样工作的。
#include<stdio.h> int main() { int n = 1; while (n <= 100) { if (n % 3 == 0) { printf("%d ", n); } n++; } return 0; }
这样便会打印出1到100的所有3的倍数了
while循环是先判断条件是否成立,在执行while循环中的代码,当条件不成立的时候,跳出循环。
do while循环
do-while循环是一种先执行循环体,再判断条件的循环结构。
语法结构
它的基本语法如下:
do {
// 循环体,执行这里的代码
} while (condition);
其中,condition是循环条件,当条件为真时继续执行循环,当条件为假时结束循环。不同于for循环和while循环,在do-while循环中,循环体至少会被执行一次,因为条件是在循环体执行后判断的。
do while语句代码示例
接下来我们用do while循环打印一下1到100中所有3的倍数,来看一下和while有什么区别。
#include<stdio.h> int main() { int n = 1; do { if (n % 3 == 0) { printf("%d ", n); } n++; } while (n <= 100); return 0; } • 1 • 2 • 3 • 4 • 5 • 6 • 7 • 8 • 9 • 10 • 11 • 12 • 13 • 14
也同样能够打印出1到100中所有3的倍数,那么它与while循环的区别就在于,它是先执行代码后判断条件是否成立,成立则继续循环,不成立则跳出循环。
for循环
for循环是在已知循环次数的情况下使用的循环结构。
语法结构
它的基本语法如下:
for (initialization; condition; increment/decrement) { // 循环体,执行这里的代码 } • 1 • 2 • 3
其中,initialization是循环初始化语句,用于设置循环的初始条件;condition是循环条件,当条件为真时执行循环体,当条件为假时结束循环;increment/decrement是递增或递减表达式,每次循环后更新循环变量的值。
for语句代码示例
同样的,我们还是用for循环来打印出1到100中所有3的倍数
#include<stdio.h> int main() { int n = 0; for (n = 1; n <= 100; n++) { if (n % 3 == 0) { printf("%d ", n); } } return 0; } • 1 • 2 • 3 • 4 • 5 • 6 • 7 • 8 • 9 • 10 • 11 • 12 • 13
同样也能打印出1到100中所有3的倍数,在这里给大家稍微讲解一下for循环的执行顺序
for(int i =0; i<5;i++){
// 循环体
}
执行顺序解抛
执行的顺序如下:
第一步 : i=0 初始化值
第二步 : i<5 进行条件判断,如果为真,则继续执行
第三步 : 执行循环体的内容
第四步 : i++ 变量i自增
第五步 : 回到第二步,条件判断为真,则执行循环体内容,再到i++一直循环,
直到第二步的判断条件为假,则退出该循环
到此就解释完了for循环的执行顺序
总结
到这里就向大家分享完了,文章都是个人拙见,有不好的地方欢迎大家指出,以后会持续更新,希望能和小伙伴们深入交流一下编程技术。