当前位置:首页 > 浙江省高等学校二级C语言(笔试部分真题2008-2010年)
}
printf(”%d\\n”, res); }
(13) 程序运行时,输入2*3-2=,输出 (13) 。
A、6 B、2 C、0 D、4 (14) 程序运行时,输入15+2/3=,输出 (14) 。
A、16 B、15 C、6 D、5 (15) 程序运行时,输入1+2*10-10/2=,输出 (15) 。 A、10 B、16 C、15 D、25 (16) 程序运行时,输入1+3*5/2-7=,输出 (16) 。 A、3 B、1 C、-2 D、-3 试题5(每小题3分,共12分)
阅读下列程序并回答问题,在每小题提供的若干可选答案中,挑选一个正确答案。
【程序】
#include
{ int k = 0, number = 0; char str[MAXLEN];
while((str[k] = getchar()) != ?#?) k++;
str[k] = ?\\0?;
for(k = 0; str[k] != ?\\0?; k++)
if(str[k]>=?0?&&str[k]<=?9?||str[k]==?A?||str[k]==?B?) if(str[k] >= ?0?&&str[k] <= ?9?)
number = number * 12 + str[k] – ?0?; else if(str[k] == ?A?||str[k] == ?B?)
number = number * 12 + str[k] –?A? + 10; else; /*第15行*/ else break; /*第16行*/ printf(”%d\\n”,number); }
(17) 程序运行时,输入10#,输出 (17) 。
A、16 B、10 C、12 D、1 (18) 程序运行时,输入1a0#,输出 (18) 。 A、264 B、10 C、1 D、12
(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
{ char *s[2] = {”****”, ”****”}; while(*s[1] != ?\\0?){
printf(”%s\\n”, s[0]+strlen(s[1])-1); s[1]++; }
33
}
(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分)
(4) 定义函数fact(n)计算n的阶乘:n!=1*2*??*n,函数返回值类型是double。
(5) 定义函数cal(m, n)计算累加和:s?
k?m?k?m?(m?1)?......?n,函数返回
n值类型是double。
(6) 定义函数main(),输入正整数n,计算并输出下列算式的值。该算式中,每一项
的分子是累加和,要求调用函数cal(m,n)计算求调用函数fact(n)计算n!。
(7) y=1+
k?m?k;每一项的分母是阶乘,要
n1?21?2?31?2?......?n ??......?2!3!n!
34
计算机等级考试参考答案(二级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
试题7 (28分)
#include
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(\}
35
共分享92篇相关文档