第一章算法初步1.3算法案例A级基础巩固一、选择题1.下列说法中正确的个数为()①辗转相除法也叫欧几里得算法;②辗转相除法的基本步骤是用较大的数除以较小的数;③求最大公约数的方法除辗转相除法之外,没有其他方法;④编写辗转相除法的程序时,要用到循环语句.A.1B.2C.3D.4解析:依据辗转相除法可知,①②④正确,③错误.答案:C2.用更相减损术求48和132的最大公约数时,需做减法的次数是()A.2B.3C.4D.5解析:132-48=84,84-48=36,48-36=12,36-12=24,24-12=12.答案:D3.若用秦九韶算法求多项式f(x)=4x5-x2+2当x=3时的值,则需要做乘法运算和加减法运算的次数分别为()A.4,2B.5,3C.5,2D.6,2解析:f(x)=4x5-x2+2=((((4x)x)x-1)x)x+2,所以需要做5次乘法运算和2次加减运算.答案:C4.已知一个k进制的数123与十进制的数38相等,那么k等于()A.7或5B.-7C.5D.都不对解析:(123)(k)=1×k2+2×k+3=k2+2k+3,所以k2+2k+3=38,即k2+2k-35=0.解得k=5或k=-7(舍去).答案:C5.计算机中常用的十六进制是逢16进1的计数制,采用数字0~9和字母A~F共16个计数符号,这些符号与十进制数的对应关系如下表:十六进制0123456789ABCDEF十进制0123456789101112131415例如,用十六进制表示:E+D=1B,则A×B等于()A.6EB.72C.5FD.B0解析:A×B用十进制可以表示为10×11=110,而110=6×16+14,所以用十六进制表示为6E.答案:A二、填空题6.用秦九韶算法求f(x)=2x3+x-3当x=3时的值v2=________.解析:f(x)=((2x+0)x+1)x-3,v0=2;v1=2×3+0=6;v2=6×3+1=19.答案:197.已知函数f(x)=x3-2x2-5x+6,用秦九韶算法,则f(10)=________.解析:f(x)=x3-2x2-5x+6=(x2-2x-5)x+6=[(x-2)x-5]x+6.当x=10时,f(10)=[(10-2)×10-5]×10+6=(8×10-5)×10+6=75×10+6=756.答案:7568.三进制数2022(3)化为六进制数为abc(6),则a+b+c=________.解析:2022(3)=2×33+0×32+2×31+2×30=62.三进制数2022(3)化为六进制数为142(6),所以a+b+c=7.答案:7三、解答题9.分别用辗转相除法和更相减损术求261,319的最大公约数.解:辗转相除法:319=261×1+58,261=58×4+29,58=29×2.所以319与261的最大公约数是29.更相减损术:319-261=58,261-58=203,203-58=145,145-58=87,87-58=29,58-29=29,所以319与261的最大公约数是29.10.已知函数f(x)=x3-3x2-4x+5,试用秦九韶算法求f(2)的值.解:根据秦九韶算法,把多项式改写成如下形式:f(x)=x3-3x2-4x+5=(x2-3x-4)x+5=((x-3)x-4)x+5.把x=2代入函数式得f(2)=((2-3)×2-4)×2+5=-7.B级能力提升1.m是一个正整数,对于两个正整数a,b,如果a-b是m的倍数,则称a,b对模m同余,用符号ab(MODm)表示,则下列各式中不正确的为()A.127(MOD5)B.2110(MOD3)C.3420(MOD2)D.477(MOD40)解析:逐一验证,对于A,12-7=5是5的倍数;对于B,21-10=11不是3的倍数;对于C,34-20=14是2的倍数;对于D,47-7=40是40的倍数.答案:B2.324,243,135三个数的最大公约数是________.解析:324=243×1+81,243=81×3,所以243与324的最大公约数是81.又135=81×1+54,81=54×1+27,54=27×2+0,所以135与81的最大公约数是27.答案:273.若二进制数10b1(2)和三进制a02(3)相等,求正整数a,b.解:因为10b1(2)=1×23+b×2+1=2b+9,a02(3)=a×32+2=9a+2,所以2b+9=9a+2,即9a-2b=7,因为a∈{1,2},b∈{0,1},所以当a=1时,b=1符合题意;当a=2时,b=不符合题意.所以a=1,b=1.