程序阅读及填空(答案)
全国计算机等级考试二级Python真题及解析5图文word程序填空阅读填空程序试题

全国计算机等级考试二级Python真题及解析5图文word程序填空阅读填空程序试题一、程序填空1.操作说明:编写一个程序实现以下功能,将程序以“Y:/3/3.py”作为文件名保存。
题目:设计100以内的数中能同时被3或5整除的个数。
2.冠军在A、B、C、D四位同学中。
A说:“不是我”,B说:“是C”,C说:“是D”, D说:“C说的不对”,已知四人中有一人说了假话。
判断出到底谁是冠军。
请在空格处填写正确的代码,使程序完善。
champion=['A','B','C','D'] #设置选手列表for i in__________: #循环读取选手编号cond=(i!='A') +(i=='C') + (i=='D')+(i!='D') #查找符合条件的选手if cond== _____: #说真话是否是3人print("冠军是:",_________) #输出冠军input("运行完毕,请按回车键退出...")3.程序补充:(1)有5万元资金存入银行,选择“1年定期.自动转存”的存款方式,由于银行利率是不断变化的,这5年利率分别是3.25%.3%.3%.2%.1.75%,5年后会有多少收益呢?调用round ()函数,保留结果两位小数。
money =_______________________________rate=_________________________________for_______________________________________________________________________print(“5年以后存款总额:”,money,“元”)(2)某投资者购买了10万元一年期收益率3.7%的银行保证收益型理财产品。
程序阅读及填空(答案)

