中文字幕av专区_日韩电影在线播放_精品国产精品久久一区免费式_av在线免费观看网站

溫馨提示×

溫馨提示×

您好,登錄后才能下訂單哦!

密碼登錄×
登錄注冊×
其他方式登錄
點擊 登錄注冊 即表示同意《億速云用戶服務條款》

C語言中分支和循環的實現形式有哪些

發布時間:2023-04-19 11:19:45 來源:億速云 閱讀:100 作者:iii 欄目:開發技術

本篇內容介紹了“C語言中分支和循環的實現形式有哪些”的有關知識,在實際案例的操作過程中,不少人都會遇到這樣的困境,接下來就讓小編帶領大家學習一下如何處理這些情況吧!希望大家仔細閱讀,能夠學有所成!

真假

C語言里,0表示假,非0表示真。

比如:-1為真。

1.if語句

if語句的特點是:

  • 實現分支效果。

  • 格式是:if(條件) {語句列表1} else {語句列表2}

  • 語句列表可以是1條或多條語句。

  • 如果條件為真,執行語句列表1,否則執行語句列表2。

  • 如果語句列表只有1條語句,則可以省略大括號。

  • else可以省略。

比如求2個數的較大值:

if (a > b)
{
    max = a;
}
else
{
    max = b;
}

由于語句列表如果只有1條語句,可以省略大括號,所以也可以這么寫:

if (a > b)
    max = a;
else
    max = b;

2.switch語句

switch語句的特點是:

實現分支效果。

格式是:

switch (整型常量表達式)
{
case 整型常量1:
    {語句列表1}
case 整型常量2:
    {語句列表2}
case 整型常量3:
    {語句列表3}
    // ...
default:
    {語句列表n}
}

語句列表表示1條或多條語句,外面的大括號可以省略。

“標簽”分為一堆case和default。

“整型常量表達式”的結果是幾,就會從case幾進去。

如果所有的case都進不去,就從default位置進去。

一旦“進去”,就會一直往下執行所有的代碼(此時會無視掉所有的“標簽”)。

執行時如果遇到break,就會跳出switch語句。

例子1:輸入幾,就打印星期幾。如果輸入的不是1~7,打印“輸入錯誤”。

int n = 0;
scanf("%d", &n);
switch(n)
{
case 1:
    printf("星期一\n");
    break;
case 2:
    printf("星期二\n");
    break;
    // ...
case 6:
    printf("星期六\n");
    break;
case 7:
    printf("星期天\n");
    break;
default:
    printf("輸入錯誤\n");
    break;
}

n是幾,就會從case幾進去,接著往下執行,遇到break就跳出switch語句。

注意一旦所有的case都匹配不上,就會走default。

3.while循環

while循環的特點是:

格式:while (條件) {語句列表}

如果條件為真,就會執行語句列表,執行完后繼續判斷條件是否為真,如果為真就繼續執行,以此類推。知道某一次判斷時條件為假,就跳出循環。

如果語句列表只有1條語句,則大括號可以省略。

如果遇到break,會直接跳出循環。

如果遇到continue,則會直接跳轉到循環的判斷部分。

例子:打印1~10。

int i = 1;
while (i <= 10)
{
    printf("%d ", i);
    ++i;
}

如果有break,就會直接跳出循環,比如:

int i = 1;
while (i <= 10)
{
    if (i == 5)
        break;
        
    printf("%d ", i);
    ++i;
}

上面的代碼中,當i為5時跳出循環,此時屏幕上只打印了1~4。

如果遇到continue,會直接跳轉到判斷部分。如:

int i = 1;
while (i <= 10)
{
    if (i == 5)
        continue;
        
    printf("%d ", i);
    ++i;
}

上面的代碼中,當i為5時,會直接跳轉到判斷部分,此時i仍然是5,又遇到continue,跳轉到判斷部分,由于++i一直沒有機會執行,所以無限循環了。

4.for循環

for循環的特點是:

格式:for (初始化語句; 判斷表達式; 調整語句) {語句列表}

語句列表可以是1條或多條語句,如果是1條語句,大括號可以省略。

首先執行初始化,接著判斷,如果為真,就執行語句列表,執行完后,調整,再判斷,如果為真,就執行語句列表,再調整,再判斷,直到某次判斷條件為假跳出循環。

遇到break直接跳出循環。

遇到continue,跳轉到調整語句。

例子:打印1~10。

for (int i=1; i<=10; ++i)
{
    printf("%d ", i);
}

如果遇到break,就直接跳出循環。如:

for (int i=1; i<=10; ++i)
{
    if (i == 5)
        break;
        
    printf("%d ", i);
}

上面的代碼中,當i為5時,跳出循環。屏幕上只打印1~4。

如果遇到continue,就直接跳轉到調整部分。如:

for (int i=1; i<=10; ++i)
{
    if (i == 5)
        continue;
        
    printf("%d ", i);
}

上面的代碼中,當i為5時,直接跳轉到++i,i變成6,后面正常執行。輸出結果是,屏幕上打印1~10但是不包括5。

5.do while循環

do while循環的特點是:

格式:do{語句列表}while(條件);

語句列表可以是1條或多條語句,如果只有1條語句,可以省略大括號。

首先執行語句列表,再判斷條件是否為真,如果為真就再次執行語句列表,執行完后再判斷,直到條件為假,跳出循環。

遇到break直接跳出循環。

遇到continue跳轉到判斷部分。

例子:打印1~10。

int i = 1;
do
{
    printf("%d ", i);
    ++i;
} while (i <= 10);

如果遇到break就會直接跳出循環。如:

int i = 1;
do
{
	if (i == 5)
		break;

	printf("%d ", i);
	++i;
} while (i <= 10);

上面的代碼中,由于當i為5時就跳出了循環,屏幕上只打印了1~4。

如果遇到continue就跳轉到判斷部分。如:

int i = 1;
do
{
	if (i == 5)
		continue;

	printf("%d ", i);
	++i;
} while (i <= 10);

當i為5時,跳轉到判斷部分,由于i仍然是5,會重新進入循環,此時又會跳轉到判斷部分,就無限循環了。

6.goto語句

goto語句會直接跳轉到標記處。注意,goto語句不能跨函數跳轉。

如:打印1~10。

int i = 1;
again:
printf("%d ", i);
++i;
if (i <= 10)
    goto again;

上面的代碼中,如果i沒有超過10,就會跳轉到again處。

“C語言中分支和循環的實現形式有哪些”的內容就介紹到這里了,感謝大家的閱讀。如果想了解更多行業相關的知識可以關注億速云網站,小編將為大家輸出更多高質量的實用文章!

向AI問一下細節

免責聲明:本站發布的內容(圖片、視頻和文字)以原創、轉載和分享為主,文章觀點不代表本網站立場,如果涉及侵權請聯系站長郵箱:is@yisu.com進行舉報,并提供相關證據,一經查實,將立刻刪除涉嫌侵權內容。

AI

临海市| 安化县| 宝丰县| 阿尔山市| 南京市| 广南县| 安吉县| 夏河县| 雷波县| 景德镇市| 汽车| 乐清市| 璧山县| 望都县| 南乐县| 府谷县| 卓尼县| 桃园市| 景泰县| 武宁县| 宁都县| 醴陵市| 桑植县| 卢氏县| 奉新县| 福清市| 朝阳县| 阿图什市| 沁源县| 炉霍县| 上高县| 武邑县| 白水县| 洛阳市| 和平区| 惠州市| 集安市| 潮安县| 平陆县| 蒙阴县| 连南|