2024年江苏省信息技术Python操作题模拟试卷(三) 一、非选择题:本大题共10小题,共10分。 1.中国古代经典数学著作《孙子算经》记录了这样一个问题:“今有物不知其数,三三数之剩二(除以3余2),五五数之剩三(除以5余),问物几何?”现要统计一下,1000以内满足条件的所有整数。 打开“考生文件夹\13”文件夹中的文件“孙子算经.py”,请在序号处填写正确的代码,且不改变原程序的结构,并把序号删除,调试完成后保存文件。 2.试编程判断某年是否为闰年。 闰年条件:年份能被400整除或者年份能被4整除且不能被100整除。 例如:2000年和1980年是闰年,1900年不是闰年。 打开“考生文件夹\6”文件夹中的文件“闰年.py”,请在序号处填写正确的代码,且不改变原程序的结构,并把序号删除,调试完成后保存文件。 3.一个正整数的阶乘是所有小于及等于该数的正整数的积,并且0的阶乘为1,即n!=1*2*3*……*(n-1)*n。n!=,现求n!。 4.已知斐波那契数列1,1,2,3,5,8,13,21……,其定义如下。求斐波那契数列第n项的值。请在序号处填写正确的代码。 5.输入a、b两个整数,如果a为大数,则进行交换,然后分别输出大数、小数的值。 6.打印以下图形。 7.将5万元存入银行,选择一年定期自动转存的存款方式,年利率均为1.25%,问:要使得总存款达6万元,至少需要存款多少年? 8.王明同学为希望工程捐款,第一个月捐款1元,第二个月捐款2元,以后每个月都在前一个月的基础上增加1元。至少需要多少个月捐款总额达到1000元?请在序号处填写正确的代码。 A. 正确 B. 错误 9.等差数列求第n项的值 10.抽奖活动:某商场周年庆组织抽奖活动,每位顾客有1次抽奖机会,顾客从1-5之间选择任意整数,如果输入3则中奖,否则不中奖,请模拟抽奖过程。 参考答案 1.解:①初始化计数器 s 为 0。 ②使用 for 循环遍历 0 到 1000 之间的所有整数。在循环中,使用 if 语句检查当前整数 i 是否满足除以 3 余 2 且除以 5 余 3 的条件。同时满足使用逻辑运算符and。 ③如果条件满足,则将计数器 s 增加 1。故填s=s+1。 2.解:①将用户输入的年份转换为整数,使用int函数。故填int。 ②判断年份是否满足闰年的条件。年份能被400整除,或者能被4整除但不能被100整除。故填x%4==0。 ③此处输出闰年x,故填x。 3.解:①递归定义n≥1时的通项公式,由题干可知,填n*f(n-1)。 ②键盘上输入n的值,故填n。 ③调用f函数,计算n的阶乘,故填f(n)。 4.解:①由定义可知,当n=1或n=2时,f(n)=1,故此处填or。 ②斐波那契数列从第三项开始,后一项的值是前2项的和,故此处填f(n-1)+f(n-2)。 ③此处调用函数f(n),用于计算斐波那契数列第n项的值,故填f(n)。 5.解:结合题目内容,分析程序段,可知:①处,当a为大数时,交换a、b,故此处应填写:a>b。由if语句知,当a为大数时,交换a、b,则a中存放小数,b中存放大数,故②处填写:b,③处填写:a。 6.解:分析如下: -第1行:4个“-”和1个“*” -第2行:3个“-”和2个“*” -第3行:2个“-”和3个“*” -第4行:1个“-”和4个“*” 可以看出: -每一行的“-”的数量是4减去当前行的索引(从0开始)。 -每一行的“*”的数量是当前行的索引加1。 因此,根据for循环结构特点,代码中的①应该是range,②应该是4-i,③应该是i+1。 7.解:①如果总存款没达6万元,则继续存,故此处应为money<60000; ②存款总额为:本金+利息,故此处应为:money; ③year记录存款年数,故此处应为:year=year+1或year+=1。 8.解:阅读程序段可知,用变量sum来表示存款,所以sum的初值为0,用变量m来表示第几个月,循环条件就是捐款额小于1000时做循环;由于是第几个月存多少钱,所以每循环一次执行一次sum=sum+m,然后执行一次 ... ...
~~ 您好,已阅读到文档的结尾了 ~~