一.程序阅读题1.若运行时输入100↙,写出以下程序的运行结果。
main (){int a ;scanf(“%d”,&a);printf(“%s”,(a%2!=0)?”No”:"Yes”);}答案: Yes2。
写出以下程序的运行结果.main ( ){ int a=2,b=7,c=5;switch (a>0) {case 1:switch (b<0) {case 1:printf(“@”);break ;case 2:printf(“!”);break ;}case 0:switch (c==5){case 1:pritnf(“*”) ; break ;case 2: printf(“#”);break ;default :printf(“#");break ;}default :printf(“&”);}printf(“\n”);}答案: *&3。
写出下面程序运行的结果。
main ( ){ int i,b,k=0 ;for (i=1; i〈=5 ;i++){b=i%2;while (b——==0)k++ ;}printf(“%d,%d”,k,b);}答案:2 04.写出下面程序运行的结果。
main (){ int k=1,n=263 ;do { k*= n%10 ; n/=10 ;} while (n);printf(“%d\n",k);}答案:365.写出下面程序运行的结果。
main (){int a=10,y=0 ;do {a+=2 ; y+=a ;if (y〉50)break ;} while (a=14) ;printf(“a=%d y=%d\n",a,y) ;}答案:a=16 y=60数组部分:1。
写出下面程序的运行结果.main ()答案:{int a[6][6],i,j ;for (i=1; i<6 ; i++)for (j=1 ;j<6 ; j++)a[i][j]=(i/j)*(j/i);for (i=1;i〈6 ;i++) {for (j=1 ; j〈6 ; j++)printf(“%2d",a[i][j]) ;printf(“\n");}}2。
试题python试题答案程序填空阅读填空程序试题

试题python试题答案程序填空阅读填空程序试题一、程序填空1.猴子吃桃问题:猴子第一天摘下若干个桃子,当即吃了一半,还不瘾,又多吃了一个第二天早上又将剩下的桃子吃掉一半,又多吃了一个。
以后每天早上都吃了前一天剩下的一半零一个。
到第10天早上想再吃时,见只剩下一个桃子了。
求第一天共摘了多少。
2.请在空格处填写正确的代码,使程序完善。
实现功能:绘制y=x2-2x+ 1的图像#加载numpy模块并限简洁的别名为npimport numpy as np#加载matplotlib.pyplot模块并限简洁的别名为pltimport matplotlib.pyplot as plt#x在-7到9之间,每隔0.1取一个点x=np.arange(-7,9,0.1)_____ = x**2-2*x+1plt.plot(x,________)plt.title('y=x*x-2*x+1')plt.xlabel('x')plt.ylabel('y')plt._________3.完善程序。
以下是猜数游戏的程序,请在画线出填写正确的内容。
import randomsecret=random.randint(0,10)print(“---猜数游戏 -----”)cs=int(input(“你猜的数字是”))while cs!=secret:_______cs>secret:_________ (“唉,猜大啦!”)__________:print(“嘿嘿,猜小了!”)cs= int(input(“重新猜一个靠谱的数字是:”))print(“游戏结束,不玩了!”)4.调试程序。
请阅读以下程序并写出运行结果。
#ex16.pyi=0sum=0while i<10:if i%3==0:sum+=iprint(i)i=i+1print('sum',sum)_________5.编写程序,用*打印一个如下所示的等腰直角三角形,将测试结果截图。
C语言程序设计程序填空题库及答案

程序填空题导读:在程序填空题中,已经给出了程序的主干,读者首先要理解程序的思路,再选择正确的内容填入空白处,使程序完成既定的功能。
这类习题的设计就是要引导读者逐步掌握编程的方法。
本节习题的难度适中,可能有些典型的程序在课堂上已经有所接触,读者一定要独立完成它,这样就可以逐步提高自己的编程能力。
在程序设计语言学习的中期,读者对程序设计已经有了初步的了解,而自己编写程序又不知从何处入手,此时解答此类题目可以避免盲目性,从而提高学习的效率。
【】下面程序的功能是不用第三个变量,实现两个数的对调操作。
#include<>main(){inta,b;scanf("%d%d",&a,&b);printf("a=%d,b=%d\n",a,b);a=①;b=②;a=③;printf("a=%d,b=%d\n",a,b);}【】下面程序的功能是根据近似公式:π2/6≈1/12+1/22+1/32+……+1/n2,求π值。
#include<>doublepi(longn){doubles=;longi;for(i=1;i<=n;i++)s=s+①;return(②);}【】下面的程序的功能是求一维数组中的最小元素。
findmin(int*s,intt,int*k){intp;for(p=0,*k=p;p<t;p++)if(s[p]<s[*k])①;}main(){inta[10],i,*k=&i;for(i=0;i<10;i++)scanf("%d",&a[i]);findmin(a,10,k);printf("%d,%d\n",*k,a[*k]);}【】下面程序的功能是计算1-3+5-7+……-99+101的值。
main(){inti,t=1,s=0;for(i=1;i<=101;i+=2){①;s=s+t;②;}printf("%d\n",s);}【】有以下程序段:s=;for(k=1;k<=n;k++)s=s+(k*(k+1));填空完成下述程序,使之与上述程序的功能完全相同。
程序阅读及填空

程序阅读及填空1.当运行以下程序时,从键盘输入:BOOK<回车>CUT<回车>GAME<回车>PAGE<回车>则下面程序的运行结果是。
#include <stdio.h>#include <string.h>int main( ){ int i;char str[10] , temp[10] = "Control" ;for(i=0;i<4;i++ ){ gets(str) ;if (strcmp(temp,str)<0) strcpy(temp,str);}puts(temp);2.以下程序的功能是:输出x、y、z三个数中的最大者。
请填空。
#include<stdio.h>int main( ){int x=4,y=6,z=7;int ;if()u=x;else u=y;if( )v=u;else v=z;printf(“v=%d”,v);return 0;}3.以下程序的运行结果是#include <stdio.h>int main( ){int x1=0xabc,x2=0xdef;x2-=x1;printf(“%X\n”,x2);return 04.以下程序的功能是:输入一个小写字母,将字母循环后移5个位置后输出。
例如’a’变成’f’,’w’变成'b'。
请填空。
#include <stdio.h>int main(){ char c;c=getchar( );if(c>=’a’ && c<=’u’) ;else if(c>=’v’ && c<=’z’) ;putchar(c);5.下面程序的运行结果是。
#include <stdio.h>int main( ){int a[]={1,2,3,4,5,6,7,8,9,10},i,k;for(i=9;i>=2;i--)a[i] =a[i-2];for(i=0;i<10;i++) printf("%d”,a[i]);}6.下面程序段的运行结果是。
计算机等级考试练习题

4.阅读下列程序并回答问题,在每小题提供的若干可选答案中,挑选一个正确答案。
【程序】
#include <stdio.h>
#define T(a,b) ((a)!=(b))?((a)>(b)?1:-1):0
else printf(“Congratulation!You guess %d time,the number is %d\n”,count,n);
}
4.利用循环语句编写程序,计算11+111+211+311+……+2011并输出结果。
5.设有未完成的函数:
Char getchar(char c)
#include<stdio.h>
#include<stdlib.h>
int Guess(int n)
{
}
void main()
{ int n,count;
n=rand()%1000+1;
count=Guess(n);
if(count==0)printf(“Sorry,you are failed!\n”);
}
main()
{ printf("%d %d %d\n",T(4,5),T(10,10),T(5,4));
printf("%d\n",f1());
f2(4);
printf("%.1f\n",f3(5));
}
【问题】
(13)程序运行时,第1行输出(13)。
c语言程序阅读填空、运行结果、改错题

三、读程序题1、float f=3.1415927;printf(“%f,%5.4f,%3.3f”,f,f,f);则程序的输出结果是3.141593,3.1416,3.142 .2、int x=6,y=7;printf(“%d,”,x++);printf(“%d\n”,++y);程序的输出结果是6,83、a=3;a+=(a<1)?a:1;printf(“%d”,a);结果是. 44、for (a=1,b=1;a<=100;a++){ if(b>=20)break;if(b%3==1){b+=3;continue;}b-=5;}程序的输出结果a的值为22 .5、int y=1,x,*p,a[ ]={2,4,6,8,10};p=&a[1];for(x=0;x<3;x++)y + = * (p + x);printf(“%d\n”,y);四、程序填空题1、从键盘上输入10个数,求其平均值。
main(){int i;float f,sum;for(i=1,sum=0.0;i<11;i++){ scanf(“%f”,&f);Sum+=f ;}printf(“average=%f\n”,sum/10);}2、以下程序是建立一个名为myfile的文件,并把从键盘输入的字符存入该文件,当键盘上输入结束时关闭该文件。
#include <stdio.h>main(){ FILE *fp;char c;fp= ;do{c=getchar();fputs(c,fp);}while(c!=EOF);3、以下程序的功能是:从键盘上输入若干个学生的成绩,统计并输出最高成绩和最低成绩,当输入负数时结束输入。
请填空。
main()scanf(“%f”,&x);amax=x;amin=x;while(x>=0.0 ){ if(x>amax)amax=x;if(x<=amin )amin=x;scanf(“%f”,&x);}printf(“\namax=%f\namin=%f\n”,amax,amin);} 三、阅读程序题(1)3.141593,3.1416,3.142(2)6,8(3)4(4)22(5)19四、程序填空题1、scanf(“%f”,&f);sum+=f;2、fopen(“myfile”,w)fclose(fp);3、x>=0.0 x<=amin三、阅读程序题1、int x=6,y=7;printf(“%d,”,x++);printf(“%d\n”,++y);程序的输出结果是______.2、float f=3.1415927;printf(“%f,%5.4f,%3.3f”,f,f,f);3、a=3;a+=(a<1)a:1;printf(“%d”,a);结果是______.4、main(){ int a[5]={2,4,6,8,10},*P,* *k;p=a;k=&p;printf(“%d,”,*(p++));printf(“%d\n”,* *k);程序的输出结果是______.5、main(){int a,b;for (a=1,b=1;a<=100;a++){ if(b>=20)break;if(b%3==1){b+=3;continue;}b-=5;} }程序的输出结果a的值为______.四、程序填空题1、求主次对角线之和。
试题全国计算机等级考试二级Python真题及解析5程序填空阅读填空程序试题

试题全国计算机等级考试二级Python真题及解析5程序填空阅读填空程序试题一、程序填空1.“百鸡百钱”问题是一个有名的数学问题,出自《张丘建算经》。
其内容是:公鸡5文钱1只,母鸡3文钱1只,小鸡3只1文钱,用100文钱买100只鸡,其中公鸡、母鸡和小鸡都必须要有,问公鸡、母鸡和小鸡各多少只?打开文件“考生文件夹\644\百鸡百钱.py”,完善程序实现以下功能并保存。
(1)请不要更改源程序的结构,删除原题里的①、②、③。
填写正确的代码,使程序完善。
(2)运行程序,运行结果如图所示。
# 请不要更改源程序的结构,删除原题里的①、②、③。
填写正确的代码,使程序完善money=100 #一共100文钱num=100 #一共100只鸡cock_price=5 #公鸡价格5文hen_price=3 #母鸡价格3文threechick_price=1 #3只小鸡1文for cock_num in range(1,money//cock_price+1): #公鸡只数可能为1-20 for hen_num in range(1,①________): #母鸡只数可能为1-33for chick_num in range(1,②________): #(3小鸡)只数可能为1-100money1=cock_num*cock_price+hen_num*hen_price+chick_num*threechick_pricenum1=cock_num+hen_num+chick_num*3if money1==money and num1==num:print (cock_num,hen_num,③________) #(③小鸡数)input("运行完毕,请按回车键退出...")2.请在空格处填写正确的代码,使程序完善。
实现功能:用辗转相除法求解两个正整数的最大公约数。
x = int(input('请输入第一个正整数:'))y = int(input('请输入第二个正整数:'))m = max(x,y) #找出x,y中的最大值n = min(x,y) #找出x,y中的最小值r = m%n #求得最大值除以最小值后的余数while r!=0: #如果余数不等0,则进行以下循环m =________ #把最小值赋给mn =_________ #把余数赋给nr = m%n #求得最大值除以最小值后的余数print('这两个数的最大公约数为:',______)input("运行完毕,请按任意键退出....")3.冠军在A、B、C、D四位同学中。
- 1、下载文档前请自行甄别文档内容的完整性,平台不提供额外的编辑、内容补充、找答案等附加服务。
- 2、"仅部分预览"的文档,不可在线预览部分如存在完整性等问题,可反馈申请退款(可完整预览的文档不适用该条件!)。
- 3、如文档侵犯您的权益,请联系客服反馈,我们会尽快为您处理(人工客服工作时间:9:00-18:30)。
一.程序阅读题1.若运行时输入100↙,写出以下程序的运行结果。
main ( ){ int a ;scanf(“%d”,&a);printf(“%s”,(a%2!=0)?”No”:”Yes”);}答案: Yes2.写出以下程序的运行结果。
main ( ){ int a=2,b=7,c=5;switch (a>0) {case 1: switch (b<0) {case 1: printf(“”); break ;case 2: printf(“!”); break ;}case 0: switch (c==5) {case 1: pritnf(“*”) ; break ;case 2: printf(“#”) ; break ;default : printf(“#”) ; break ;}default : p rintf(“&”);}printf(“\n”);}答案: *&3.写出下面程序运行的结果。
main ( ){ int i,b,k=0 ;for (i=1; i<=5 ; i++) {b=i%2;while (b--==0) k++ ;}printf(“%d,%d”,k,b);}答案:2 04.写出下面程序运行的结果。
main ( ){ int k=1,n=263 ;do { k*= n%10 ; n/=10 ; } while (n) ;printf(“%d\n”,k);}答案:365.写出下面程序运行的结果。
{ int a=10,y=0 ;do {a+=2 ; y+=a ;if (y>50) break ;} while (a=14) ;printf(“a=%d y=%d\n”,a,y) ;}答案:a=16 y=60数组部分:1.写出下面程序的运行结果。
main ( )答案:{ int a[6][6],i,j ;for (i=1; i<6 ; i++)for (j=1 ; j<6 ; j++)a[i][j]=(i/j)*(j/i) ;for (i=1;i<6 ; i++) {for (j=1 ; j<6 ; j++)printf(“%2d”,a[i][j]) ;printf(“\n”);}}2.写出下面程序的运行结果。
main ( ){ int i=0;char a[ ]=”abm”, b[ ]=”aqid”, c[10];while (a[i]!=’\0’ && b[i]!=’\0’) {if (a[i]>=b[i]) c[i]=a[i]-32 ;else c[i]=b[i]-32 ;i++;}c[i]=’\0’;puts(c);}答案:AQM3.当运行下面程序时,从键盘上输入AabD↙,则写出下面程序的运行结果。
main ( ){ char s[80];int i=0;gets(s);while (s[i]!=’\0’) {if (s[i]<=’z’ && s[i]>=’a’)s[i]=’z’+’a’-s[i] ;i++;puts(s);}答案:AzyD二.程序判断题1.下面程序将输入的大写字母改写成小写字母输出,其他字符不变;请判断下面程序的正误,如果错误请改正过来。
main ( ){ char c;c = getchar ( ) ;c = (c>=’A’ | | c<=’Z’) ? c-32 : c+32 ;printf(“%c”,c);}答案: c = (c>=’A’ | | c<=’Z’) ? c-32 : c+32 ; 改为:c = (c>='A'&& c<='Z') ? c+32 : c ;2.下面程序输入两个运算数x,y和一个运算符号op,然后输出该运算结果的值,例如输入3+5↙得到结果8;请判断下面程序的正误,如果错误请改正过来。
main ( ){float x,y,r;char op ;scanf(“%f%c%f”,&x,&op,&y);switch (op) {case ‘+’ : r=x+y ;case ‘-’ : r=x-y ;case ‘*’ : r=x*y ;case ‘/’ : r=x/y ;}printf(“%f”,r);}答案: 每个Case 分之后面加Break;三.程序填空题1、以下程序输出x,y,z三个数中的最小值,请填(2)空使程序完整。
main ( ){ int x=4,y=5,z=8 ;int u,v;u = x<y ? 【1 】;v = u<z ? 【2 】;printf (“%d”,v);}答案: 【1】x:y 【2】u:z2、下述程序用“碾转相除法”计算两个整数m和n的最大公约数。
该方法的基本思想是计算m和n相除的余数,如果余数为0则结束,此时的被除数就是最大公约数。
否则,将除数作填(3)空使程序完整。
main ( ){ int m,n,w;scanf(“%d,%d”,&m,&n);while (n) {w=【1 】;m=【2 】;n=【3 】;}printf(“%d”,m);}答案:【1】w=m%n; 【2】m=n; 【3】n=w;3、下面程序的功能是输出1至100之间每位数的乘积大于每位数的和的数,请填(3)空使程序完整。
main ( ){ int n,k=1,s=0,m ;for (n=1 ; n<=100 ; n++) {k=1 ; s=0 ;【1 】;while (【2 】) {k*=m%10;s+=m%10;【3 】;}if (k>s) printf(“%dd”,n);}}答案:【1】m=n; 【2】m!=0 【3】m=m/10;4、下面程序按公式(课本169页习题6.5)求和并输出结果,请填(3)空使程序完整。
main ( ){【1 】;int k ;for (k=1 ; k<=100 ; k++)s+=k ;for (k=1 ; k<=50 ; k++)s+=k*k ;for (k=1 ; k<=10 ; k++)s+=【2 】;printf(“sum=【3 】”,s);}答案:【1】float s=0; 【2】1/k 【3】%f数组部分:一、程序判断:1.下面程序为数组输入数据并输出结果;判断下面程序的正误,如果错误请改正过来。
main ( ){ int a[3]={3*0} ;int i;for (i=0; i<4; i++) scanf(“%d”,&a[i]);for (i=0; i<4; i++) printf(“%d”,a[i]);}答案: for (i=0; i<3; i++) (只有3个数组元素,下标0~2)2.下面程序为数组输入数据并输出结果;判断下面程序的正误,如果错误请改正过来。
main ( ){ int a[3]={1,2,3} , i;scanf(“%d%d%d”,&a);for (i=0; i<3; i++) printf(“%d”,a[i]);}答案:scanf("%d%d%d",&a[0],&a[1],&a[2]);3.下面程序的功能是:先将在字符串s中的字符按逆序存放到t串中,然后把s中的字符按正序连接到t串的后面。
例如,当s中的字符串为:“ABCDE”时则t中的字符串应为:“EDCBAABCDE”;判断下面程序的正误,如果错误请改正过来。
main ( ){ char s[80],t[200]; int i,sl ;gets(s); sl = strlen(s);for (i=0; i<sl; i++) t[i] = s[sl-i]; 改为:t[i] = s[sl-i-1];for (i=0; i<sl; i++) t[sl+i] = s[i];t[s1+i]='\0'; 加上语句:t[s1+i]='\0';puts(t);}答案:见右边修改语句4.下面程序的功能是:将n各无序整数从小到大排序;判断下面程序的正误,如果错误请改正过来。
main ( ){ int a[100], i, j, p, t, n=20 ;for (j = 0; j<n ; j++) scanf(“%d”, &a[j]), 改为:;for (j = 0;j<n-1 ; j++){ p = j;for ( i=j+1; i<n-1 ; i++ ) n-1 改为:nif (a[p]>a[i]) t=i; t 改为:pif (p!=j){ t = a[j]; a[j] = a[p]; a[p]=t; }}for ( j = 0; j<n ; j++ ) printf(“%d ”, &a[j]);}答案:见右边修改语句aaas lkaaas ,子字符串为as ,则应输出2main ( ) { char substr[80],str[80]; int i,j,k,num=0; gets(substr); gets(str); for (i = 0, str[i], i++) for (j=i,k=0;substr[k]==str[j];k++,j++) if (substr[k+1]!=’\0’) { num++; break; } printf(“num=%d”, num); } 答案: 程序修改如右框所示。
二、程序填空题1.下面程序可求出矩阵a 的主对角线上的元素之和,请填(2)空使程序完整。
main ( ){ int a[3][3]={1,3,5,7,9,11,13,15,17} , sum=0, i, j ;for (i=0 ; i<3 ; i++)for (j=0 ; j<3 ; j++)if (【1 】)sum=sum+【2 】;printf(“sum=%d”,sum);}答案: 【1】i= =j 【2】a[i][j]2.下面程序将十进制整数base 转换成n 进制,请填(3)空使程序完整。
main ( ) { int i,base,n,j,num[20] ; scanf(“%d”,&n); scanf(“%d”,base) ; do { i++; num[i]=【1 】; n =【2 】; } while (n!=0); for (【3 】) ; printf(“%d”,num[j]) ; }答案: 此程序有点小错误,红色文字为改正错误,蓝色文字为填空答案.3.下面程序的功能是输入10个数,找出最大值和最小值所在的位置,并把两者对调,然后输出调整后的10个数,请填(3)空使程序完整。