【正文】
或下劃線開頭,不能包含特殊符號,不能是關(guān)鍵字;變量能存儲的數(shù)據(jù)很多,包含存儲漢字,在Python中,定義變量是不需要指定數(shù)據(jù)類型的,但Python本身是有數(shù)據(jù)類型的,它的數(shù)據(jù)類型可分為數(shù)字型和非數(shù)字型;數(shù)據(jù)類型是可以強制轉(zhuǎn)換的;變量被第二次賦值后,會覆蓋原有的數(shù)據(jù),故本題選D選項。30.D【詳解】本題考查Python程序執(zhí)行輸出c=0。ab=7,a+b=21,a/b=2,a%b=0。故本題選D選項解析:D【詳解】本題考查Python程序執(zhí)行輸出c=0。ab=7,a+b=21,a/b=2,a%b=0。故本題選D選項二、程序填空31.price=int(input(請輸入消費額(整數(shù)):))if price 200: price=priceprice*else: price=priceprice*print(折扣后的應(yīng)付金額是:,price)【詳解】本題主要考查Python程序的執(zhí)行與調(diào)試。用鍵盤通過輸入函數(shù)input輸入消費額,并用int函數(shù)將其轉(zhuǎn)換為整數(shù)類型,通過if條件分支結(jié)構(gòu),判斷如果購買金額不高于200元,會給10%的折扣,如果購買金額高于200元,會給20%的折扣,最后用print輸出函數(shù)輸出折扣后的應(yīng)付金額。32.n[0:5] s=0 total=ss//x*y 【詳解】本題主要考查Python程序的執(zhí)行與調(diào)試。①此處通過條件分支結(jié)構(gòu)取字符串n的前5個字符,當(dāng)len(n)=5時,取n= n[0:5],即索引為0、4,故填n[0:5]。②用變量s統(tǒng)計消費合計,初值為0,故填s=0。③此處else部分處理1000元以下享受每滿100減15優(yōu)惠。應(yīng)付金額用total統(tǒng)計,變量r保存消費額度,x和y分別是滿和減,變量s是消費合計,故填total=ss//x*y。33.C D B D C 【詳解】本題主要考查Python程序調(diào)試。①Python程序for循環(huán)格式是:for 變量 in range( ),故程序中①處應(yīng)填寫in,選C選項。②程序中x%4的作用是計算x除以4的余數(shù),選D選項。③colors=[red, green, blue, yellow],依次循環(huán)從colors中取顏色,故執(zhí)行此程序,繪制出圓形的總顏色數(shù)是4,故本題選B選項。④x的范圍是從0到99,故執(zhí)行此程序,繪制出圓形的總個數(shù)是100個,選D選項。⑤此程序?qū)儆诔绦蛟O(shè)計結(jié)構(gòu)中的循環(huán)結(jié)構(gòu),選C選項。34.n*f(n1) range(1,n+1) s+f(i) 【詳解】本題主要考查Python程序的執(zhí)行與調(diào)試。①此處是定義遞歸函數(shù)f(n),由題干,當(dāng)n=0時,返回1,否則返回n*f(n1),故此處填n*f(n1)。②用遞歸算法求1!+2!+……+n!,故變量i的范圍應(yīng)是1—n,for i in range(1,n+1)表示i的范圍是[1,n],故此處填range(1,n+1)。③循環(huán)體實現(xiàn)累加,將每一項階乘f(i)加到s中,故此處填s+f(i)。35.①n=len(a) sum+=1或sum=sum+1 6 【詳解】本題主要考查Python程序調(diào)試與執(zhí)行。①變量n用來保存數(shù)組a的長度,使用len函數(shù),故此處填n=len(a)。②使用for循環(huán)統(tǒng)計出80分(含80)以上的人數(shù),用變量sum統(tǒng)計滿足條件的人數(shù),當(dāng)滿足if條件時,sum變量遞增,故此處填sum+=1或sum=sum+1。③執(zhí)行上述程序段后,sum=6,故輸出的內(nèi)容是6。36.max1 arr1[i] max1 【詳解】本題主要考查Python程序執(zhí)行與調(diào)試。變量max1用來保存數(shù)組的最大值,初始值賦值為最小值32768,第一空填max1,通過for循環(huán)依次比較當(dāng)數(shù)組元素大于max1時,更新max1的值為該元素繼續(xù)循環(huán)直到與所有元素比較完,第二空填arr1[i],最后輸出最大值是max1,故第三空填max1。37.m%n r r=m%n n gcd(a,b) 【詳解】本題主要考查Python程序設(shè)計。①首先對m和n求余得到r,判斷r是否為0,故此處填m%n。②如果r為0則結(jié)束,否則更新m的值為n,n的值為r。③此處用更新后的m和n繼續(xù)求r,繼續(xù)判斷,故填r=m%n。④循環(huán)結(jié)束后當(dāng)r=0時,n即為最大公約數(shù),故填n。⑤輸入a、b的值,使用函數(shù)gcd求a和b的最大公約數(shù),故填gcd(a,b)。38.for i in range(100,1000): a=i//100 b= (i//10)%10 c=i%10 if i==a*a*a+b*b*b+c*c*c: print(i)【詳解】本題主要考查程序設(shè)計??赏ㄟ^Python程序設(shè)計實現(xiàn)題干要求,通過for循環(huán)找出水仙花數(shù),依次取出三位數(shù)的每一位數(shù),其中百位a= i//100,十位b= (i//10)%10,個位c=i%10,然后判斷是否是水仙花數(shù),具體代碼如下:for i in range(100,1000): a=i//100 b= (i//10)%10 c=i%10 if i==a*a*a+b*b*b+c*c*c: print(i)39.n/(2*n1)或n/(n*21) i/(2*i1) 或 i/(i*21) 【詳解】本題主要考查Python程序的執(zhí)行與調(diào)試。①分析數(shù)列可知,分子第n項是n,分母第n項是2*n1,故該數(shù)列的通項公式f(n)=n/(2*n1)或n/(n*21)。②此處是對前n項進(jìn)行求和,變量是i,使用語句s=s+i/(2*i1) 或s=s+ i/(i*21),故此處填i/(2*i1) 或 i/(i*21)。40.total=0 變量可任選(符合規(guī)則) for i in range(1,101): total=total+i*i total=total+i**2 print(total) 【詳解】本題主要考查Python程序的編寫。①變量total用來統(tǒng)計最終的計算結(jié)果,其初始值為0,故填total=0 變量可任選(符合規(guī)則)。②求1+22+32+……+1002的結(jié)果,用for循環(huán)結(jié)構(gòu),變量i的范圍是從1到100,故填for i in range(1,101):。③計算語句是total=total+i*i total=total+i**2。④最后用print()函數(shù)輸出計算結(jié)果total,故填print(total)