C初阶(十二)do - while循环 --- 致敬革命烈士
大家国庆看阅兵仪式和天安门升旗仪式了吗?岁月安好,只因有人负重前行。
————山那边是什么
————是烈士的英魄
————是他们拼死保卫的新中国
————河那边是什么
————是绵延的战火
————她望着远方泪一滴滴的落
————和平来了
————他们走了
区别:
while --- 先判断后执行
do - while --- 先执行后判断(至少执行一次)
一、do - while语法形式
do
{语句;
}
while();
二、场景示例
场景一:冲锋号响了,连喊三声“杀”。
分析:先执行“冲锋号是否响了的判断”(do),后用循环实现三声“杀”(while)
#define _CRT_SECURE_NO_WARNINGS 1#include <stdio.h>
#include <string.h>
int main()
{printf("冲锋号响了吗:>");int n = 0;char arr[20] = { 0 };scanf("%s", arr);do{if (strcmp(arr, "响了") == 0){printf("杀\n");n++;if (n == 3) //喊到第三声时终止循环{break;}}} while (n);return 0;
}
运行结果👉
冲锋号响了吗:>响了
杀
杀
杀
tip:我专门写过一篇关于strcmp函数的推文,不清楚的可以看看。
场景一(升级版):
结果预览👉
冲锋号响了吗:>响了 杀! 杀!! 杀!!!
代码实现👉(循环嵌套)
#define _CRT_SECURE_NO_WARNINGS 1#include <stdio.h> #include <string.h> int main() {printf("冲锋号响了吗:>");int n = 0;char arr[20] = { 0 };scanf("%s", arr);do{if (strcmp(arr, "响了") == 0){printf("杀");n++;int j = 0;for (j = n; j > 0; j--){printf("!");}printf("\n");if (n == 3) //喊到第三声时终止循环{break;}}} while (n);return 0; }
三、致敬