程序填空.docx
- 文档编号:15594127
- 上传时间:2023-07-05
- 格式:DOCX
- 页数:194
- 大小:61.33KB
程序填空.docx
《程序填空.docx》由会员分享,可在线阅读,更多相关《程序填空.docx(194页珍藏版)》请在冰点文库上搜索。
程序填空
一、程序填空共129题
第1题题号:
426
/*-------------------------------------------------------
【程序填空】
---------------------------------------------------------
功能:
百马百担问题:
有100匹马,驮100担货,大马驮三担,中
马驮2担,两匹小马驮一担,求大、中、小马各多少匹?
-------------------------------------------------------*/
#include
main()
{
inthb,hm,hl,n=0;
/***********SPACE***********/
for(hb=0;hb<=100;hb+=【?
】)
/***********SPACE***********/
for(hm=0;hm<=100-hb;hm+=【?
】)
{
/***********SPACE***********/
hl=100-hb-【?
】;
/***********SPACE***********/
if(hb/3+hm/2+2*【?
】==100)
{
n++;
printf("hb=%d,hm=%d,hl=%d\n",hb/3,hm/2,2*hl);
}
}
printf("n=%d\n",n);
}
答案:
1).3
2).2
3).hm
4).hl
第2题题号:
15
/*-------------------------------------------------------
【程序填空】
---------------------------------------------------------
功能:
分别求出一批非零整数中的偶数、奇数的平均值,用零作
为终止标记。
-------------------------------------------------------*/
#include
main()
{
intx,i=0,j=0;
floats1=0,s2=0,av1,av2;
scanf("%d",&x);
/***********SPACE***********/
while(【?
】)
{
if(x%2==0)
{
s1=s1+x;
i++;
}
/***********SPACE***********/
【?
】
{
s2=s2+x;
j++;
}
/***********SPACE***********/
【?
】;
}
if(i!
=0)
av1=s1/i;
else
av1=0;
if(j!
=0)
/***********SPACE***********/
【?
】;
else
av2=0;
printf("oushujunzhi:
%7.2f,jishujunzhi:
%7.2f\n",av1,av2);
}
答案:
1).x!
=0或x
2).else或elseif(x%2==1)或elseif(x%2!
=0)或if(x%2)
3).scanf("%d",&x)
4).av2=s2/j
第3题题号:
468
/*-------------------------------------------------------
【程序填空】
---------------------------------------------------------
功能:
对一数组进行逐步累加求和,prefix代表从前向后累加值,
suffix代表从后向前累加值,问在此过程中prefix与suffix
有几次值相同?
-------------------------------------------------------*/
#include
inthead_tail(intx[],intn)
{
intprefix=0,suffix=0;
intprefix_idx=0,suffix_idx=n-1;
intcount=0;
while(suffix_idx>=0&&prefix_idx<=n-1)
/***********SPACE***********/
if(【?
】)
prefix+=x[prefix_idx++];
elseif(prefix>suffix)
/***********SPACE***********/
suffix+=x[【?
】];
else
{
/***********SPACE***********/
【?
】;
prefix+=x[prefix_idx++];
suffix+=x[suffix_idx--];
}
returncount;
}
#include
voidmain(void)
{
intx[]={3,6,2,1,4,5,2};
intn=sizeof(x)/sizeof(int);
inti;
printf("\nHeadSum==TailSumCountingProgram");
printf("\n=====================================\n");
printf("\nGivenArray:
");
for(i=0;i printf("%5d",x[i]); printf("\n\nThereare%dequalPrefix-Suffixsumpairs.",head_tail(x,n)); } 答案: 1).prefix 2).suffix_idx--或suffix_idx=suffix_idx-1或--suffix_idx 3).count++或count=count+1 第4题题号: 452 /*------------------------------------------------------- 【程序填空】 --------------------------------------------------------- 功能: 从键盘输入若干行字符,输入后把他们存储到一磁盘文件 中。 在从该文件中读出这些数据,将其中的小写字母转换 成大写字母后在屏幕上输出。 -------------------------------------------------------*/ #include #include #defineN100 main() { FILE*fp; charc,*p,s[N][20]; inti,n; printf("n=");scanf("%d",&n); /***********SPACE***********/ if(n<1【? 】n>N)exit(0); printf("input%dstring: \n",n); for(i=0;i scanf("%s",s[i]); /***********SPACE***********/ fp=fopen("text",【? 】); for(i=0;i { p=s[i]; while(*p! ='\0') /***********SPACE***********/ if(! ferror(fp))fputc(【? 】,fp); } fclose(fp); printf("\n"); /***********SPACE***********/ fp=fopen("text",【? 】); while((c=fgetc(fp))! =EOF) { if(c>'a'&&c<='z')c=+32; putchar(c); } printf("\n"); fclose(fp); } 答案: 1).|| 2)."w" 3).*p++ 4)."r" 第5题题号: 423 /*------------------------------------------------------- 【程序填空】 --------------------------------------------------------- 功能: 考查字符串数组的应用。 输出26个英文字母。 -------------------------------------------------------*/ #include voidmain(void) { charstring[256]; inti; /***********SPACE***********/ for(i=0;i<26;【? 】) /***********SPACE***********/ string[i]=【? 】; string[i]='\0'; /***********SPACE***********/ printf("thearrarycontains%s\n",【? 】); } 答案: 1).i++或++i或i=i+1或i+=1 2).'A'+i或i+'A'或65+i或i+65 3).string 第6题题号: 481 /*------------------------------------------------------- 【程序填空】 --------------------------------------------------------- 功能: 一个自然数被8除余1,所得的商被8除也余1,再 将第二次的商被8除后余7,最后得到一个商为a。 又知这 个自然数被17除余4,所得的商被17除余15,最后得到一 个商是a的2倍。 编写程序求这个自然数。 -------------------------------------------------------*/ #include main() { inti,n,a; i=0; while (1) { if(i%8==1) { n=i/8; if(n%8==1) { n=n/8; /***********SPACE***********/ if(n%8==7)【? 】; } } if(i%17==4) { n=i/17; if(n%17==15)n=n/17; } if(2*a==n) { printf("result=%d\n",i); /***********SPACE***********/ 【? 】; } /***********SPACE***********/ 【? 】; } } 答案: 1).a=n/8 2).break 3).i++或++i或i=i+1 第7题题号: 450 /*------------------------------------------------------- 【程序填空】 --------------------------------------------------------- 功能: 一个40磅重的板碎成4块,每块正好是一个整数磅,且用这 4块当砝码能称出1~40磅的整数重量的物体。 编程求这4块 的各自重量。 -------------------------------------------------------*/ #include #include main() { inti,j,k,l,p,t1,t2,t3,t4; for(i=1;i<38;i++) /***********SPACE***********/ for(【? 】;j<38-i;j++) /***********SPACE***********/ for(k=j;k<【? 】;k++) { l=40-i-j-k; for(p=1;p<40;p++) { for(t1=-1;t1<2;t1++) for(t2=-1;t2<2;t2++) for(t3=-1;t3<2;t3++) for(t4=-1;t4<2;t4++) /***********SPACE***********/ if(【? 】==p)gotonext; break; /***********SPACE***********/ next: if(p==【? 】) { printf("%d,%d,%d,%d\n",i,j,k,l); exit(0); } } } printf("error."); } 答案: 1).j=i 2).39-i-j或39-i-j 3).i*t1+j*t2+k*t3+l*t4或i*t1+j*t2+k*t3+l*t4 4).39 第8题题号: 428 /*------------------------------------------------------- 【程序填空】 --------------------------------------------------------- 功能: 输入一个学生的生日(年: y0、月: m0、日: d0),并输 入当前日期(年: y1、月: m1、日: d1)。 求出该学生的 年龄(实足年龄)。 -------------------------------------------------------*/ #include main() {intage,y0,y1,m0,m1,d0,d1; printf("输入生日日期(年,月,日)"); /***********SPACE***********/ 【? 】("%d,%d,%d",&y0,&m0,&d0); printf("输入当前日期(年,月,日)"); scanf("%d,%d,%d",&y1,&m1,&d1); age=y1-y0; /***********SPACE***********/ if(m0【? 】m1)age--; /***********SPACE***********/ if((m0【? 】m1)&&(d0>d1))age--; printf("age=%3d",age); } 答案: 1).scanf 2).> 3).== 第9题题号: 466 /*------------------------------------------------------- 【程序填空】 --------------------------------------------------------- 功能: 用二分法求方程2X^3+4X^2+3X-6=0在(-10,10)之间的根 其中X^n代表X的n次方。 -------------------------------------------------------*/ #include #include main() { floatx0,x1,x2,fx0,fx1,fx2; do { printf("Enterx1&x2: "); scanf("%f,%f",&x1,&x2); fx1=x1*((2*x1-4)*x1+3)-6; fx2=x2*((2*x2-4)*x2+3)-6; /***********SPACE***********/ }while(fx1*fx2【? 】); do { x0=(x1+x2)/2; fx0=x0*((2*x0-4)*x0+3)-6; /***********SPACE***********/ if(fx0*fx1【? 】) { x2=x0; fx2=fx0; } else { x1=x0; fx1=fx0; } } /***********SPACE***********/ while(【? 】>=1e-5); printf("x=%6.2f\n",x0); } 答案: 1).>0 2).<0 3).fabs(fx0) 第10题题号: 614 /*------------------------------------------------------- 【程序填空】 --------------------------------------------------------- 题目: 以下程序的功能是: 输出a、b、c三个变量中的最小值。 -------------------------------------------------------*/ #include main() { inta,b,c,t1,t2; /***********SPACE***********/ scanf("%d%d%d",&a,&b,【? 】); t1=a a: b; /***********SPACE***********/ t2=c 【? 】; printf("%d\n",t2); } 答案: 1).&c 2).c: t1 第11题题号: 443 /*------------------------------------------------------- 【程序填空】 --------------------------------------------------------- 功能: 企业发放的奖金根据利润提成。 利润(i)低于或等于10万元 时,奖金可提10%;利润高于10万元,低于20万元时,低于 10万元的部分按10%提成,高于10万元的部分,可可提成7.5% ;20万到40万之间时,高于20万元的部分,可提成5%;40万 到60万之间时高于40万元的部分,可提成3%;60万到100万 之间时,高于60万元的部分,可提成1.5%,高于100万元时, 超过100万元的部分按1%提成,从键盘输入当月利润i,求 应发放奖金总数? -------------------------------------------------------*/ #include main() { longinti; doublebonus1,bonus2,bonus4,bonus6,bonus10,bonus; scanf("%ld",&i); bonus1=100000*0.1;bonus2=bonus1+100000*0.75; bonus4=bonus2+200000*0.5; bonus6=bonus4+200000*0.3; bonus10=bonus6+400000*0.15; if(i<=100000) bonus=i*0.1; /***********SPACE***********/ elseif(【? 】) bonus=bonus1+(i-100000)*0.075; /***********SPACE***********/ elseif(【? 】) bonus=bonus2+(i-200000)*0.05; /***********SPACE***********/ elseif(【? 】) bonus=bonus4+(i-400000)*0.03; elseif(i<=1000000) bonus=bonus6+(i-600000)*0.015; else bonus=bonus10+(i-1000000)*0.01; /***********SPACE***********/ 【? 】("bonus=%d",bonus); } 答案: 1).i<=200000或200000>=i 2).i<=600000或600000>=i 3).i<=1000000或1000000>=i 4).printf 第12题题号: 442 /*------------------------------------------------------- 【程序填空】 --------------------------------------------------------- 功能: 将长整型数中每一位上为奇数的数依次取出,构成一个新数 放在t中。 高位仍在高位,低位仍在低位。 -------------------------------------------------------*/ #include #include voidfun(longs,long*t) { intd; longsl=1; /***********SPACE***********/ 【? 】=0; while(s>0) { /***********SPACE***********/ d=【? 】; if(d%2) { /***********SPACE***********/ *t=【? 】+*t; /***********SPACE***********/ sl【? 】10; } s/=10; } } main() { longs,t; printf("\nPleaseenters: ");scanf("%ld",&s); fun(s,&t); printf("Theresultis: %ld\n",t); } 答案: 1).*t 2).s%10 3).d*sl或sl*d 4).*=或=s* 第13题题号: 408 /*---------------------------------------------
- 配套讲稿:
如PPT文件的首页显示word图标,表示该PPT已包含配套word讲稿。双击word图标可打开word文档。
- 特殊限制:
部分文档作品中含有的国旗、国徽等图片,仅作为作品整体效果示例展示,禁止商用。设计者仅对作品中独创性部分享有著作权。
- 关 键 词:
- 程序 填空
![提示](https://static.bingdoc.com/images/bang_tan.gif)