iT邦幫忙

2021 iThome 鐵人賽

DAY 18
1
Software Development

C 語言的簡單入門系列 第 18

【Day 18】while 迴圈 / do...while 迴圈

  • 分享至 

  • xImage
  •  

今天我們來看看 while 迴圈吧~

while 迴圈的基本語法:

while(test_Expression){

    //the body of loop
}

while 迴圈一樣屬於前測式,執行迴圈前,會先判斷 test_Expression 的條件是否為真,如果為真,就會執行迴圈裡面的 statement,執行完再繼續判斷 test_Expression 的條件。如果 test_Expression 的條件為否,就不會執行 statement,直接跳出迴圈。

讓我們用 while 迴圈寫寫看累加:

#include<stdio.h>
int main(){
	int i = 0, sum = 0;
	while(i < 10){
		sum += i;
		i++;
	}
	printf("sum = %d, i = %d", sum, i);
	return 0;
} 

輸出結果:

會發現,for 迴圈能做到的,while 迴圈也能做到~
要注意的是,因為 while 後面只放條件,所以控制條件的那個變數(這裡是)要記得更新!

小補充:如果寫成 while 後面的小括號裡條件放 1,就會變成無窮迴圈~

現在來介紹 do...while 迴圈~

do...while 迴圈的基本語法:

do{
    //the body of loop
}while(test_Expression);

注意:while()後面是有分號的!
do...while 迴圈是屬於後測式迴圈,他會先執行 statement 再判斷 test_Expression 條件是否成立,所以,do...while 迴圈至少會執行一次。
使用哪一種結構是看需求,如果是輸入帳號密碼,那使用 do...while 是比較理想的:先讓使用者輸入帳號密碼,再判斷所輸入的帳號密碼是否正確!
來看看如果是使用 do...while ,一樣想要從 0 累加到 9 要怎麼寫吧!

#include<stdio.h>
int main(){
	int i = 0 , sum = 0;
	do{
		sum += i;
		i++;
	}while(i < 10);
	printf("sum = %d, i = %d", sum, i);
	return 0;
} 

輸出結果:

do...while 迴圈是不是也很容易呢?
今天我們學了 while 迴圈、do...while 迴圈,為了更熟悉迴圈的使用,一樣也來寫作業練習一下吧~

作業:輸入數字,輸出對應的星星。(請用 for 迴圈與 while 迴圈兩種方法各寫一次)

輸出結果要像這樣:

明天我們再來討論一下作業吧~


上一篇
【Day 17】for 迴圈的範例講解
下一篇
【Day 19】while 迴圈 / for 迴圈的範例講解
系列文
C 語言的簡單入門30
圖片
  直播研討會
圖片
{{ item.channelVendor }} {{ item.webinarstarted }} |
{{ formatDate(item.duration) }}
直播中

尚未有邦友留言

立即登入留言