python基礎 迴圈結構程式設計(上)

2021-08-03 08:28:30 字數 2732 閱讀 4391

迴圈結構有以下幾個基本結構:while語句,for語句,break語句,continue語句,以及迴圈結構解決問題的辦法。

迴圈結構是一種重複執行的程式結構。實際應用中,經常會碰到一些需要重複執行的步驟。如級數求和、統計報表等。python提供了兩種基本的迴圈結構語句——while語句、for語句。

一、while語句

1.格式:

(1)while 條件表示式 :

迴圈體

(2)while 條件表示式 :

迴圈體

else:

語句 while語句條件表示式的值是布林型,表示式的值為「真」或者「假」決定了迴圈繼續或者停止。

while語句的執行過程是:每一次迴圈之前計算機先判斷條件表示式的值,如果其布林值為真,就執行迴圈體,如此反覆執行,直到條件表示式的值為布林假,就結束迴圈。如果while後面有else語句,結束迴圈之後就執行else語句。

ps:(1)while語句的語法與if語句類似,要使用縮進來分割子句。

(2)while語句的條件表示式不需要用括號括起來,表示式後面必須有冒號。

(3)python與其他大多數語言不同,在while迴圈中可以使用else語句,即構成了while-else語句迴圈結構。

while語句是條件迴圈語句,大多數情況下用於解決不確定迴圈次數的問題——即只有當某條件成立時,迴圈才會結束,否則迴圈將一直繼續迴圈下去。while語句也可用於解決確定迴圈次數的問題。使用while語句時,條件表示式的設定比較關鍵,表示式的正確與否決定了迴圈次數是否正確、迴圈是否能正常結束,從而避免程式進入死迴圈。

while語句還有乙個特殊的用途是設計無限迴圈的程式,在一些特定的場合,迴圈需要無限期地執行下去,知道迴圈被強行退出。

2.while語句解決不確定迴圈次數的問題

不確定迴圈次數的問題是指迴圈之前不可預知迴圈執行了多少次,迴圈何時結束是由while語句的條件表示式來決定。

例:從鍵盤輸入若干個數,求所有輸入正數之和。當輸入整數為負數時,結束該操作。

s=0

x=input("請輸入乙個整數:")

while x>=0:

s=s+x

x=input("請輸入乙個整數:")

print

"整數之和=",s

執行結果:

請輸入乙個整數:10

請輸入乙個整數:2

請輸入乙個整數:-5

整數之和=12

例:從鍵盤上輸入若干個字元,一邊輸入一邊輸出,當輸入「#」字元時終止該操作。

a=raw_input('請輸入字元,當輸入#時結束輸入操作:')

while

a != '#'

print "您輸入的字元是 ",a

a=raw_input('請輸入字元,當輸入#時結束輸入操作:')

else:

print '輸入結束'

執行結果:

請輸入字元,當輸入#時結束輸入操作:a

請輸入字元,當輸入#時結束輸入操作:b

請輸入字元,當輸入#時結束輸入操作:c

請輸入字元,當輸入#時結束輸入操作:#

輸入結束

3.while語句解決確定迴圈次數問題

確定迴圈次數的問題是指迴圈之前可以預知迴圈即將執行的次數。為了控制迴圈次數,通常在程式中設定乙個計數變數,每次迴圈,該變數進行自增或自減操作,當變數值自增到大於設定的上限值或者自減到小於設定的下限值時,迴圈自動結束。

i,s=1,0

while i<=100ty

s=s+i

i+=1

#python中不支援i++,++i

print

'1+2+3+...+100= ',s

執行結果:

1+2+3+…+100=5050

3.while語句用於無限迴圈

當while語句的條件表示式永遠為布林真時,迴圈將永遠不會結束,形成無限迴圈,也稱死迴圈。大多數迴圈結構設計都應避免進入死迴圈,但是在某些場合,有意設定的無限迴圈是非常有用的。例如,乙個手機程式將持續自動執行直到關機或者掉電,手機的主程式便是乙個無限迴圈的結構。

格式:

while

true:

迴圈體

此時條件表示式的值恒為真,迴圈不會自動結束。為了使得迴圈能夠結束,通常在迴圈體內巢狀if語句,判斷當某個特定的條件成立時,就執行break語句退出迴圈。

print

'請輸入若干字元,當輸入#時則結束該操作'

while

true:

a=raw_input('請輸入乙個字元:')

if a !='#':

print

'您輸入的字元是: ',a

else:

break

輸出結果:

請輸入若干字元,當輸入#時則結束該操作

請輸入乙個字元:a

您輸入的字元是:a

請輸入乙個字元:b

您輸入的字元是:b

請輸入乙個字元:#

4.while語句應用舉例

(1)級數求和

級數求和問題解決的關鍵是:觀察表示式中的相鄰兩項,找出規律,將規律轉化為若干通式。為了將複雜問題簡單化,通項將每一項的分子、分母、符號、求和等通式分開處理,這樣做的好處是利於查詢問題。

(2)資料處理問題

c 程式設計基礎 迴圈結構for

1 求小數的某一位數字 分數a b化為小數後,小數點後第n位數字是多少?輸入 三個正整數,a,b,n 0 a b 100,1 n 10000 相鄰兩個數用空格隔開 輸出 乙個數字 樣例輸入 1 2 1 樣例輸出 5 實現 include include using namespace std int...

c 程式設計基礎 迴圈結構while

1 級數求和 已知 sn 1 1 2 1 3 1 n 顯然對於任意乙個整數k,當n足夠大的時候,sn 大於k.現給出乙個整數k 1 k 15 要求計算出乙個最小的n,使得sn k 輸入 乙個整數k 1 k 15 輸出 乙個整數 樣例輸入 1樣例輸出 2 實現 include using namesp...

Python實驗四 迴圈結構程式設計

1.寫出下列程式的執行結果 i 1while i 1 if i 4 print i i 1break print i i 22.寫出下列程式的執行結果 sum j 1 while j 3 f 1for i in range 2 2 j 1 f i sum f j 1print sum sum 3.閱...