Objective C語言控制語句

2022-09-01 03:18:11 字數 2919 閱讀 4226

• 分支語句

• 迴圈語句

• 跳轉語句

objective-c中的控制語句有以下幾類:

• 分支語句:if-else, switch

• 迴圈語句:while, do-while, for

• 與程式轉移有關的跳轉語句:break, continue, goto

分支語句提供了一種控制機制,使得程式的執行可以跳過某些語句不執行,而轉去執行特定的語句。

1.條件語句 if-else

2.多分支語句 switch

條件語句 if-else,基本語法形式如下,其中「」中的部分可以省略。

if (boolean-expression)

statement1;

[else if (boolean-expression) statement2;]

[else statement3;]

int number1 = 0

;int number2 = 1

;int max = 0

;if (number1 >number2)

else

//列印最大值max

nslog(@"

the maximum is %i

", max);

多分支語句 switch它的語法形式如下,其中「」中的部分可以省略。

switch

(expression)

int score = 0

;scanf("%i

", &score);

int scoreval = score / 10

;char reschar = '';

switch

(scoreval)

nslog(

@"你的分數是:%c

", reschar);

使用switch語句一定要注意的是:表示式expression的返回值型別必須是整數或能夠自動轉換成整數的型別都可以,因此可以是_bool、char、short int、列舉型別、int、long int、longlong以及它們的無符號型別等。但不能是float和double等浮點型別。case子句中的值valuen必須是常量,而且所有case子句中的值應是不同的。default子句是可選的。break語句用來在執行完乙個case分支後,使程式跳出switch語句,即終止switch語句的執行。在一些特殊情況下,多個不同的case值要執行一組相同的操作,這時可以不用break。

迴圈語句的作用是反覆執行一段**,直到滿足終止迴圈的條件為止。objective-c語言中提供的迴圈語句有:

• while語句

• do-while語句

• for語句

• while語句,它的語法形式如下,其中「」中的部分可以省略。

[initialization]

while (termination)

• 下面**是計算1000以內的水仙花數。

int i = 100

;int

r, s, t;

r = 0;s = 0;t = 0

;while (i < 1000

) i = i + 1

;}

do-while語句,它的語法形式如下,其中「」中的部分可以省略。

[initialization]

do while (termination);

• 計算1000以內的水仙花數

int i = 100

;int

r, s, t;

r = 0;s = 0;t = 0;do

i = i + 1;}

while (i < 1000);

for語句,語法形式如下:

for (initialization; termination; iteration)

下面**是計算0~8平方、立方數並輸出:

int i = 8

;int

r, s;

r = 0

;s = 0

;for (int j = 0; j <= i; j++)

在for迴圈語句的「()」內部一般有3條語句,initialization初始化語句,termination終止條件語句,iteration迭代語句,其中這3條語句都是可以省略的。例如把j的初始化放在迴圈體的外面,**如下:

int j = 0

;for (; j <= i; j++)

與程式轉移有關的跳轉有break, continue, goto語句,break和continue都主要與迴圈有,goto語句在c中就有,它是無條件跳轉可以完全替代break和continue,一般要慎用。

break語句在switch中使用過,用來終止switch語句的執行。break語句還可以用於迴圈體中,終止當前的迴圈,並緊跟該迴圈塊的第一條語句處執行。例如下面的**片段:

for (int i = 0; i < 10; i++)

nslog(@" game over!");

continue語句用來結束本次迴圈,跳過迴圈體中下面尚未執行的語句,接著進行終止條件的判斷,以決定是否繼續迴圈。對於for語句,在進行終止條件的判斷前,還要先執行迭代語句。例如下面的**片段:

for (int i = 0; i < 100; i++)

goto語句是無條件跳轉,可以完全替代break和continue。如果是巢狀迴圈,可以使用goto語句指定標籤,來改變程式的流程,例如下面的**片段。

for (int j = 0; j < 10; j++)

}label:

nslog(@" game over!");

在內迴圈中使用break和continue都只能跳出內迴圈,goto語句沒有這個限制,label:是標籤定義,goto語句後面要跟有標籤。

Objective c 訪問控制

在objective c中定義類時,也可以使用類似於c 中public private來修飾成員變數,如下 intte ce test nsobject protected 用此指令修飾的例項變數可以被該類和任何子類定的方法直接訪問,這是預設情況。private 用此指令修飾的例項變數可以被定義在該...

Objective c 訪問控制

在objective c中定義類時,也可以使用類似於c 中public private來修飾成員變數,如下 cpp view plain copy intte ce test nsobject protected 用此指令修飾的例項變數可以被該類和任何子類定的方法直接訪問,這是預設情況。privat...

Objective C控制語句

objective c控制語句有以下三類 分支語句 if else,switch 迴圈語句 while,do while,for 與程式轉移相關的跳轉語句 break,continue,goto.分支語句 分支語句提供了一種控制機制,使得程式的執行可以跳過某些語句不執行,而轉去執行特定的語句。1.條...