高中程序设计试题的设计与修改

来源 :中国信息技术教育 | 被引量 : 0次 | 上传用户:chenfengling
下载到本地 , 更方便阅读
声明 : 本文档内容版权归属内容提供方 , 如果您对本文有版权争议 , 可与客服联系进行内容授权或下架
论文部分内容阅读
  《普通高中信息技术课程标准(2017年版)》(以下简称《标准》)要求普通高中信息技术课程内容要紧扣数据、算法、信息系统和信息社会等学科大概念,培养学生信息意识、计算思维、数字化学习与创新、信息社会责任。计算思维是指个体运用计算机科学领域的思想方法,在形成问题解决方案的过程中产生的一系列思维活动,运用合理的算法形成解决问题的方案,并迁移到与之相关的其他问题的解决中。《标准》中对“必修课程模块1:数据与计算”中的程序设计的要求是:“掌握一种程序设计语言的基本知识,使用程序设计语言实现简单算法。通过解决实际问题,体验程序设计的基本流程,感受算法的效率,掌握程序调试与运行的方法。”这就明确了在这一轮课改中,普通高中信息技术课程需要进行程序设计语言的教学。在众多程序设计的语言中,Python作为一种面向对象的解释型计算机程序语言,具有简单、免费、开源、可移植性的特点,在信息技术新教材的编写时倍受青睐,成为首选。
  在2003版课标实施的十多年里,笔者所在地区的普通高中信息技术选修课程没有选择“算法与程序设计”模块,很多高中信息技术教师也十多年没有教授过程序设计,因此,为了更好地学习和使用新教材,笔者所在地区组织了全体高中信息技术教师Python语言线上培训,在培训时一道关于循环结构的填空题引起了大家的热议。
  ● 试题及参考答案分析
  題目如图1所示,这是一道经典的循环结构程序题。在分析本题答案之前先要了解range()和print()两个函数相关的参数含义。函数Range()格式:range(begin,end,step),如下页表1所示。函数Print()格式:print(value,…,ep=’’,end=’\n’,file=sys.stdout, flush=False),如下页表2所示。
  参考答案为:①1,101;②s i;③s。分析:①空需要填写的内容为变量i从1穷举到100,故填1,101;根据②空后面的提示,将变量i的值累加到累加器s中,故填s i;③空就是要填输出累加器s的值,故填s。
  本题的参考答案是教师和学生们很容易思考到的,也符合常规思维,但由于本题设计的填空关联度非常高、Python语言的range()函数的参数可省略和print()函数的格式灵活性等特点,教师们经过讨论发现本题除了参考答案外还有许多解,答案不是唯一的,无论是笔试还是机试,教师在批改作业时都会遇到麻烦。
  ● 多解详细分析
  解法1:①空填“1,100,1”或“101”,②、③空不变。
  分析:range(1,101,1)的步长为1,生成1,2,3,…,100的序列,range(101)表示从0开始计数,生成0,1,2,3,…,100的序列,循环执行后变量s中保存的结果是从1到100的和。range(101)多执行一次循环,结果不变;range(1,101,1)跟range(1,101)执行循环次数是一样的。
  解法2:①空填“1,100”或“100”,②空不变,③空填s 100。
  分析:range(1,100)生成1,2,3,…,99的序列,range(100)生成0,1,2,3,…,99的序列,循环执行后变量s中保存结果是从1到99的和,最后通过输出时s变量 100,如此也能求出1到100的和。当然,顺着这种填法,若①空填“99”、③空填s 100 99,输出结果也是1到100的和,如此思路还会填出多种组合的答案来,但缺少理由认为这些答案就是错误的,只是没有充分利用for语句功能而已。
  解法3:①空填“100,0,-1”,②、③空不变。
  分析:range()函数的步长参数可以为负数,生成的序列为倒序。例如,range(100,0,-1)生成从100至1、间隔为1的连续递减的等差数列序列100,99,98,…,2,1,从而求出从100到1的和。有时我们逆向思考,采用倒序也是解决问题的好方法。
  解法4:①、②空不变,③空填“’和=’,s”或“"和=",s”等。
  分析:print()函数可输出多个value,value可以是数值也可以是字符串等,若加上字符串可清晰地显示输出的值是什么的结果,如此解输出为“和=5050”,结果指向性更明确。因为字符串的值可以任意选取,以及print()函数可以设置“sep=’’”等多个参数,所以③空还能填出许多种答案,如print(s,sep=’’)等。
  解法5:①、②空不变,③空填“5050”。
  分析:高斯巧妙地用(1 100)×50很快就把本题结果计算出来了,如果有学生在③空就填“5050”,是正确还是错误呢?因为本题是计算1 2 3 … 100的和,程序不需要输入,程序结果是什么也是已知的,程序运行后结果显示也是正确的,如此填写很难确定是对还是错。当然,如果学生要这样填,只是本题程序运行结果显示正确,但并没有充分理解累加器s的作用,也没有理解程序设计的基本流程,不利于培养计算思维,也不利于分析和理解算法,所以教师在教学过程中需要加强算法引导防止此类现象发生。
  ● 试题修改及解析
  由于在设计本题的题干时,填空的限制条件相对宽松,导致多解,综上分析,为使答案具有确定性,从而更好地培养学生的计算思维和编程能力,也方便教师讲解此题和批改作业,可进行如下几种修改。
  修改1:若填写参考答案的结果,可增加题干限制性说明(如下页图2)。
  解析:增加两处限制说明,学生解题时方向清楚,答案也就明确,考查学生的“双基”。
  修改2:调整填空项(如下页图3)。
  解析:将变量i的取值范围和输出固定,这样设计的填空既考查了学生Python语句的基本知识,又训练了学生的计算思维,培养了学生分析问题的能力。
