前言:
最大的差別就是:do-while是先執行循環體,再判斷,while是先判斷再執行
while 裡面的循環體很可能1次都不會被執行
do-while 裡面的循環體至少被執行1次---- (循環體需要至少執行1次的時候用)
一:while語句
while語句的基本文法:
while(表達式){
循環體;
}
語義:
1.先判斷表達式是否成立,如果成立,則跳轉2,否則跳轉3
2.執行循環體,執行完畢跳轉到1
3.跳出循環,循環結束
while循環需要注意的地方:
1.防止死循環。避免條件永真或永假。如果永真死循環,如果永假不循環,寫起來毫無意義
2.while循環後面千萬不要加分号
3.記得結束循環的語句不要忘了
4.循環跟if語句一樣的地方就是:大括号可以省略。隻能控制離它最近的一條語句,并且這條語句不能是聲明變量的語句
例子:循環一共輸出 10 遍:Hello, World!
#include <stdio.h>
int main(int argc, const char * argv[]) {
//循環變量,用來控制循環的次數的
int i = 0;
while (i < 10) { //改變<後面的數字就能控制循環的次數,并且後面的數字是循環額次數
printf("Hello, World!\n");
i++; //控制循環結束的語句
}
return 0;
}
二、do-while語句
do-while的文法:
do{
循環體;
}while(表達式);
注意:while的小括号後面一定要加分号
語義:
1.執行循環體,跳轉到2
2.判斷表達式的結果是否為真,如果為真,跳轉到1,否則跳轉到3
3.跳出循環,循環結束
例子:用do-while求1-100的總和;
#include <stdio.h>
int main(int argc, const char * argv[]) {
int i = 1;
int sum = 0;
do{
sum += i;
i++;
}while(i<=100);
printf("%d\n",sum);
return 0;
}