資源簡介 第三章 算法的程序實現 練習題 浙教版(2019)高中信息技術必修1一、選擇題1.在Python語言中,能正確表示條件“x小于-6,或大于等于2”的表達式是( )A.x>-6 and x<=2 B.x>-6 or x<=2 C.x<-6 or x>=2 D.x<-6 and x>=22.Python中整型數據的表示方法是( )A.int B.float C.str D.class3.有如下 python 程序段,運行該程序段后, 列表a 中的值可能是( )import randoma = []for i in range(6):a.append(random.randint(1,5)*2+i%2)for i in range(1,5):j = i; k = a[j]while a[j-1]0:a[j] = a[j-1] ; j=j-1a[j] = kA.11,8,7,6,5,5 B.8,6,5,5,3,8 C.9,6,7,8,8,11 D.11,11,8,2,2,114.Python表達式 -3 ** 2 + 7 % 13 // 4 ** 0.5 * 4 的值是( )A.-9.0 B.-5.0 C.3.0 D.21.05.下圖是一段Python程序,該程序運行后的結果是( )1 color=["yellow","white","red","blue","green","pink"]2 print(color[1:4:2])A.[“yellow”,“red”] B.[“white”,“blue”]C.[“yellow”,“blue”,“white”] D.[“white”,“green”,“red”]6.有如下Python程序段:s="Python"ans=""for i in range(len(s)):c=s[i]if "a"<=c<="z":if i%2==0:c=chr((ord(c)–ord("a")–i)%26+ord("a"))else:c=c.upper( ) #x.upper( )將字符串x中的大寫字母轉換成小寫字母ans+=cprint(ans)執行該程序段后,輸出的內容是( )A.PYwHtN B.YrHkN C.PaTIOt D.PYrHkN7.某二分查找算法的 python 程序段如下, 運行該段代碼后, 輸出的結果不可能是( )import randoma = [10,20,30,40,50,60,70,80]key = random.choice(a); i,j = 0,len(a)-1 ; s = ""while i<=j:m = (i+j)//2if key == a[m]:s = s+"M"; breakelif key < a[m]:j = m-1; s = s+"L"else:i = m+1; s = s+"R"print(s)A.LLM B.LRM C.RRRM D.RRLM8.有如下Python程序代碼:s="ABCDEF";head=0;tail=0que=[""]*100for i in range(len(s)):if i%2==0:que[tail]=s[i]else:que[tail]=s[len(s)-i]tail=tail+1for i in range(len(s)):print(que[head],end="")head=head+1以上程序運行后,打印出列表的情況是:( )A.ABCDEF B.FEDCBA C.ACEFDB D.AFCDEB二、填空題9.根據下面的while語句的運算,計算結果是______。10.在Python語言中常用的邏輯運算符有“and”、“or”、“not”,執行not 1 and 1的結果是_______。(提示輸入字母時只能輸入小寫字母)11.Python算術運算中求余數運算符用_______表示。12.某Python程序段如下:w = input("請輸入一個單詞(全部小寫):")w = ____________ + w[1:]print(w)要想將單詞 w 的首字母大寫,劃線處應填寫的內容是___________13.小明利用Python語言編寫了一個程序,其中用到 for x in range(1,9,3)語句,在不改變x值的情況下,循環次數應為______。三、判斷題14.關系運算符運算結果一定是True或者False。( )15.利用計算機編程的方式進行問題求解時,通常需要經過分析問題、設計方案、編程調試和解決問題等環節。( )16.Python是解釋型高級語言。( )17.Python語言中使用數組表示批量數據。( )18.下列程序段中,賦值語句 s=s+i 被重復執行了 3 次。( )s=0for i in range(3,10,2): s=s+i四、操作題19.某商場開業不久,老板為研判商場運營情況,調取了最近一個月的商品銷售情況,如圖如示。老板想知道哪些商品賣的多,哪些商品產生的利潤多,同時為表彰先進,需統計每個員工銷售商品數量,并做成圖表,現老板高薪聘請你為運營總監,要求你設計python程序,完成上述功能。pandas as pdimport matplotlib. pyplot as pltpd. set_option('display. unicode. ambiguous_as_wide',True) #處理列數據無法對齊的情況pd. set_option('display. unicode. east_asian_width',True)plt. rcParams['font. sans-serif'] = 'simhei' #圖表顯示中文字體df=pd. read_csv("sale. csv",encoding="gbk") #導入待處理CSV 文件#修改第1行顯示器的銷售人員為“畢春艷”_______#計算出每一筆業業務利潤的情況df["利潤"]=(df["單品售價"]-df["單品進價"])*df["銷售數量"]#按"商品名稱"統計本月"銷售數量","利潤"的總和df1=________#篩選出本月賺錢較多的前 3 種商品print( )#同理,統計同種商品的月銷量,代碼略#統計本月每一位銷售人員的商品銷售數量df2=df. groupby("銷售人員",as_index=False)["銷售數量"]. sum()#篩選出本月銷售數量>25 或銷售數量<10 的銷售人員print( )#以垂直柱形圖的形式統計顯示所有銷售員的業績x=__________y=df2["銷售數量"]plt. figure(figsize=(8,4))plt. title("商場運營情況分析")plt. bar(x,y,label="銷售人員業績圖",color="r")plt. legend( )plt. show()五、簡答題20.編寫一個程序,它將找到所有這些數字,可被7整除,但不是5的倍數,2000年至3200年(包括在內)。得到的數字應按逗號分隔的順序打印在一行上。提示:考慮使用range(#begin,#end)21.read、readline和readlines之間的區別?試卷第1頁,共3頁試卷第1頁,共3頁參考答案:1.C2.A3.D4.C5.B6.D7.D8.D9.12010.False11.%12.chr(ord(w[0])-32)或w[0].upper()或等價的表達式13.314.正確15.正確16.正確17.錯誤18.錯誤19. df.at[0,"銷售人員"]="畢春艷"或等同答案 df.groupby("商品名稱")[["銷售數量","利潤"]].sum() 或等同答案 df1.sort_values("利潤",ascending=False).head(3) 或等同答案 df2[(df2["銷售數量"]>25)|(df2["銷售數量"]<=10)] 或等同答案 df2["銷售人員"]或 df2.銷售人員 或等同答案20.l=[]for i in range(2000,3201): if (i%7==0)and (i%5!=0): l.append(str(i))print (','.join(1))21.read 讀取整個文件;readline 讀取下一行,使用生成器方法;readlines 讀取整個文件到一個迭代器以供我們遍歷。答案第1頁,共2頁答案第1頁,共2頁 展開更多...... 收起↑ 資源預覽 縮略圖、資源來源于二一教育資源庫