《2015年数学会考真题及答案.doc》由会员分享,可在线阅读,更多相关《2015年数学会考真题及答案.doc(6页珍藏版)》请在taowenge.com淘文阁网|工程机械CAD图纸|机械工程制图|CAD装配图下载|SolidWorks_CaTia_CAD_UG_PROE_设计图分享下载上搜索。
1、2015年数学会考真题及答案1,分析并完善程序:考拉兹猜想:又称为3n+1猜想,指的是对于给定的每个正整数n,经过一系列的有限次变化后,最终都能变为了:如果它是偶数,则对它除以2,如果它是奇数,则对它乘3再加1;如此循环,直到得到位为止。例如:n=6,根据上述需要8次变换后得1,变换过程:6-3-10-5-16-8-4-2-1。以下是验证考拉兹猜想的主要程序片段,请你补全代码,Dim n As LongDim cnt AS Long 变换次数cntn=Val(InputBox(“n=”)输入正整数ncnt=0Do While n1 cnt=cnt+1 变换次数累加 If n Mod 2=0 T
2、hen n=_n/2_ Else n=_3*n+1_ end ifLoopPrint cnt 输出变换次数2,输入一个正整数n,判断该正整数是否为素数(质数)。要判断一个数n是否为素数,最简单的方法是,统计2到n-1之间的所有能整除n的整数个数s,若s大于0,则n不是素数,否则是素数,根据以上方法,完善以下程序代码:N= val(InputBox(“n=”)S=0 For i=2 to n-1If n mod i=0 Then S=_s+1_统计因数个数EndifNext iIf_s=0_ThenPrint n &”是素数“ElsePrint n &”不是素数“End if3,VB语言中绘制圆
3、的方法是:Circle(x,y),r格式说明:其中(x,y)为圆心坐标,r为圆的半径。下表中算法1是在窗体中绘制以(2000,2000)为圆心,半径依次为100,200,800的8个同心圆。请补充完成算法2,使其实现与算法1相同的功能。(6分)算法1算法2Cicle(2000,2000),100Cicle(2000,2000),200Cicle(2000,2000),300Cicle(2000,2000),400Cicle(2000,2000),500Cicle(2000,2000),600Cicle(2000,2000),700Cicle(2000,2000),800Dim k As Int
4、eger For k= 1 to 8 Cicle(2000,2000),_k*100_ Next k4,“完数”是指一个自然数恰好等于它的因子(不包含本身)的和,如6的因子为1,2,3,而6=1+2+3,因而6就是“完数”,如28=1+2+4+7+14问题:输入一个正整数n,判断该数是否为“完数”要判断一个整数N是否为“完数”,最简单的方法是:求出现1到n-1之间n的所有因子和为sum,如果sum的值和n的值相同,则n就是完数。以下代码是判断n是否为完数的程序片段,请补全代码:Dim n as longDim sum as long量级 SUM用来记录N的因子和Sum=0N= inputBox
5、(“n=”)For I = 1 to n-1 求N的因子和SUM If n mod i = 0 then sum = _sum+i_Next I If _sum=n_ then Print n & “是完数”Else Print n &” 不是完数”5,2005年10月9日,国家测绘局正式宣布珠穆朗玛峰的高度是8848.43米,并停用之前的数据,现有一长白纸的厚度大约是0.08毫米,对折一次,厚度变为0.16毫米,每对折一次,厚度变为折前的两倍。假设这长纸足够大,可对折任意次,那么这张纸至少对折多少次后,其厚度将超过珠穆朗玛峰的高度。以下是求解该问题的程序片段,请补全代码:Dim height
6、 as double 定义珠穆朗玛峰的高度Dim h as double 定义一张纸的厚度Dim cnt as long 定义对折次数Height=8844430H=0.08Cnt=_0_Do while h0 thenX1=(-b+sqrt(d)/(2*a)X2=(-b-sqrt(d)/(2*a)Print “x1=”;x1Print”x2=”;x2End ifIf _d=0_then Print “x=”;-b/(2*a)EndifIf d0 then Print “无实数解!”Endif7,选择算法解决问题;在使用计算机解决问题时,选择合适的算法是有效解决问题的关键。分析下面的问题,请选
7、择合适的算法:_穷举法_(填:解析法/穷举法/递归法/排序法,6分)搬砖问题:100块砖,100人搬,一个男人搬4块,一个女人搬3块,两个小儿抬1块,要求一次全搬完,问需男、女、小儿各多少人。8,分析下面的问题,选择合适的算法(填:解析法/递归法/穷举法/排序法)_递归法_猴子吃桃问题:小猴有一天摘了若干个桃子,它非常贪吃,当天就吃掉了一半还多一个,第二天接着剩下的一半多一个,以后每天都是如此,到了第七天要吃桃子时,却发现只剩下1个,问小猴子那天一共摘了多少个桃子。9,分析程序,得出结果:Dim sum as longDim I as longSum=0I=0Do while sum0 X=n
8、 mod 10 S=s+x N=n10LoopPrint s程序运行时,输入518,运行输出结果是:_14_(6分)(提示:(整除运算)如:23710=23;mod(取余数运算)如:237 mod 10=7)11,分析程序,得出结果Dim sum as integerDim k as integerSum=0For k=1 to 10 If k mod 2=0 then sum=sum+kNext kPrint sum程序运行后输出结果是:_30_12,分析程序,得出结果Dim x as integerDim y as integerY=0For I =1 to 5 X=val(inputbo
9、x(“请输入”) Y=y+xNext I Print y程序运行后,依次输入:10 20 30 40 50运行输出的结果是:_150_(6 分)。13,程序段:for I =1 to 10 I控制*的行数 for j=1 to I J控制每行*的个数print “*” 输出* next jprint 输出换行next i运行结果是_D_(填:A/B/C/D) A B C D14,在VB语言中常用的字符串截取函数有:函数名功能示例结果Mid(s,m,n)从字符串S的第M位开始,截取长度为N的子串Mid(“ABCDEFG”,5,2)“EF”Left(s,n)截取字符串S左边N个字符Left(“AB
10、CDEFG”,3)“ABC”Right(s,n)截取字符串S右边N个字符Right(“ABCDEFG”,2)“FG”假如某人身份证号码s=370102199602190000”,如果需要根据此身份证号码求出该人的“出生年月日”。下列四个表达式中不能实现的一个是_D_.A. mid(s,7,8) B.right(left(s,14)8) C.mid(s,7,4)+mid(s,11,2)+mid(s,13,2) D.Left(s,14)-left(s,6)15,下图所示的算法流程图:(6分)执行情况如下:当输入a,b的值为3、8时,输出结果为5 当输入a,b的值为11、7时,输出结果为4输入a,b的值开始输出c的值结束问题一:下列流程图填入虚线框中,符合条件的是:_C_(填:A/B/C)YNabc=b-ac=a-bCYNabc=a-bc=b-aB问题二:依据问题一所选流程图,当输入a,b的值分别为9,6时,输出结果为_3_。