浙江省二级C语言笔试真题(2007-2010年)(7)

2019-03-27 18:28

(19) 将第16行改为“;”后,程序运行时,输入A*0#,输出 (19) 。 A、0 B、120 C、10 D、12

(20) 将第16行改为“else break;”后,删除第15行,程序运行时,输入1b0#,输出 (20) 。

A、10 B、12 C、276 D、1

试题6(每小题3分,共12分)

#include main()

{ char *s[2] = {”****”, ”****”}; while(*s[1] != ?\\0?){

printf(”%s\\n”, s[0]+strlen(s[1])-1); s[1]++; } }

(21) 程序运行时,第1行输出 (21) 。

A、**** B、*** C、** D、*

(22) 程序运行时,第2行输出 (22) 。

A、**** B、***

C、** D、*

(23) 程序运行时,第3行输出 (23) 。

A、**** B、***

C、** D、*

(24) 程序运行时,第3行输出 (24) 。

A、**** B、***

C、** D、*

试题7 (28分)

(5) 定义函数fact(n)计算n的阶乘:n!=1*2*??*n,函数返回值类型是double。

n(6) 定义函数cal(m, n)计算累加和:s??k?m?(m?1)?......?n,函数返回

k?m值类型是double。

(7) 定义函数main(),输入正整数n,计算并输出下列算式的值。该算式中,每一项

n的分子是累加和,要求调用函数cal(m,n)计算?k;每一项的分母是阶乘,要

k?m求调用函数fact(n)计算n!。

(8) y=1+

1?22!?1?2?33!?......?1?2?......?nn!

计算机等级考试参考答案(二级C)

试题1~6 (每小题3分)

⑴ A ⑵ B ⑶ C ⑷ D ⑸ D ⑹ C ⑺ B ⑻ A ⑼ A ⑽ B ⑾ C ⑿ D ⒀ D ⒁ D ⒂ A ⒃ A ⒄ C ⒅ C ⒆ B ⒇ B (21)D (22)C (23)B (24)A

31

试题7 (28分)

#include double fact(int n) {

int i;

double p=1;

for(i=1;i<=n;i++) p*=i; return(p); }

double cal(int m,int n) {

int i;

double s=0; for(i=m;i<=n;i++) s+=i; return(s); }

void main() {

int i,n;

double y=0;

printf(\ scanf(\ for(i=1;i<=n;i++)

y+=cal(1,i)/fact(i);

printf(\}

2007年秋浙江省高等学校计算机等级考试试卷(二级C)

试题1(每小题3分,共12分)

阅读下列程序说明和程序,在每小题提供的若干可选答案中,挑选一个正确答案。 【程序说明】

输入2个整数lower和upper,输出一张华氏-摄氏温度转换表,华氏温度的取值范围是[lower,upper],每次增加2℉。计算公式如下,式中:c表示摄氏温度,f表示华氏温度。

C=

5??f?32?9

运行示例:

32

Enter lower: 30 Enter upper: 35 fahr celsius 30 -1.1 32 0.0 34 1.1

【程序】

# include main( )

{ int fahr,lower,upper; double celsius;

printf(“Enter lower:”); scanf(“%d”, &lower) ; printf(“Enter upper:”); scanf(“%d”, &upper) ; printf(“fahr celsius\\n”);

for (fahr = lower; (1) ; (2) ){ celsius = (3) ;

printf(“%d (4) \\n”,fahr,celsius); }

【供选择的答案】

(1) A、 fahr <= upper B、 fahr < upper C、 fahr >= upper D、 fahr > upper (2) A、 fahr++ B、 fahr = fahr -2

C、 fahr + 2 D、 fahr = fahr + 2

(3) A、 5 * (fahr - 32)/9 B、 (5.0/9.0) * (fahr - 32) C、 5 / 9* (fahr - 32) D、 5 * fahr – 32/9

(4) A、 m B、 %6.2f C、 %6.1f D、 %6.0f

试题2(每小题3分,共12分)

阅读下列程序说明和程序,在每小题提供的若干可选答案中,挑选一个正确答案。 【程序说明】

输入2个正整数a和n,求a+aa+aaa+aa?a(n个a)之和,要求定义并调用函数fn(a,n),它的功能是返回aa?a(n个a)。例如,fn(3,2)的返回值是33。

运行示例:

Enter a: 2 Enter n: 3 sum = 246 【程序】

33

# include main( )

{ int i,n; long a, sn;

long fn(long a, int n); printf(“Enter a:”); scanf(“%ld”, &a); printf(“Enter n:”); scanf(“%d”, &n); (5)

for(i=1; i<=n; i++) (6)

printf(“sum=%ld\\n”,sn); }

long fn(long a, int n) { int i;

Long tn=0;

for(i=1; i<=n; i++){ tn=tn+a; (7) }

(8) }

【供选择的答案】

(5) A、sn=0; B、 ;

C、sn=1; D、sn=a;

(6) A、sn=sn+fn(a,i); B、sn=sn+fn(a,n); C、sn=sn+fn(i,a); D、sn=sn+fn(i,n); (7) A、tn=tn*10; B、a=a*10; C、sn=tn*10; D、sn=sn+a*10; (8) A、return; B、return sn; C、return a; D、return tn;

试题3(每小题3分,共12分)

阅读下列程序说明和程序,在每小题提供的若干可选答案中,挑选一个正确答案。 【程序说明】

输入一个以回车结束的字符串(少于80个字符),删除其中除英文字母和数字字符以外的其他字符,再判断新字符串是否对称(不区分大小写字母)。

运行示例1:

Enter a string: Madam I’m Adam

34

Yes

运行示例2:

Enter a string: elephant No 【程序】

# include

# include< (9) > main( )

{ int flag, i, k, length; char str[80];

printf(“Enter a string: ”); gets(str); i = k = 0;

while(str[i] != '\\0'){

if(isupper(str[i]))str[i]=tolower(str[i]); if(isdigit(str[i])||isalpha(str[i])){ (10)

k++;

} i++;

}

(11) length = k;

flag = 1;

for(k = 0; k <= length/2; k++) if(str[k] != str[length-1-k]){

(12) break;

}

if(flag) printf(“Yes\\n”); else printf(“No\\n”);

}

【供选择的答案】

(9) A、ctype.h B、string.h

C、stdlib.h D、math.h

(10) A、i++; B、str[k] = str[i]; C、str[i]=str[k] D、;

(11) A、str[i] = ‘\\0’; D、str[i-1] = ‘\\0’; C、str[k] = ‘\\0’; D、;

(12) A、flag = 1; B、flag = 0;

35


浙江省二级C语言笔试真题(2007-2010年)(7).doc 将本文的Word文档下载到电脑 下载失败或者文档不完整,请联系客服人员解决!

下一篇:24大小调音阶及其键盘位置与首调唱名法

相关阅读
本类排行
× 注册会员免费下载(下载后可以自由复制和排版)

马上注册会员

注:下载文档有可能“只有目录或者内容不全”等情况,请下载之前注意辨别,如果您已付费且无法下载或内容有问题,请联系我们协助你处理。
微信: QQ: