資源簡介 必修1 數(shù)據(jù)與計算第四章 程序設(shè)計基礎(chǔ)4.1 程序設(shè)計語言的基礎(chǔ)知識4.1.1 Python的常量和變量常量:常量是指在程序運行過程中其值始終不發(fā)生變化的量,通常是固定的數(shù)值或字符串,在程序中可以直接使用。變量:變量是指在程序運行過程中其值可以發(fā)生變化的量,變量由變量的標識符(變量名)和變量的內(nèi)容(賦值)兩部分組成。變量的命名:標識符由字母(A-Z,a-z)、數(shù)字(0-9)、下劃線( _ )組成。 注意:第一個字符必須是字母或下劃線,不能是數(shù)字,如a1、_a;同時,字母區(qū)分大小寫,如X和x、sum和Sum都是不同的標識符。變量的賦值:x=3表示將“=”右邊的值賦給左邊的變量。4.1.2 Python的數(shù)據(jù)類型(1) Python支持以下三種不同的數(shù)值類型:整型(int):通常被稱為整型或整數(shù),是不帶小數(shù)的數(shù)。浮點型(float):浮點型由整數(shù)部分與小數(shù)部分組成,如2.5。復數(shù)(complex):復數(shù)由實數(shù)部分和虛數(shù)部分構(gòu)成,可以用a+bj或者complex(a,b)表示,復數(shù)的實部a和虛部b都是浮點型。(2)String(字符串):字符串是以單引號或雙引號括起來的文本,如‘a(chǎn)bc’、"xyz"等。字符串的索引從0開始,-1 為從末尾開始的位置。索引號寫在方括號[ ]里,以確定數(shù)據(jù)位置。(3) List(列表):列表是寫在方括號“[ ]”之間、用逗號分隔開的元素列表,列表的數(shù)據(jù)項不需要具有相同的類型。與字符串的索引一樣,列表索引從0開始。(4) Tuple(元組):元組與列表相似,在Python中,寫在小括號()之間,并用逗號來分隔元素的就是元組。例如tuple1=(200,50)。注意:元組的元素不能修改。(5) Sets(集合):集合是一個無序不重復元素的序列,基本功能是進行成員關(guān)系測試和刪除重復元素。可以使用大括號{ }或者set( )函數(shù)創(chuàng)建集合。(6) Dictionary(字典):字典是無序的對象集合,用{ }標識,它是一個無序的“鍵(key):值(value)”對集合,在同一個字典中,鍵必須是唯一的。4.1.3 Python的運算符與表達式(1)算術(shù)運算符與算術(shù)表達式算術(shù)運算符 含義 例子 結(jié)果+ 加 5+2 7- 減 5-2 3* 乘 5*2 10/ 除 5/2 2.5// 整除 5//2 2% 求余 5%2 1** 冪運算 5**2 25(2)邏輯運算符與邏輯表達式邏輯運算符 邏輯表達式 描述 示例(a=0;b=1;c=2)and x and y x為false,則返回false,否則返回y的計算值 (a and b)返回0 (c and b)返回1or x or y x為true,則返回x的值,否則返回y的計算值 (a or b)返回1 (c or b)返回2not not x x為true返回false; x為false返回true not(a and b)返回true關(guān)系運算符與關(guān)系表達式由關(guān)系運算符連接而成的表達式稱為關(guān)系表達式。關(guān)系表達式的值:True、False,對應(yīng)整數(shù)1和0。關(guān)系運算符 含義 示例 結(jié)果> 大于 4>3 true>= 大于等于 3>=3 true< 小于 4<3 false<= 小于等于 4<=3 true== 等于 4==3 fasle!= 不等于 4!=3 true賦值運算符與賦值表達式對變量的賦值通過賦值運算符“=”來完成。賦值號不是等號,具有方向性,由右邊賦給左邊的變量。除了“=”外,還有以下賦值運算符。賦值運算符 含義 示例= 直接賦值 x=y+= 加法賦值 x+=y 相當于x=x+y-= 減法賦值 x-=y 相當于x=x-y*= 乘法賦值 x*=y 相當于x=x*y/= 除法賦值 x/=y 相當于x=x/y//= 整除賦值 x//=y 相當于x=x//y%= 求余賦值 x%=y 相當于x=x%y**= 指數(shù)冪賦值 x**=y 相當于x=x**y成員運算符Python中用成員運算符判斷序列中是否有某個成員。成員運算符 描述 示例in x in y,如果x是序列y的成員,則計算結(jié)果為true,否則為false 3 in[1,2,3,4]結(jié)果為true 5 in[1,2,3,4]結(jié)果為falsenot in x not in y,如果x不是序列y的成員,則計算結(jié)果為true,否則為false 3 not in[1,2,3,4]結(jié)果為false 5 not in[1,2,3,4]結(jié)果為true運算符的優(yōu)先級當一個表達式中有多種運算時,運算的順序是根據(jù)運算符的優(yōu)先級由高到低進行運算。同級運算則按從左到右的順序進行。4.1.4 Python的函數(shù)4.2 順序結(jié)構(gòu)4.2.1 數(shù)據(jù)的輸入格式:<變量>=input(‘提示信息:’)input( )函數(shù)的返回結(jié)果都是字符串,如果需要可將其轉(zhuǎn)換為相應(yīng)的類型再處理。4.2.2 數(shù)據(jù)的輸出格式:print(object)object是要輸出的對象,可以是常量,變量或表達式4.2.3 順序結(jié)構(gòu)的應(yīng)用順序結(jié)構(gòu)是最常用、最簡單的程序結(jié)構(gòu),其語句執(zhí)行順序是自上而下依次執(zhí)行的。4.3 選擇結(jié)構(gòu)4.3.1 單分支if語句格式:if(條件表達式):語句A注意條件表達式后面有冒號,語句A要有縮進,語句A如果是多個語句組成的復合語句時,所有語句嚴格遵循相同的縮進。4.3.2 雙分支if語句格式:if(條件表達式):語句Aelse:語句B注意:條件表達式后面有冒號,語句A要有縮進,語句A和語句B如果是多個語句組成的復合語句時,所有語句嚴格遵循相同的縮進。4.3.3 多分支if...elif...else語句格式:if(表達式1):語句1elif:(表達式2):語句2......elif:(表達式N):語句Nelse:語句N+14.4 循環(huán)結(jié)構(gòu)4.4.1 for循環(huán)語句格式:for 循環(huán)變量 in 列表:語句或語句組1.直接羅列的方式舉例:for value in [1,2,3,4,5]:2.使用range( )函數(shù)range(start,stop,step)計數(shù)從start開始(如果省略默認是0)到stop結(jié)束(但不包括stop),step表示步長,即間隔,(如果省略默認為1),step也可以是負數(shù)。4.4.2 while循環(huán)語句格式:while(表達式):語句或語句組while也叫當型循環(huán),表達式是一個關(guān)系表達式或邏輯表達式,值為真(True)或假(False)whlie循環(huán)的循環(huán)體中必須有改變條件表達式值的語句,否則將成為死循環(huán)。4.4.3 循環(huán)嵌套循環(huán)嵌套指的是某一種循環(huán)語句中包含著自身或其他循環(huán)語句,for循環(huán)或while循環(huán)之間可以相互嵌套。第四章 程序設(shè)計基礎(chǔ) 學業(yè)測試一、單選題1.在Python中,元素是無序不重復的是( )。A.列表 B.元組 C.集合 D.字符串【答案】:C【解析】:見教材P69,集合是一個無序不重復元素的序列。2.在以下運算符中,優(yōu)先級最低的運算符是( )。A.* B.!= C.+ D.=【答案】:D【解析】:見P71表4-7運算符的優(yōu)先級,指數(shù)→乘除→算術(shù)→關(guān)系→賦值→標識→成員→邏輯。3.有以下程序段:sum=1for i in range(1,5):sum=sum*iprint(sum,i)程序的運行結(jié)果為( )。A.24 5 B.120 5 C.24 4 D.120 4【答案】:C【解析】:見教材P86可知,range(1,5)是生成一個1-4的整數(shù),不包括5,所以本題為計算4的階乘,結(jié)果為C。4.在程序設(shè)計中,數(shù)據(jù)的( )是最基本的操作之一。A.輸入 B.輸出 C.輸入輸出 D.計算【答案】:C【解析】:見教材P73原文:數(shù)據(jù)的輸入輸出是最基本的操作之一。5.在Python語言中,數(shù)據(jù)的輸入是通過( )來實現(xiàn)的。A.input( )函數(shù) B. print( )函數(shù) C.output()函數(shù) D.abs()函數(shù)【答案】:A【解析】:見教材P73原文,input()函數(shù)實現(xiàn)數(shù)據(jù)輸入。6.在Python語言中,數(shù)據(jù)的輸出是通過( )來實現(xiàn)的。A.input()函數(shù) B.print()函數(shù) C.output()函數(shù) D.abs()函數(shù)【答案】:B【解析】:見教材P74原文,print()函數(shù)實現(xiàn)數(shù)據(jù)輸入。7.順序控制結(jié)構(gòu)的程序執(zhí)行過程是( )依次執(zhí)行的。A.自上而下 B.自下而上 C.自外到內(nèi) D.由內(nèi)到外【答案】:A【解析】:見教材P74原文,順序結(jié)構(gòu)的程序是自上而下依次執(zhí)行的。8.input( )函數(shù)的返回結(jié)果是( )。A.數(shù)值型 B.集合 C.列表 D.字符串【答案】:D【解析】:見教材P73原文,input()函數(shù)的返回結(jié)果都是字符串。9.算術(shù)運算符、賦值運算符和關(guān)系運算符的運算優(yōu)先級按從高到低依次為( )。A.算術(shù)運算、賦值運算、關(guān)系運算 B.算術(shù)運算、關(guān)系運算、賦值運算C.關(guān)系運算、賦值運算、算術(shù)運算 D.關(guān)系運算、算術(shù)運算、賦值運算【答案】:B【解析】:見P71表4-7運算符的優(yōu)先級,算術(shù)→關(guān)系→賦值。10.請判斷如下程序的運行結(jié)果是將三個數(shù)( )。print(”請輸入3個數(shù):")x=int(input("x=”))y=int(input("y="))z=int(input("z="))temp=0if x>y:temp=yy=xx=tempif x>z:temp=zz=xx=tempif y>z:temp=zz=yy=tempprint("這3個數(shù)新序列是:",x,y,z)A.從小到大排序 B.從大到小排序C.都變成最大的數(shù) D.都變成最小的數(shù)【答案】:A【解析】:該程序第一個if使x<=y,第二個if使x<=z,第三個if使y<=z,最后x<=y<=z,所以選A。11.在Python語言中,通過關(guān)鍵字( )來定義函數(shù)。A. def B.function C. fun D.procedure【答案】:A【解析】:見教材P94頁拓展,函數(shù)的定義與調(diào)用可知,Python采用def定義函數(shù)。12.在Python 語言中,求數(shù)組長度用( )函數(shù)。A.size B. len C. length D.str【答案】:B【解析】:見教材P71,數(shù)組長度用len()函數(shù)求解。13.在Python語言中,如果a是一個長度為10的數(shù)組,請問a[-1]( )。A.表示數(shù)組a的第1個元素 B.表示數(shù)組a的第9個元素C.表示數(shù)組a的最后1個元素 D.會發(fā)生下標越界,出現(xiàn)錯誤【答案】:C【解析】:見教材P68,數(shù)組的下標索引同字符串,從左至右0開始,從右以-1開始。14.在Python 語言中,如果a是一個整數(shù),請問以下表達式恒為False的是( )。A.a%5==0 B. a>3 and a<4 C. a>3 or a<3 D.a==True【答案】:B【解析】:A項%為求余數(shù)函數(shù),a整除5時為True,不能整除5時為False,不能恒為False;B項a為整數(shù)既大于3又小于4,是不可能存在的,所以恒為False;C項是有可能為真的;D項非0整數(shù)都為真。15.在Python語言中,如果a是一個集合,以下哪個語句可以添加一個元素 ( )A. a.append(1) B. a.extend(1) C.a[1]=3 D.a.add(1)【答案】:D【解析】:給數(shù)組添加元素的方法是append,給集合添加元素的方法是add,即a.add(元素值)。二、思考題16.編寫函數(shù),接收一個正偶數(shù)為參數(shù),輸出兩個素數(shù),并且這兩個素數(shù)之和等于原來的正偶數(shù)。如果存在多組符合條件的素數(shù),則全部輸出。【答案】:import mathdef IsPrime(n): #判斷是否為素數(shù)flag=Truefor i in range(2,int(math.sqrt(n))+1):if n%i==0:flag=Falsebreakreturn flagdef demo(n):if n>0 and n%2==0: #判斷n為大于0的偶數(shù)#利用二分法找出小于n/2的素數(shù)for i in range(3,int(n/2)+1):if IsPrime(i) and IsPrime(n-i):print(n,'=',i,'+',n-i)else:print("輸入數(shù)據(jù)不符合要求,請輸入正偶數(shù)!")a=int(input("請輸入一個正偶數(shù):"))demo(a)【解析】:見答案程序。運行結(jié)果示例:請輸入一個正偶數(shù):3636 = 5 + 3136 = 7 + 2936 = 13 + 2336 = 17 + 1917.反向輸出一個三位數(shù)。將一個三位數(shù)反向輸出,例如輸入358,反向輸出853。輸入:一個三位數(shù)n;輸出:反向輸出n樣例輸入:100,樣例輸出:001請問如何保證輸出結(jié)果中001前面的“0”不丟失 請編程序解決此問題。【答案】:n=int(input("請輸入一個三位整數(shù):"))x = n%10 #取出個位數(shù)y = (int(n/10))%10 #取出十位數(shù)z = int(n/100) #取出百位數(shù)print("n的反向輸入結(jié)果為:",x*100+y*10+z)【解析】:見答案三、情境題18.選手得分問題。學校要舉行辯論賽,請寫一個程序計算選手的最終得分,計算規(guī)則為去掉最高分和最低分,然后計算平均分。分行完成輸入多個評委的打分。輸入的分數(shù)保證是0~100之間的整數(shù)。例如:輸入:6(6個評委,以下6個數(shù)分別是6個評委的評分)928898657682輸出:84.5(選手的最終得分)【答案】:from numpy import *print('請先輸入評委人數(shù),再依次輸入評委的分數(shù),分數(shù)為0~100的整數(shù)。')n=int(input('輸入評委人數(shù):'))score_all=[]for i in range(1,n+1) :score=int(input('評分:'))score_all.append(score)average=(sum(score_all)-max(score_all)-min(score_all))/( n-2 )print('選手的平均得分為:', '%.2f'%average )【解析】:見答案19.蘋果和蟲子問題。你買了一箱n個蘋果,很不幸的是買完時箱子里混進了一條蟲子。蟲子每x小時能吃掉一個蘋果,假設(shè)蟲子在吃完一個蘋果之前不會吃另一個,那么經(jīng)過y小時你還有多少個完整的蘋果 輸入:輸入僅三行,包括n,x和y(均為整數(shù))輸出:輸出也僅一行,剩下的蘋果個數(shù)樣例輸入:1049樣例輸出:7【答案】:n=int(input("請輸入蘋果數(shù)n:"))x=int(input("請輸入多少小時能吃掉一個蘋果的值x:"))y=int(input("經(jīng)過的總時間y:"))t=y//xn=n-tif y!=x*t:n=n-1else:n=nprint("剩余蘋果數(shù):",n)【解析】:見答案20.百錢買百雞問題。百錢買百雞問題記載于中國古代5-6世紀成書的《張邱建算經(jīng)》中的一道經(jīng)典不定方程組的問題,其重要之處在于開創(chuàng)“一問多答”的先例,這是過去中國古算書中所沒有的。其問題是這樣的:今有雞翁一,值錢伍;雞母一,值錢三;雞雛三,值錢一。凡百錢買雞百只,問雞翁、母、雛各幾何 請編程求解這個問題。提示:利用循環(huán)結(jié)構(gòu)進行問題求解,其中三種雞數(shù)量x,y,z同時符合如下兩個條件:x+y+z=100,5x+3y+z/3=100。【答案】:for x in range(1,21):for y in range(1,34):for z in range(1,101):if x+y+z==100 and 5*x+3*y+z/3==100:print('雞公、雞母、小雞的數(shù)量分別為:',x,y,z)【解析】:見答案第 15 頁 共 18 頁必修1 數(shù)據(jù)與計算第四章 程序設(shè)計基礎(chǔ)4.1 程序設(shè)計語言的基礎(chǔ)知識4.1.1 Python的常量和變量常量:常量是指在程序運行過程中其值始終不發(fā)生變化的量,通常是固定的數(shù)值或字符串,在程序中可以直接使用。變量:變量是指在程序運行過程中其值可以發(fā)生變化的量,變量由變量的標識符(變量名)和變量的內(nèi)容(賦值)兩部分組成。變量的命名:標識符由字母(A-Z,a-z)、數(shù)字(0-9)、下劃線( _ )組成。 注意:第一個字符必須是字母或下劃線,不能是數(shù)字,如a1、_a;同時,字母區(qū)分大小寫,如X和x、sum和Sum都是不同的標識符。變量的賦值:x=3表示將“=”右邊的值賦給左邊的變量。4.1.2 Python的數(shù)據(jù)類型(1) Python支持以下三種不同的數(shù)值類型:整型(int):通常被稱為整型或整數(shù),是不帶小數(shù)的數(shù)。浮點型(float):浮點型由整數(shù)部分與小數(shù)部分組成,如2.5。復數(shù)(complex):復數(shù)由實數(shù)部分和虛數(shù)部分構(gòu)成,可以用a+bj或者complex(a,b)表示,復數(shù)的實部a和虛部b都是浮點型。(2)String(字符串):字符串是以單引號或雙引號括起來的文本,如‘a(chǎn)bc’、"xyz"等。字符串的索引從0開始,-1 為從末尾開始的位置。索引號寫在方括號[ ]里,以確定數(shù)據(jù)位置。(3) List(列表):列表是寫在方括號“[ ]”之間、用逗號分隔開的元素列表,列表的數(shù)據(jù)項不需要具有相同的類型。與字符串的索引一樣,列表索引從0開始。(4) Tuple(元組):元組與列表相似,在Python中,寫在小括號()之間,并用逗號來分隔元素的就是元組。例如tuple1=(200,50)。注意:元組的元素不能修改。(5) Sets(集合):集合是一個無序不重復元素的序列,基本功能是進行成員關(guān)系測試和刪除重復元素。可以使用大括號{ }或者set( )函數(shù)創(chuàng)建集合。(6) Dictionary(字典):字典是無序的對象集合,用{ }標識,它是一個無序的“鍵(key):值(value)”對集合,在同一個字典中,鍵必須是唯一的。4.1.3 Python的運算符與表達式(1)算術(shù)運算符與算術(shù)表達式算術(shù)運算符 含義 例子 結(jié)果+ 加 5+2 7- 減 5-2 3* 乘 5*2 10/ 除 5/2 2.5// 整除 5//2 2% 求余 5%2 1** 冪運算 5**2 25(2)邏輯運算符與邏輯表達式邏輯運算符 邏輯表達式 描述 示例(a=0;b=1;c=2)and x and y x為false,則返回false,否則返回y的計算值 (a and b)返回0 (c and b)返回1or x or y x為true,則返回x的值,否則返回y的計算值 (a or b)返回1 (c or b)返回2not not x x為true返回false; x為false返回true not(a and b)返回true關(guān)系運算符與關(guān)系表達式由關(guān)系運算符連接而成的表達式稱為關(guān)系表達式。關(guān)系表達式的值:True、False,對應(yīng)整數(shù)1和0。關(guān)系運算符 含義 示例 結(jié)果> 大于 4>3 true>= 大于等于 3>=3 true< 小于 4<3 false<= 小于等于 4<=3 true== 等于 4==3 fasle!= 不等于 4!=3 true賦值運算符與賦值表達式對變量的賦值通過賦值運算符“=”來完成。賦值號不是等號,具有方向性,由右邊賦給左邊的變量。除了“=”外,還有以下賦值運算符。賦值運算符 含義 示例= 直接賦值 x=y+= 加法賦值 x+=y 相當于x=x+y-= 減法賦值 x-=y 相當于x=x-y*= 乘法賦值 x*=y 相當于x=x*y/= 除法賦值 x/=y 相當于x=x/y//= 整除賦值 x//=y 相當于x=x//y%= 求余賦值 x%=y 相當于x=x%y**= 指數(shù)冪賦值 x**=y 相當于x=x**y成員運算符Python中用成員運算符判斷序列中是否有某個成員。成員運算符 描述 示例in x in y,如果x是序列y的成員,則計算結(jié)果為true,否則為false 3 in[1,2,3,4]結(jié)果為true 5 in[1,2,3,4]結(jié)果為falsenot in x not in y,如果x不是序列y的成員,則計算結(jié)果為true,否則為false 3 not in[1,2,3,4]結(jié)果為false 5 not in[1,2,3,4]結(jié)果為true運算符的優(yōu)先級當一個表達式中有多種運算時,運算的順序是根據(jù)運算符的優(yōu)先級由高到低進行運算。同級運算則按從左到右的順序進行。4.1.4 Python的函數(shù)4.2 順序結(jié)構(gòu)4.2.1 數(shù)據(jù)的輸入格式:<變量>=input(‘提示信息:’)input( )函數(shù)的返回結(jié)果都是字符串,如果需要可將其轉(zhuǎn)換為相應(yīng)的類型再處理。4.2.2 數(shù)據(jù)的輸出格式:print(object)object是要輸出的對象,可以是常量,變量或表達式4.2.3 順序結(jié)構(gòu)的應(yīng)用順序結(jié)構(gòu)是最常用、最簡單的程序結(jié)構(gòu),其語句執(zhí)行順序是自上而下依次執(zhí)行的。4.3 選擇結(jié)構(gòu)4.3.1 單分支if語句格式:if(條件表達式):語句A注意條件表達式后面有冒號,語句A要有縮進,語句A如果是多個語句組成的復合語句時,所有語句嚴格遵循相同的縮進。4.3.2 雙分支if語句格式:if(條件表達式):語句Aelse:語句B注意:條件表達式后面有冒號,語句A要有縮進,語句A和語句B如果是多個語句組成的復合語句時,所有語句嚴格遵循相同的縮進。4.3.3 多分支if...elif...else語句格式:if(表達式1):語句1elif:(表達式2):語句2......elif:(表達式N):語句Nelse:語句N+14.4 循環(huán)結(jié)構(gòu)4.4.1 for循環(huán)語句格式:for 循環(huán)變量 in 列表:語句或語句組1.直接羅列的方式舉例:for value in [1,2,3,4,5]:2.使用range( )函數(shù)range(start,stop,step)計數(shù)從start開始(如果省略默認是0)到stop結(jié)束(但不包括stop),step表示步長,即間隔,(如果省略默認為1),step也可以是負數(shù)。4.4.2 while循環(huán)語句格式:while(表達式):語句或語句組while也叫當型循環(huán),表達式是一個關(guān)系表達式或邏輯表達式,值為真(True)或假(False)whlie循環(huán)的循環(huán)體中必須有改變條件表達式值的語句,否則將成為死循環(huán)。4.4.3 循環(huán)嵌套循環(huán)嵌套指的是某一種循環(huán)語句中包含著自身或其他循環(huán)語句,for循環(huán)或while循環(huán)之間可以相互嵌套。第四章 程序設(shè)計基礎(chǔ) 學業(yè)測試一、單選題1.在Python中,元素是無序不重復的是( )。A.列表 B.元組 C.集合 D.字符串2.在以下運算符中,優(yōu)先級最低的運算符是( )。A.* B.!= C.+ D.=3.有以下程序段:sum=1for i in range(1,5):sum=sum*iprint(sum,i)程序的運行結(jié)果為( )。A.24 5 B.120 5 C.24 4 D.120 44.在程序設(shè)計中,數(shù)據(jù)的( )是最基本的操作之一。A.輸入 B.輸出 C.輸入輸出 D.計算5.在Python語言中,數(shù)據(jù)的輸入是通過( )來實現(xiàn)的。A.input( )函數(shù) B. print( )函數(shù) C.output()函數(shù) D.abs()函數(shù)6.在Python語言中,數(shù)據(jù)的輸出是通過( )來實現(xiàn)的。A.input()函數(shù) B.print()函數(shù) C.output()函數(shù) D.abs()函數(shù)7.順序控制結(jié)構(gòu)的程序執(zhí)行過程是( )依次執(zhí)行的。A.自上而下 B.自下而上 C.自外到內(nèi) D.由內(nèi)到外8.input( )函數(shù)的返回結(jié)果是( )。A.數(shù)值型 B.集合 C.列表 D.字符串9.算術(shù)運算符、賦值運算符和關(guān)系運算符的運算優(yōu)先級按從高到低依次為( )。A.算術(shù)運算、賦值運算、關(guān)系運算 B.算術(shù)運算、關(guān)系運算、賦值運算C.關(guān)系運算、賦值運算、算術(shù)運算 D.關(guān)系運算、算術(shù)運算、賦值運算10.請判斷如下程序的運行結(jié)果是將三個數(shù)( )。print(”請輸入3個數(shù):")x=int(input("x=”))y=int(input("y="))z=int(input("z="))temp=0if x>y:temp=yy=xx=tempif x>z:temp=zz=xx=tempif y>z:temp=zz=yy=tempprint("這3個數(shù)新序列是:",x,y,z)A.從小到大排序 B.從大到小排序C.都變成最大的數(shù) D.都變成最小的數(shù)11.在Python語言中,通過關(guān)鍵字( )來定義函數(shù)。A. def B.function C. fun D.procedure12.在Python 語言中,求數(shù)組長度用( )函數(shù)。A.size B. len C. length D.str13.在Python語言中,如果a是一個長度為10的數(shù)組,請問a[-1]( )。A.表示數(shù)組a的第1個元素 B.表示數(shù)組a的第9個元素C.表示數(shù)組a的最后1個元素 D.會發(fā)生下標越界,出現(xiàn)錯誤14.在Python 語言中,如果a是一個整數(shù),請問以下表達式恒為False的是( )。A.a%5==0 B. a>3 and a<4 C. a>3 or a<3 D.a==True15.在Python語言中,如果a是一個集合,以下哪個語句可以添加一個元素 ( )A. a.append(1) B. a.extend(1) C.a[1]=3 D.a.add(1)二、思考題16.編寫函數(shù),接收一個正偶數(shù)為參數(shù),輸出兩個素數(shù),并且這兩個素數(shù)之和等于原來的正偶數(shù)。如果存在多組符合條件的素數(shù),則全部輸出。17.反向輸出一個三位數(shù)。將一個三位數(shù)反向輸出,例如輸入358,反向輸出853。輸入:一個三位數(shù)n輸出:反向輸出n樣例輸入:100,樣例輸出:001請問如何保證輸出結(jié)果中001前面的“0”不丟失 請編程序解決此問題。三、情境題18.選手得分問題。學校要舉行辯論賽,請寫一個程序計算選手的最終得分,計算規(guī)則為去掉最高分和最低分,然后計算平均分。分行完成輸入多個評委的打分。輸入的分數(shù)保證是0~100之間的整數(shù)。例如:輸入:6(6個評委,以下6個數(shù)分別是6個評委的評分)928898657682輸出:84.5(選手的最終得分)19.蘋果和蟲子問題。你買了一箱n個蘋果,很不幸的是買完時箱子里混進了一條蟲子。蟲子每x小時能吃掉一個蘋果,假設(shè)蟲子在吃完一個蘋果之前不會吃另一個,那么經(jīng)過y小時你還有多少個完整的蘋果 輸入:輸入僅三行,包括n,x和y(均為整數(shù))輸出:輸出也僅一行,剩下的蘋果個數(shù)樣例輸入:1049樣例輸出:720.百錢買百雞問題。百錢買百雞問題記載于中國古代5-6世紀成書的《張邱建算經(jīng)》中的一道經(jīng)典不定方程組的問題,其重要之處在于開創(chuàng)“一問多答”的先例,這是過去中國古算書中所沒有的。其問題是這樣的:今有雞翁一,值錢伍;雞母一,值錢三;雞雛三,值錢一。凡百錢買雞百只,問雞翁、母、雛各幾何 請編程求解這個問題。提示:利用循環(huán)結(jié)構(gòu)進行問題求解,其中三種雞數(shù)量x,y,z同時符合如下兩個條件:x+y+z=100,5x+3y+z/3=100。第 13 頁 共 13 頁 展開更多...... 收起↑ 資源列表 第四章 程序設(shè)計基礎(chǔ)(原卷版).docx 第四章 程序設(shè)計基礎(chǔ)(解析版).docx 縮略圖、資源來源于二一教育資源庫