国产日韩欧美一区二区三区三州_亚洲少妇熟女av_久久久久亚洲av国产精品_波多野结衣网站一区二区_亚洲欧美色片在线91_国产亚洲精品精品国产优播av_日本一区二区三区波多野结衣 _久久国产av不卡

?

高中程序設計試題的設計與修改

2020-08-09 08:55孫秀峰
中國信息技術教育 2020年16期
關鍵詞:程序設計選擇題本題

孫秀峰

《普通高中信息技術課程標準(2017年版)》(以下簡稱《標準》)要求普通高中信息技術課程內容要緊扣數(shù)據(jù)、算法、信息系統(tǒng)和信息社會等學科大概念,培養(yǎng)學生信息意識、計算思維、數(shù)字化學習與創(chuàng)新、信息社會責任。計算思維是指個體運用計算機科學領域的思想方法,在形成問題解決方案的過程中產生的一系列思維活動,運用合理的算法形成解決問題的方案,并遷移到與之相關的其他問題的解決中?!稑藴省分袑Α氨匦拚n程模塊1:數(shù)據(jù)與計算”中的程序設計的要求是:“掌握一種程序設計語言的基本知識,使用程序設計語言實現(xiàn)簡單算法。通過解決實際問題,體驗程序設計的基本流程,感受算法的效率,掌握程序調試與運行的方法?!边@就明確了在這一輪課改中,普通高中信息技術課程需要進行程序設計語言的教學。在眾多程序設計的語言中,Python作為一種面向對象的解釋型計算機程序語言,具有簡單、免費、開源、可移植性的特點,在信息技術新教材的編寫時倍受青睞,成為首選。

在2003版課標實施的十多年里,筆者所在地區(qū)的普通高中信息技術選修課程沒有選擇“算法與程序設計”模塊,很多高中信息技術教師也十多年沒有教授過程序設計,因此,為了更好地學習和使用新教材,筆者所在地區(qū)組織了全體高中信息技術教師Python語言線上培訓,在培訓時一道關于循環(huán)結構的填空題引起了大家的熱議。

● 試題及參考答案分析

題目如圖1所示,這是一道經典的循環(huán)結構程序題。在分析本題答案之前先要了解range()和print()兩個函數(shù)相關的參數(shù)含義。函數(shù)Range()格式:range(begin,end,step),如下頁表1所示。函數(shù)Print()格式:print(value,…,ep='',end='\n',file=sys.stdout, flush=False),如下頁表2所示。

參考答案為:①1,101;②s+i;③s。分析:①空需要填寫的內容為變量i從1窮舉到100,故填1,101;根據(jù)②空后面的提示,將變量i的值累加到累加器s中,故填s+i;③空就是要填輸出累加器s的值,故填s。

本題的參考答案是教師和學生們很容易思考到的,也符合常規(guī)思維,但由于本題設計的填空關聯(lián)度非常高、Python語言的range()函數(shù)的參數(shù)可省略和print()函數(shù)的格式靈活性等特點,教師們經過討論發(fā)現(xiàn)本題除了參考答案外還有許多解,答案不是唯一的,無論是筆試還是機試,教師在批改作業(yè)時都會遇到麻煩。

● 多解詳細分析

解法1:①空填“1,100,1”或“101”,②、③空不變。

分析:range(1,101,1)的步長為1,生成1,2,3,…,100的序列,range(101)表示從0開始計數(shù),生成0,1,2,3,…,100的序列,循環(huán)執(zhí)行后變量s中保存的結果是從1到100的和。range(101)多執(zhí)行一次循環(huán),結果不變;range(1,101,1)跟range(1,101)執(zhí)行循環(huán)次數(shù)是一樣的。

解法2:①空填“1,100”或“100”,②空不變,③空填s+100。

分析:range(1,100)生成1,2,3,…,99的序列,range(100)生成0,1,2,3,…,99的序列,循環(huán)執(zhí)行后變量s中保存結果是從1到99的和,最后通過輸出時s變量+100,如此也能求出1到100的和。當然,順著這種填法,若①空填“99”、③空填s+100+99,輸出結果也是1到100的和,如此思路還會填出多種組合的答案來,但缺少理由認為這些答案就是錯誤的,只是沒有充分利用for語句功能而已。

解法3:①空填“100,0,-1”,②、③空不變。

分析:range()函數(shù)的步長參數(shù)可以為負數(shù),生成的序列為倒序。例如,range(100,0,-1)生成從100至1、間隔為1的連續(xù)遞減的等差數(shù)列序列100,99,98,…,2,1,從而求出從100到1的和。有時我們逆向思考,采用倒序也是解決問題的好方法。

解法4:①、②空不變,③空填“'和=',s”或“"和=",s”等。

分析:print()函數(shù)可輸出多個value,value可以是數(shù)值也可以是字符串等,若加上字符串可清晰地顯示輸出的值是什么的結果,如此解輸出為“和=5050”,結果指向性更明確。因為字符串的值可以任意選取,以及print()函數(shù)可以設置“sep=''”等多個參數(shù),所以③空還能填出許多種答案,如print(s,sep='')等。

