1、do while
使用場景:do...while 循環(huán)是 while 循環(huán)的變體蝇庭。在檢查while()條件是否為真之前醉鳖,該循環(huán)首先會執(zhí)行一次do{}之內(nèi)的語句,然后在while()內(nèi)檢查條件是否為真哮内,如果條件為真的話盗棵,就會重復do...while這個循環(huán),直至while()為假。
語法:
do
{
循環(huán)體;
}
例子:
int X; //定義全局變量北发,換成傳感器返回值也可纹因。(可選)
do
{
i = X;
語句;//循環(huán)體內(nèi)可以對 i 進行數(shù)據(jù)操作處理,必須與while內(nèi)的條件有關(guān)聯(lián),否則會進入死循環(huán)琳拨。
}
while( i<5 );
2瞭恰、while
使用場景:當某些語句需要執(zhí)行多次時,就使用while也可以使用for狱庇,與for循環(huán)的區(qū)別在于:循環(huán)次數(shù)為條件語句惊畏。
語法:while(條件語句)
{}
例子:
int=0;
while(i<10)
{ i++;}
3、if密任,else
使用場景:需要判斷的時候颜启,如果條件A成立執(zhí)行,不成立執(zhí)行else語句塊
語法:if(條件語句){}esle{}
例子:if(a>3)
{a++;}
else
{a--}
4浪讳、for
使用場景:用于循環(huán)執(zhí)行程序缰盏,如果需要定義變量控制循環(huán)次數(shù),建議使用for,因為for循環(huán)完畢口猜,變量在內(nèi)存中釋放负溪。
語法:for(賦初值;條件控制,變量自加){}
例子:for(int i=0;i<4;i++){
i=+i;
}
5济炎、switch
使用場景:當判斷固定個數(shù)的值的時候川抡,可以使用if,也可以使用switch冻辩。
但是建議使用switch猖腕,效率相對較高。
工作原理:用小括號中的變量的值依次和case后面的值進行對比恨闪,和哪個case后面的值相同了
就執(zhí)行哪個case后面的語句倘感,如果沒有相同的則執(zhí)行default后面的語句;
細節(jié):
1):break是可以省略的咙咽,如果省略了就一直執(zhí)行到遇到break為止老玛;
2):switch后面的小括號中的變量應(yīng)該是byte,char,short,int四種類型中的一種;
3):default可以寫在switch結(jié)構(gòu)中的任意位置钧敞;如果將default語句放在了第一行蜡豹,則不管expression與case中的value是否匹配,程序會從default開始執(zhí)行直到第一個break出現(xiàn)溉苛。
2)镜廉、當判斷數(shù)據(jù)范圍,獲取判斷運算結(jié)果boolean類型時愚战,需要使用if娇唯。
3)、當某些語句需要執(zhí)行很多次時寂玲,就用循環(huán)結(jié)構(gòu)塔插。
語法:
switch(變量){
case值:要執(zhí)行的語句;break;
…
default:要執(zhí)行的語句;
}
例子:
根據(jù)月份獲得每個月的天數(shù),不考慮閏年拓哟,的示例代碼如下:
int month=10;
int day=0;
swith(day)
{
case1: day=31;
break;
case2: day=28;
break;
case3: day=31;
break;
case3: day=30;
break;
case5: day=31;
break;
case6: day=30;
break;
case7: day=31;
break;
case8: day=31;
break;
case9: day=30;
break;
case10: day=31;
break;
case11: day=30;
break;
case12: day=31;
break;
}
也可以簡化為:
int month = 10;
int days = 0;
switch(month){
case 2:
days = 28;
break;
case 4:
case 6:
case 9:
case 11:
days = 30;
break;
default:
days = 31;
}