C語言 continue 語句
continue語句用于終止本次循環(huán),進(jìn)入下一次循環(huán)。
1.continue語句的形式
continue;
2.功能
continue語句被稱為繼續(xù)語句。在循環(huán)結(jié)構(gòu)中執(zhí)行到continue語句,會使本次循環(huán)提前結(jié)束,即跳過循環(huán)體中continrue語句下面的尚未執(zhí)行的循環(huán)體語句,但不結(jié)束整個循環(huán),繼續(xù)進(jìn)行下一次循環(huán)的條件判別,條件為真,繼續(xù)進(jìn)行執(zhí)行循環(huán)語句。
3.break與continue的區(qū)別
break除了可以用于循環(huán)體中,還可以用于switch語句中;而continue語句只能用于循環(huán)中。
break與continue出現(xiàn)在循環(huán)體中時,對循環(huán)次數(shù)的影響不同:循環(huán)中遇到break馬上退出循環(huán),去執(zhí)行循環(huán)之后的語句;continue則僅能跳過當(dāng)次循環(huán),進(jìn)入下一次循環(huán)。例如:觀察下面兩個程序的執(zhí)行有何不同?
程序1:
main()
{
int i;
int s=0;
for(i=l;i<=10;i++)
{
if(i%5==0)
continue;
s=s+i;
}
printf ("s=%d\n",s);
}
循環(huán)體中,i從1到10之間循環(huán),當(dāng)i能被5整除,即i是5的倍數(shù)時,跳過當(dāng)次循環(huán),即不執(zhí)行s=s+i,直接進(jìn)入下一個i的循環(huán);當(dāng)i不是5的倍數(shù)時,把i累加到s,最后輸出s。所以本程序?qū)崿F(xiàn)的是求"1-10之間所有非5的倍數(shù)的數(shù)之和,即s=1+2+3+4+6+7+8+9。輸出結(jié)果是s=40。
程序2:
main()
{
int i;
int s=0;
for(i=2;i<=10;i++)
{
if(i%5==0)
break;
s=s+i;
}
printf("s-%d\n",s);
}
本程序中,當(dāng)i能被5整除,遇到break終止循環(huán)的執(zhí)行,轉(zhuǎn)而執(zhí)行循環(huán)之后的語句,所以當(dāng)i的值變化到5時,退出循環(huán),相當(dāng)于執(zhí)行s=1+2+3+4,輸出結(jié)果為s=10。
點擊加載更多評論>>