迴圈的執行形式 while 布林表示式 do 語句
例如:k:=10;
while k>0 do
begin
writeln (k);
k:=k-1
end;
其中 (1)while 和do是pascal保留關鍵字,是while迴圈語句的組成部分。
(2)保留關鍵字do後面的「語法」只能是一條語句,稱為「迴圈體」;如果迴圈體中需要包含多個語句則應該如上例所示,採用一條復合語句。
迴圈的執行功能當執行到while語句時
(1)求出布林表示式的值
(2)若布林表示式的值為真,則執行迴圈體內的語句;若為「假」,執行步驟4
(3)重複步驟1和2
(4)迴圈結束,執行迴圈後面的語句。
5.3 repeat-until語句
1.repeat-until型別的迴圈的執行形式
repeat
語句1語句2
……語句n
until 布林表示式
例如:以下迴圈求n=1+2+3+……+100
n:=0;t:=i;
repeat
n:=n+t; t:=t+1;
until t>100;
其中(1)repeat和until是pascal保留關鍵字。
(2)在repeat和until之間的語句構成迴圈。在它們之間可以有任意多個語句,這一點和for,while迴圈不同,for,while迴圈體在語法上只允許一條語句。
2.repeat-until迴圈的執行功能
(1)遇到repeat語句後,即進入迴圈體,順序執行迴圈體內的語句。
(2)遇到until語句後,求布林表示式的值。若值為假,則返回步驟1;若為「真」,執行步驟3
(3)迴圈結束,執行until後面的下一條語句。
思考與練習:
1、計算下列式子的值:
(1)1+2+……+100
(2)1+3+5+……+97+99
2、輸入乙個四位數,求它各位上數字的和。
3、求水仙花數。所謂水仙花數,是指乙個三位數abc,如果滿足a^3+b^3+c^3=abc,則abc是水仙花數。
4、宰相的麥子:相傳古印度宰相達依爾,是西洋棋的發明者。有一次,國王因為他的貢獻要獎勵他,問他想要什麼。
達依爾說:「只要在西洋棋棋盤上(共64格)擺上這麼些麥子就行了:第一格一粒,第二格兩粒,……,後面一格的麥子總是前一格麥子數的兩倍,擺滿整個棋盤,我就感恩不盡了。
」國王一想,這還不容易,剛想答應,如果你這時在國王旁邊站著,你會不會勸國王別答應,為什麼?
5、列印下列圖案:(輸入n值來控制圖案的規模,下列圖案均以n=3為例)
6、輸入一整數a,判斷它是否質數。(提示:若從2到a的平方根的範圍內,沒有乙個數能整除a,則a是質數。)
7、求兩個數的最小公倍數和最大公約數。(提示:公約數一定小於等於兩數中的小數,且能整除兩數中的大數。公倍數一定大於等於兩數中的大數,且是大數的倍數,又能給兩數中的小數整除。)
8、編寫乙個解碼程式,把乙個英語句子譯成數字**。解碼規則是以數字1代替字母a,數字2代替字母b,……,26代替字母z,如遇空格則列印乙個星號『*』,英文句子以『.『結束。
9、「百錢買百雞」是我國古代的著名數學題。題目這樣描述:3文錢可以買1只公雞,2文錢可以買乙隻母雞,1文錢可以買3只小雞。
用100文錢買100隻雞,那麼各有公雞、母雞、小雞多少只?與之相似,有"雞兔同籠"問題。
10、輸入乙個正整數n,把它分解成質因子相乘的形式。
如:36=1 x 2 x 2 x 3 x 3; 19=1 x 19
(提示:設因子為i,從2開始到n,讓n重複被i除,如果能整除,則用商取代n,i為乙個因子;如果不能整除,再將i增大,繼續以上操作,直到i等於n。)
第五章迴圈結構
一般形式 break 用於迴圈語句和switch語句中,作用是跳出它所在的迴圈語句或switch 語句。在多層迴圈中,乙個break語句只向外跳一層。break語句用在for while do while等迴圈體中時,常與if條件語句一起使用,用來加速迴圈,其一般形式是 while 表示式1 2 c...
第五章選擇分支結構程式設計
選擇結構是三種基本結構 順序 選擇 迴圈 之一。作用是根據所指定的條件是否滿足,決定從給定的兩組操作選擇其中的一種。c語言中的選擇結構是用if語句實現的。if語句的常用的形式是 if 關係 邏輯表示式 語句1 else 語句2 例5 1 用c語言實現圖示的分段函式。數學上描述此分段函式 1,x 0 ...
第五章分支結構
一 選擇題 1 經過以下語句定義後,表示式z x y?x y 的值為 int x 1,y 2,z 3 a.2 b.3 c.6 d.5 2 能正確表示邏輯關係 a 10或a 0 的c 語言表示式是 a.a 10 or a 0 b.a 0 a 10 c.a 10 a 0 d.a 10 a 0 3.已知i...