其他文献
淘淘是个爱动的小朋友,刚1岁就在沙发上爬上爬下,感觉一刻都停不下来。不僅如此,他还特别爱出汗,尤其是头部,一吃奶就满头大汗,晚上刚睡着时,也是满头汗,后背也是湿漉漉的。看着如此爱出汗的淘淘,妈妈很是疑惑:这是缺钙了还是体质太虚弱了?  很多家长都有过这样的困惑:宝宝怎么这么爱出汗,需不需要补些什么呢?广东省妇幼保健院中医科潘明沃副主任医师说,其实,宝宝出汗多是一种生理现象,家长无须太过于担心,也无
1947年7月,美国国会通过了《国家安全法案》,要求制定明确的“国家安全战略”,并为此相应建立“竞争性评估程序”,直接导致了净评估的诞生。净评估是20世纪70年代由时任美国国防部净评估办公室主任的安德鲁·马歇尔提出的一套综合分析框架,马歇尔将其描述为“对美国与对手在国家安全领域某方面进行的比较分析”。美国既是净评估的提出者,更是净评估的实践者。《军事文摘》特邀请著名专家学者,通过阐述美军净评估的常
近日,朱女士向媒体爆料,用于缓解胆囊疼痛的“胆宁片”竟然在保质期内“发芽”了。原来,这并非是药丸发芽,而是药丸受潮后浸膏析出。  现在,许多家庭会设立小药箱,储备一些常用药,以备不时之需。科学合理地保存药品,就显得特别重要。因此,想真正发挥小药箱的功用,以下药品保存方法不可不知。  原封不动 药品最好保留原包装,这样便于识别,便于掌握用法、用量。如果不方便使用原包装,最好选用干净的小瓶盛装,将药物
我原是父母生命中的女儿,只因为我出嫁了,就成了钱锺书生命中的杨绛。  钱锺书的父亲认为这个儿子的大毛病,是孩子气,没正经。他准会为他娶一房严肃的媳妇,经常管制,这个儿子可成模范丈夫;他生性憨厚,也必是慈祥的父亲。  杨绛最大的功劳是保住了钱锺书的淘气和那一团痴气。这是钱锺书的最可贵处。他淘气,天真,加上他过人的智慧,成了现在众人心目中博学而风趣的钱锺书。他的痴气得到众多读者的喜爱。  我做过各种工
谁都看得出来,有资格说“让一步”的,那是无论在精神上还是物质上,都是有余裕的。而整部作品的叙事技巧和情感机关,也全在这“让一步”。  表弟上幼儿园的时候,喜欢上同班的女孩,不知道怎么表达,走过女孩身边,扯掉了她的辫子。那时我们都笑话他,自觉自己是长大了,长大当然知道如何表达。  可是也不一定。活了半辈子,茫茫人海中走走,我自以为早练就了声色不动的功夫,但是,去年在香港见到张大春,还是慌张得不行,虽
习近平总书记的“七一”讲话,以上下5000年的宏阔视野,审视中国共产党95年的发展史,又运用科学的唯物辩证法,看到了事物发展变化中矛盾的双方总是相比较而存在,又相斗争而发展,两者既对立又统一,在一定条件下可以相互转化的基本规律。繁荣与衰落正是蕴藏于民族、国家发展过程中的一对矛盾,哪些因素影响着两者相互转化的方向,总书记的讲话给出了答案。  1921年,在那个帝国主义、封建主义、官僚资本主义三座大山
清朝末年,一个叫丁龙的青年和许多华人去美国修筑铁路赚钱养家。由于丁龙肯吃苦,到美国后不久,就被南北战争退役的卡板第尔将军看中,让丁龙去他在加利福尼亚州的家当帮工,丁龙痛快地答应了。  卡板第尔将军的性情非常粗暴,动不动就对下人非打即骂,很多人因受不了他的暴行,纷纷选择了离开。  一天晚上,卡板第尔将军喝得酩酊大醉,丁龙想扶他上床休息,不料,他却拿起水杯,朝着丁龙的头部狠狠摔了过去。丁龙顿时鲜血直流
5月20日,中共中央政治局委员、中宣部部长黄坤明到上海复旦大学马克思主义学院、中国研究院和华东师范大学马克思主义学院调研,并同高校教师和社科理论工作者座谈,强调要认真学习贯彻习近平总书记关于加强思想理论建设、办好思想政治理论课的重要指示精神,以高度的自觉自信深化理论研究阐释,以强烈的责任担当用心咨政育人,推动党的创新理论走进青年、深入人心。  黄坤明指出,深入研究阐释习近平新时代中国特色社会主义思
癌症作为威胁人们生命的疾病,由于各种器官组织都可以发生癌症,临床表现可谓五花八门。这给诊断特别是早期癌症的诊断带来困难,一旦确诊,晚期居多,治疗效果常不理想。  因此,如何能早期发现癌症是人们关心的话题。最近,遇到了一些急于检查癌症的朋友,他们常有一些相同又实际的问题,希望得到解答,我将这些问题归纳如下,谈谈自己的看法。  1.有无一步到位的先进方法,能查出体内有无癌症?  虽然这是世界各国科学家
刚退休的那阵子,我误读了退休的“休”,懒起来了,朋友喊我去活动,也不爱动弹。看我身体不如以前,脸色也不好看了,老友在微信里给我发过来一段话。  这段话的大致意思是,有人做过实验:把兔子、山鸡、布谷鸟从小就关在笼子里,这些动物长大后,从外表看发育正常,只是有点食欲不振罢了。实验者把它们送到大自然中去。结果是,兔子才跳跃几下,就倒地死去;山鸡飞向天空,才转了半圈,就突然摔下来;布谷鸟在自由情况下第一次