计算机二级c语言30套模拟试题

发布时间 : 星期三 文章计算机二级c语言30套模拟试题更新完毕开始阅读

第1题 (30.0分) 题号:5

/*------------------------------------------------------ 【程序改错】

--------------------------------------------------------

功能:求如下表达式:

1 1 1

S = 1 + —— + ——— + ...... + ——————— 1+2 1+2+3 1+2+3+......+n ------------------------------------------------------*/

#include main() {

int n;

double fun();

printf(\ /**********FOUND**********/

print(\ printf(\}

/**********FOUND**********/

fun(int n) {

int i,j,t; double s; s=0;

/**********FOUND**********/

while(i=1;i<=n;i++); {

t=0;

for(j=1;j<=i;j++) t=t+j;

/**********FOUND**********/ =s+1/t;

} return s; }

答案:

=======(答案1)======= scanf(\

=======(答案2)======= double fun(int n)

=======(答案3)======= for(i=1;i<=n;i++) =========或========= for(i=1;n>=i;i++) =========或========= for(i=1;ii;i++) =======(答案4)======= s+=1.0/t;

=========或========= s= s + 1.0 /(float)t; =========或========= s= s + 1.0 /t;

=========或========= s+=1.0/(float)t; =========或========= s+=1.0/(double)t; =========或=========

13

s= s + 1.0 /(double)t;

三、程序设计 共1题 (共计40分) 第1题 (40.0分) 题号:329

/*------------------------------------------------ 【程序设计】

-------------------------------------------------- 功能:对某一正数的值保留2位小数,并对第三位进行四舍 五入。

------------------------------------------------*/ #include #include\void wwjt();

double fun(float h) {

/**********Program**********/

/********** End **********/ }

main() {

float m;

printf(\ scanf(\

printf(\

wwjt(); }

void wwjt() {

FILE *IN,*OUT; int s ; float t; double o;

IN=fopen(\ if(IN==NULL) {

printf(\ }

OUT=fopen(\ if(OUT==NULL) {

printf(\ }

for(s=1;s<=5;s++) {

fscanf(IN,\ o=fun(t);

fprintf(OUT,\ }

fclose(IN); fclose(OUT); }

答案:---------------------- int i;

i=(int)(h*1000); if(i>=5)

14

return(int)(h*100+1)/100.0; else

return(int)(h*100)/100.0; ----------------------

试卷编号:8109 所属语言:C语言

试卷方案:C语言期末模拟练习 试卷总分:100分 共有题型:3种

一、程序填空 共1题 (共计30分) 第1题 (30.0分) 题号:32

/*-------------------------------------------------------

【程序填空】

---------------------------------------------------------

功能:计算并输出500以内最大的10个能被13或17整除的自然数之和。

-------------------------------------------------------*/

#include #include

/***********SPACE***********/ int fun(【?】 ) {

int m=0, mc=0;

/***********SPACE***********/ while (k >= 2 && 【?】) {

/***********SPACE***********/

if (k == 0 || 【?】) {

m=m+k; mc++; } k--; }

/***********SPACE***********/ 【?】; }

main ( ) {

printf(\}

答案:

=======(答案1)======= int k

=======(答案2)======= mc < 10

=========或========= 10 > mc

=========或========= mc <= 9

=========或========= 9 >= mc

=======(答案3)======= k == 0

=========或========= !(k)

=========或========= k/17*17 == k

=======(答案4)=======

15

return m

=========或========= return (m)

二、程序改错 共1题 (共计30分) 第1题 (30.0分) 题号:431

/*------------------------------------------------------

【程序改错】

--------------------------------------------------------

功能:编写一个程序计算某年某月有几天。(注意要区分闰年) ------------------------------------------------------*/

#include void main() {

int yy,mm,len;

printf(\ scanf(\

/**********FOUND**********/ switch(yy) {

case 1: case 3: case 5: case 7: case 8: case 10: case 12:

len=31;

/**********FOUND**********/

break case 4: case 6: case 9: case 11:

len=30; break; case 2:

if (yy%4==0 && yy0!=0 || yy@0==0) len=29; else

len=28; break;

/**********FOUND**********/ default

printf(\ break; }

printf(\}

答案:

=======(答案1)======= switch(mm)

=======(答案2)======= break;

=======(答案3)======= default :

三、程序设计 共1题 (共计40分) 第1题 (40.0分) 题号:315

/*------------------------------------------------ 【程序设计】

16

联系合同范文客服:xxxxx#qq.com(#替换为@)