2009年春C语言二级理论试题
- 1、下载文档前请自行甄别文档内容的完整性,平台不提供额外的编辑、内容补充、找答案等附加服务。
- 2、"仅部分预览"的文档,不可在线预览部分如存在完整性等问题,可反馈申请退款(可完整预览的文档不适用该条件!)。
- 3、如文档侵犯您的权益,请联系客服反馈,我们会尽快为您处理(人工客服工作时间:9:00-18:30)。
2009年春浙江省高等学校
计算机等级考试试卷(二级C)
试题1 (每小题3分,共12分)
阅读下列程序说明和程序,在每小题提供的若干可选答案中, 正
确答案。
挑选一个
【程序说明】
输入一个正整数n,计算下列式的前 n项之和。
彳1丄1 1亠1
S = 1
3 5 7 9
运行示例:
En ter n:2
Sum=0.67
【程序】
#in elude
main ()
{ in t de no miator,flag,i ,n;
double item,sum;
printf("Enter n:");
sca nf("%d",&n);
deno miator=1;
(1) ;
sum=0;
for(i=1; (2) ;i++)
{
(3);
sum=sum+item;
(4);
deno miator=de no
miator+2;
}
prin tf("Sum=%.2f\n",sum);
}
【供选择的答案】
(1) A . flag=0
C. flag=n
(2) A . i>=n
C. i>n B. flag=-1;
D. flag=1
B . i< n
D . i<=n
II答案B
〃答案D
#in clude
#in clude
int i,n;
if(m==1)return 0; n=sqrt(m);
for(i=2;i<=n ;i++) if(m%i==O)return 0;
(5)
} mai n()
{ in t coun t,i, nu mber; coun t=0;
for(nu mber=6 ;nu mber<=20 ;nu mber =nu mber+2) {for(i=3;i<=nu mber/2;i=i+2) if( ___ (6 ______ )
{pri ntf("%d=%d+%d ",n umber,i, number-i); coun t++; if( (7)
)printf("\n");
(3) A . item=flag/ denomiator C. item=flag*1.0/ denomiator (4) A . flag==-1 C. flag=-flag 试题2 (每小题3分,共12分) 阅读下列程序说明和程序, 正确答案。 【程序说明】 验证哥德巴赫猜想 例如 6=3+3,8=3+5 ••… 打印时一行打印 B . item=1/ denomiator D. item=1.0/ denomiator// 答案 C B . flag=0 D . flag=flag //答案 C 在每小题提供的若干可选答案中, 挑选一个 :任何一个大于6的偶数均可表示为两个素数之和。 ,18=7+11。将6-20之间的偶数表示成两个素数之和, 5组。要求定义和调用函数 prime(m)判断m 是否为素数,
0。素数就是只能被1和自身整除的正整数, 当m 为素数时返回1,否则返回 1不是素数,2是素数。 运行示例: 6=3+3 8=3+5 10=3+7 12=5+7 14=3+11 16=3+13 18=5+13 20=3+17 【程序】
}
【供选择的答案】
(5) A .
5
B. r eturn 1;
C. return 0 ;
D. e lse return 1; II答案B
(6) A . prime(i)!=0||prime( nu
mber-i)!=0
B . prime(i)!=0&&prime (nu
mber-i)!=0
C. prime(i)==0||prime( nu
mber-i)==0
D . prime(i)==0||prime( nu
mber-i)==0 II答案B
(7) A . cou nt%5==0 B. c ou nt%5!=0
C. (cou nt+1)%5==0
D. (cou nt+1)%5!=0 II答案A
(8) A . break; B. e lse break;
C. con ti nue;
D.
5
II答案A
试题3 (每小题3分,共12分)
阅读下列程序说明和程序,在每小题提供的若干可选答案中,挑选一个正确答案。
【程序说明】
输入一行字符,统计并输出其中数字字符、英文字符和其它字符的个
数。要求定义并调用函数count(s,digit,letter,other)分类统计字符串 s中数字
字符、英文字符和其它字符的个数,函数形参s是字符指针,形参digit,letter,other的类型是整型指针,函数类型是v oid.。
运行示例:
En ter charaters:f(x,y)=5x+2y-6
Digit=3 Letter=5 Other=6
【程序】
#in clude
void coun t(char *s,i nt *digit,i nt *letter,i nt *other)
{ (9)
while( ( 10) )
{if(*s>='0'&&*s<='9')
(*digit)++;
else if(*s>='a'&&*s<='z'||*s>='A'&&*s<='Z')
(*letter)++;
else