Python大學教程(第2版) 第4章練習題_第1頁
Python大學教程(第2版) 第4章練習題_第2頁
Python大學教程(第2版) 第4章練習題_第3頁
Python大學教程(第2版) 第4章練習題_第4頁
Python大學教程(第2版) 第4章練習題_第5頁
已閱讀5頁,還剩2頁未讀, 繼續(xù)免費閱讀

下載本文檔

版權(quán)說明:本文檔由用戶提供并上傳,收益歸屬內(nèi)容提供方,若內(nèi)容存在侵權(quán),請進行舉報或認領(lǐng)

文檔簡介

選擇題:以下幾段漢諾塔代碼,哪段是正確的(a)A.defhanoi(n,fromTower,auxTower,toTower):

ifn==1:#遞歸邊界條件,一步移動

print("Movedisk",n,"from",fromTower,"to",toTower)

else:

hanoi(n-1,fromTower,toTower,auxTower)#第一步,遞歸調(diào)用

hanoi(n-1,auxTower,fromTower,toTower)#第三步,遞歸調(diào)用 defmain():

n=int(input("Pleaseinputnumberofdisks:"))

print("ThesolutionoftowerofHanoiis:")

hanoi(n,'A','B','C') main()B.defhanoi(n,fromTower,auxTower,toTower):

ifn==1:#遞歸邊界條件,一步移動

print("Movedisk",n,"from",fromTower,"to",toTower)

else:

hanoi(n-1,fromTower,toTower,auxTower)#第一步,遞歸調(diào)用

hanoi(n-1,auxTower,fromTower,toTower)#第三步,遞歸調(diào)用 defmain():

n=int(input("Pleaseinputnumberofdisks:"))

print("ThesolutionoftowerofHanoiis:")

hanoi(n,'A','C','D') main()C.defhanoi(n,fromTower,auxTower,toTower):

ifn==1:#遞歸邊界條件,一步移動

print("Movedisk",n,"from",fromTower,"to",toTower)

else:

hanoi(n-1,fromTower,toTower,auxTower)#第一步,遞歸調(diào)用

hanoi(n-1,auxTower,fromTower,toTower)#第三步,遞歸調(diào)用 defmain():

n=int(input("Pleaseinputnumberofdisks:"))

print("ThesolutionoftowerofHanoiis:")

main(n,'A','B','C') main()D.defhanoi(n,fromTower,auxTower,toTower):

ifn==1:#遞歸邊界條件,一步移動

print("Movedisk",n,"from",fromTower,"to",toTower)

else:

main(n-1,fromTower,toTower,auxTower)#第一步,遞歸調(diào)用

main(n-1,auxTower,fromTower,toTower)#第三步,遞歸調(diào)用 defmain():

n=int(input("Pleaseinputnumberofdisks:"))

print("ThesolutionoftowerofHanoiis:")

hanoi(n,'A','B','C') main()以下代碼輸出的是什么(a)a.NameErrorb.2c.TypeErrord.AttributeError3.請問繪制一條(1,1)到(2,2)的直線段需要用到以下哪段代碼()A.importturtle

defdrawLine(x1,y1,x2,y2):

turtle.penup() turtle.goto(x1,y1) turtle.pendown()

turtle.goto(x2,y2)B.importturtledefdrawLine(x1,y1,x2,y2):

turtle.penup() turtle.goto(x1,y1) turtle.pendown()

turtle.circle(x2,y2)C.importturtle

defdrawLine(x1,y1,x2,y2):

turtle.penup() turtle.goto(x1,y1) turtle.pendown()

turtle.dot(x2,y2)D.importturtle

defdrawLine(x1,y1,x2,y2):

turtle.penup() turtle.goto(x1,y1) turtle.pendown()

turtle.line(x2,y2)請問這段代碼輸出是什么:()deffunc1():print("Thisisouterfunc")deffunc2():print("Thisisinnerfunc")func2()func1()A.ThisisouterfuncThisisinnerfuncB.ThisisouterfuncC.ThisisouterfuncThisisinnerfuncThisisouterfuncThisisinnerfuncD.ThisisouterfuncThisisinnerfuncThisisouterfunc若輸入為2,1,則以下函數(shù)的返回值為?1

defsort2(a,b):#函數(shù)按升序返回a、b兩個值2

ifa>b:3

returnb,a4

else:5

