C语言的循环语句
C語言的循環語句有 while ,for, do while
文章目錄
- 一、while
- 1.while 語句的語法形式
- 2、while 語句中的 break 和 continue
- (1)break
- (2)continue
- 二、for
- 1、for 語句的語法形式
- 2、for 語句中的 break 和 continue
- (1)break
- (2) continue
- 3、for 循環的 3 個表達式都可以省略
- 三、do while
- 1、do while 語句的語法形式
- 2、do while 語句中的 break 和 continue
- (1)break
- (2)continue
- 四、一些習題
- 1、計算 n 的階乘
- 2、計算1!+ 2!+ ... + 10!
一、while
1.while 語句的語法形式
while (表達式)語句;while 語句的執行流程:先判斷表達式,如果為真,執行語句,然后后在判斷表達式。重復進行,如果表達式為假,則退出循環,不再執行
用 while 循環輸出1 ~ 10 #include <stdio.h>int main() {int i = 1;while (i <= 10){printf("%d ", i);i++;}return 0; }2、while 語句中的 break 和 continue
(1)break
while 語句中如果執行 break 則會直接跳出循環
程序輸出什么呢?
#include <stdio.h> int main() {int i = 1;while (i <= 10){if (i % 5 == 0)break;printf("%d ", i);i++;}return 0; }程序輸出 1 2 3 4
(2)continue
while 語句中執行 continue 時會跳過 continue 后面循環體的語句,來到判斷表達式
程序輸出什么呢?
#include <stdio.h> int main() {int i = 1;while (i <= 10){if (i % 5 == 0)continue;printf("%d ", i);i++;}return 0; }程序輸出1 2 3 4 后死循環
二、for
1、for 語句的語法形式
for (表達式1; 表達式2; 表達式3)語句;
for 語句的執行流程:先執行表達式1,然后判斷表達式2,如果為真,執行語句,然后執行表達式3,接著判斷表達式2,重復進行,如果表達式2為假,則退出循環,不再執行
通常,表達式1為循環變量賦一個初識值,表達式2作為是否執行循環的條件,表達式3改變循環變量的值,避免循環一直執行下去
用 for 循環輸出1 ~ 10 #include <stdio.h>int main() {int i;for (i = 1; i <= 10; i++){printf("%d ", i);}return 0; }2、for 語句中的 break 和 continue
(1)break
for 語句中如果執行 break 則會直接跳出循環
程序輸出什么呢 ?
#include <stdio.h>int main() {int i;for (i = 1; i <= 10; i++){if (i % 5 == 0)break;printf("%d ", i);}return 0; }程序輸出 1 2 3 4
(2) continue
for 語句執行 continue 會跳過 continue 后面循環體內的語句,來到表達式3,然后判斷表達式2,繼續循環
程序輸出什么呢?
#include <stdio.h>int main() {int i;for (i = 1; i <= 10; i++){if (i % 5 == 0)continue;printf("%d ", i);}return 0; }程序輸出1 2 3 4 6 7 8 9
3、for 循環的 3 個表達式都可以省略
for(;;)分號不能省略
省略表達式2時:此時循環永真
三、do while
1、do while 語句的語法形式
do 語句; while (表達式);
無論條件如何都會執行一次語句
先執行語句,然后判斷表達式,如果表達式為真,執行語句,重復進行,如果表達式為假,則退出循環
用 do while 循環輸出 1 ~ 10 #include <stio.h>int main() {int i = 1;do{printf("%d ", i);i++;}while (i <= 10);return 0; }2、do while 語句中的 break 和 continue
(1)break
do while 中如果執行 break 則會直接跳出循環
程序輸出什么呢?
#includ <stdio.h>int main() {int i = 1;do{if (i % 5 == 0)break;printf("%d ", i);i++;} while (i <= 10);return 0; }程序輸出 1 2 3 4
(2)continue
do while 語句執行continue 會跳過 continue 后面循環體內的語句,來到判斷表達式
程序輸出什么呢?
#includ <stdio.h>int main() {int i = 1;do{if (i % 5 == 0)continue;printf("%d ", i);i++;} while (i <= 10);return 0; }輸出1 2 3 4 后死循環
四、一些習題
1、計算 n 的階乘
#inlcude <stdio.h>int main() {int i = 0;int ret = 1;int n = 0;scanf("%d", &n);for (i = 2; i <= n; i++){ret *= i;}printf("%d\n", ret);return 0; }2、計算1!+ 2!+ … + 10!
#include <stdio.h>int main() {int i = 0;int ret = 1;int sum = 0;for (i = 1; i <= 10; i++){ret *= i;sum += ret;}printf("%d\n", sum);return 0; }goto 語句也可以實現循環,但是可以用上述的循環語句替代
for 循環其實是 while 循環的一種常用方式的簡寫,在需要賦初值和調整循環變量的語句時,他比 while 循環的效果更好,for 循環將循環變量的初值,循環條件,以及循環變量的調整放在一起,當循環語句較多時,比使用while語句更方便的管理
總結: 三種循環都可以使用 break 和continue 語句,他們的作用有一點點的差別,根據應用場景選擇合適的循環語句
總結
- 上一篇: Winfrom 桌面弹窗拦截 关闭进
- 下一篇: Cadence Allegro PCB各