P6628 [省選聯考 2020 B 卷] 丁香之路 尤拉路+最小生成樹
阿新 • • 發佈:2020-11-17
流程控制
1.if語句
if()
{
}
else if()
{
}
else
{
}
如果沒有花括號
else與其最近的沒有配對的if配對
2.switch語句
switch可以表示對個分支
switch case需要注意的幾個點
1.case後面只能跟常量表達式
2.case後面的常量表達式的值只能是唯一
3.要加break,如果沒有加break,會從當前語句一直執行到switch語句結束為止
4.defalut語句,表示case都沒有匹配上,那麼執行default語句,如果有case匹配上,那麼執行case語句
總結
switch語句用來表示多分支,通過case後面的常量表達式來進行分支的匹配,如果都沒有匹配上,則執行default語句,如果沒有default語句,那麼switch直接結束
int day = 8;
switch (day)
{
case 1:printf("週一");break;
case 2:printf("週二");break;
case 3:printf("週三");break;
case 4:printf("週四");break;
case 5:printf("週五");break;
case 6:printf("週六");break;
case 7:printf("周天");break;
default:printf("不知道是周幾"); break;
}
while (1);
return 0;
switch語句是可以轉為if語句的
而當if語句表示範圍的時候是不能轉為switch語句的
for語句
for(表示式1;表示式2;表示式3)
{
迴圈主體
}
表示式123都可以省略,;不能省略
注意死迴圈
while迴圈
只有一個表示式,不能省略
do while語句
do
{
}while(表示式);
break——結束當前迴圈,並跳出迴圈
continue——結束本次迴圈,並跳到表示式3
for (int i = 0; i < 10; i++) { if (i == 5) { continue; } printf("%d\n", i); } for (int k = 0; k < 10; k++) { if (k == 5) { break; } printf("%d\n", k); } while (1); return 0;
以上兩個跳轉語句只能跳出一層迴圈
for (int i = 1; i < 5; i++)
{
for (int k = 1; k < 5; k++)
{
if (k == 3)
{
continue;
}
printf("%d\n", k*i);
}
printf("\n");
}
for (int i = 1; i < 5; i++)
{
for (int k = 1; k < 5; k++)
{
if (k == 3)
{
break;
}
printf("%d\n", k*i);
}
printf("\n");
}
死迴圈——goto跳轉語句
int a = 0;
LOGO:
a++;
printf("%d\n", a);
goto LOGO;
//程式碼的效果是一個死迴圈