解法5:①、②空不變,③空填“5050”。

分析:高斯巧妙地用(1+100)×50很快就把本題結果計算出來了,如果有學生在③空就填“5050”,是正確還是錯誤呢?因為本題是計算1+2+3+…+100的和,程序不需要輸入,程序結果是什么也是已知的,程序運行后結果顯示也是正確的,如此填寫很難確定是對還是錯。當然,如果學生要這樣填,只是本題程序運行結果顯示正確,但并沒有充分理解累加器s的作用,也沒有理解程序設計的基本流程,不利于培養(yǎng)計算思維,也不利于分析和理解算法,所以教師在教學過程中需要加強算法引導防止此類現(xiàn)象發(fā)生。

● 試題修改及解析

由于在設計本題的題干時,填空的限制條件相對寬松,導致多解,綜上分析,為使答案具有確定性,從而更好地培養(yǎng)學生的計算思維和編程能力,也方便教師講解此題和批改作業(yè),可進行如下幾種修改。

修改1:若填寫參考答案的結果,可增加題干限制性說明(如下頁圖2)。

解析:增加兩處限制說明,學生解題時方向清楚,答案也就明確,考查學生的“雙基”。

修改2:調整填空項(如下頁圖3)。

解析:將變量i的取值范圍和輸出固定,這樣設計的填空既考查了學生Python語句的基本知識,又訓練了學生的計算思維,培養(yǎng)了學生分析問題的能力。

修改3:設計成一道單項選擇題,或設計成一道多項選擇題。

設計成單項選擇題時,選項可設為:

A. ①1,101? ②s+i? ③s

B. ①1,100? ②s+i? ?③s

C. ①1,100? ②+i? ?③s

D. ①1,101,1 ②s+i? ③i

設計成多項選擇題時,選項可設為:

A. ①1,101? ②s+i? ③s

B. ①101? ?②s+i? ③s=,s

C. ①100,0,-1 ②s+i? ③s

D. ①100? ? ②s+i? ③s

多項選擇題四個選項中有A、B、C為正確選項,若題干改為選擇一個錯誤選項,那本題就變成一道單項選擇題。

解析:由填空題改為選擇題既考查了學生掌握相關知識點的熟練程度,也考查了學生的必備能力。

● 設計試題的思考

1.研究課程標準

課程標準是新課程改革的“魂”?!稑藴省访鞔_了“高中信息技術學業(yè)評價一般包括紙筆測試、上機測試等方式”的評價方式,紙筆測試和上機測試各有所長,適合不同的評價內容和目標,應相互補充、綜合運用?!稑藴省分赋觯杭埞P測試的效率較高,在設計測試試卷時,要適度設置和增加要求學生通過理解和探究來解決的開放性題目,如問題解決分析等,以拓展紙筆測試在評價內容和評價目標等方面的廣度和深度。上機測試可以評價學生使用技術工具的熟練程度,能夠考查學生利用信息技術解決問題的能力。本輪改革沒有考試大綱,只有通過不斷地學習《標準》、學習不同出版社的新教材,才能掌握新課程改革的基本理念,才能科學地設計每一道題。

2.儲備知識

“要給學生一杯水,教師要有一桶水”,同理,“要想出好一道題,需要儲備十道題”。例如Python的知識儲備,教師們可通過自學或MOOC、直播課學習,掌握語法規(guī)則,提升自身的編程能力和編程技巧,遇到問題時可在教研組或主備課活動時跟同事們研討,也可通過QQ、微信群及時交流探討,以達到熟練掌握和深刻理解的程度。知識儲備豐富了,才能夠設計出新穎、巧妙、表述嚴謹?shù)脑囶}。

猜你喜歡
程序設計選擇題本題
基于OBE的Java程序設計個性化教學研究
項目化教學在Python程序設計課程中的應用
C++程序設計課程教學改革研究
醫(yī)學專業(yè)“Python程序設計”課程教學改革總結與思考
例談解答選擇題的幾個小技巧
精選課本題改編練習
一道物理選擇題給我們的啟示
十種妙招握在手 破解選擇題無憂
今天是幾月幾日
找規(guī)律
乌兰察布市| 固镇县| 荥经县| 荆州市| 海盐县| 青河县| 安阳市| 万山特区| 成武县| 清涧县| 根河市| 凤台县| 海宁市| 蓝山县| 饶平县| 萨迦县| 略阳县| 江达县| 鹤庆县| 古蔺县| 汕头市| 兴安盟| 祁连县| 荣昌县| 云梦县| 靖宇县| 个旧市| 宁国市| 遂宁市| 平定县| 莱州市| 景宁| 卢湾区| 沙洋县| 华蓥市| 华池县| 任丘市| 巴马| 浪卡子县| 攀枝花市| 沅陵县|