returna,bA:1,2B:2,1C:1,1D:2,2若輸入為1,2,3,5,7,則以下函數(shù)的返回值為:defsum(*p):res=0foriinp:res+=ireturnresA:6B:15C:18D:0判斷題:1.lambda函數(shù)是否被用于循環(huán)()2.生成器返回值依然需要用return實現(xiàn)()3.漢諾塔可以使用for循環(huán)實現(xiàn)()4.Python支持函數(shù)返回多個值()5.函數(shù)內(nèi)部變量的作用域可以延伸到函數(shù)體外()填空題:1.定義函數(shù)需要函數(shù)頭,函數(shù)名,形參以及()2.基本的參數(shù)值傳遞有兩種方式分別是:()3.函數(shù)調(diào)用時沒有傳入沒寫參數(shù)值時,()會被傳遞給實參。4.同時賦值和函數(shù)返回多個值的語法都是使用了()的特性5.lambda函數(shù)與()函數(shù)功能相同。簡答題:封裝函數(shù)有什么好處?全局變量和局部變量有什么區(qū)別?請簡述。請簡述global語句的作用python中可變的對象包括,不可變的對象包括?Python中采用什么機制傳遞參數(shù)?答案:選擇題:1A2A3A4B5C判斷題:TRUETRUETRUETRUEFALSE填空題:1.函數(shù)體2.值傳遞和引用傳遞3.默認參數(shù)4.元組5.If簡答題:1.函數(shù)的實現(xiàn)細節(jié)被封裝在函數(shù)內(nèi),并對調(diào)用者隱藏,這被稱為信息隱藏或封裝。如果要修改或優(yōu)化函數(shù)的實現(xiàn),只要函數(shù)原型(函數(shù)名,參數(shù)個數(shù)及作用,返回值個數(shù)及作用等)不改變,用戶程序?qū)瘮?shù)的調(diào)用就不會受影響。將功能封裝為函數(shù)能夠?qū)⒁粋€大問題分解為更小的、更易于解決的多個小問題。每個小問題都可以用函數(shù)實現(xiàn)。這種方法可以使程序易于編寫、重用、調(diào)試、測試、修改和維護。2.在函數(shù)體內(nèi)部定義的變量叫做局部變量,在函數(shù)體外部定義的變量叫做全局變量。局部變量只能在定義的那個函數(shù)體的內(nèi)部進行使用,而全局變量在所有函數(shù)內(nèi)部都可以使用。.局部變量的生命周期為該變量創(chuàng)建到該函數(shù)體結(jié)束。全局變量可以貫穿整個程序。3.在Python中,global

關(guān)鍵字允許你修改當前范圍之外的變量。它用于創(chuàng)建全局變量并在本地上下文中更改變量。不使用global和nonlocal語句在函數(shù)內(nèi)部對全局變量的訪問限于讀取以及自運算(如“+=”、“*=”等運算),而不可能使用賦值運算符進行直接賦值(會被解釋為創(chuàng)建

溫馨提示

  • 1. 本站所有資源如無特殊說明,都需要本地電腦安裝OFFICE2007和PDF閱讀器。圖紙軟件為CAD,CAXA,PROE,UG,SolidWorks等.壓縮文件請下載最新的WinRAR軟件解壓。
  • 2. 本站的文檔不包含任何第三方提供的附件圖紙等,如果需要附件,請聯(lián)系上傳者。文件的所有權(quán)益歸上傳用戶所有。
  • 3. 本站RAR壓縮包中若帶圖紙,網(wǎng)頁內(nèi)容里面會有圖紙預覽,若沒有圖紙預覽就沒有圖紙。
  • 4. 未經(jīng)權(quán)益所有人同意不得將文件中的內(nèi)容挪作商業(yè)或盈利用途。
  • 5. 人人文庫網(wǎng)僅提供信息存儲空間,僅對用戶上傳內(nèi)容的表現(xiàn)方式做保護處理,對用戶上傳分享的文檔內(nèi)容本身不做任何修改或編輯,并不能對任何下載內(nèi)容負責。
  • 6. 下載文件中如有侵權(quán)或不適當內(nèi)容,請與我們聯(lián)系,我們立即糾正。
  • 7. 本站不保證下載資源的準確性、安全性和完整性, 同時也不承擔用戶因使用這些下載資源對自己和他人造成任何形式的傷害或損失。

評論

0/150

提交評論