2013年_春_浙江省高等学校(C语言)

合集下载
  1. 1、下载文档前请自行甄别文档内容的完整性,平台不提供额外的编辑、内容补充、找答案等附加服务。
  2. 2、"仅部分预览"的文档,不可在线预览部分如存在完整性等问题,可反馈申请退款(可完整预览的文档不适用该条件!)。
  3. 3、如文档侵犯您的权益,请联系客服反馈,我们会尽快为您处理(人工客服工作时间:9:00-18:30)。

2013年上半年浙江省高等学校计算机等级考试

二级C程序设计试卷

说明:

⑴本试卷共6页,满分100分;考试时间为90分钟;

⑵考生应将所有试题的答案填写在答卷上;

⑶程序阅读与填空全部是选择题,请在答卷上的各小题选项的对应位置上填“√”;

⑷请将你的准考证号的后五位填写在答卷右下角的指定位置内。

一、程序阅读与填空(24小题,每小题3分,共72分)

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

输入一个正整数n,计算1!+2!+3!+…+n!。

运行示例:

Enter n:3

1!+…+3!=9

Enter n:5

1!+…+5!=153

【程序】

#include

void main()

{ int i,n;

double fact,sum;

printf("Enter n:");

scanf("%d",&n);

(1);

for(i=1; (2);i++){

(3);

sum=sum+fact;

}

printf("1!+…+(4)=%.0f\n",n,sum);

}

【供选择的答案】

(1)

A、sum=0

B、fact=0,sum=0

C、fact=n

D、fact=1,sum=0

(2)

A、i

B、i<100

C、i<=n

D、i>0

(3)

A、fact=fact*n

B、fact=1

C、fact=sum*i

D、fact=fact*i

(4)

A、%d!

B、%f!

C、%d

D、5!

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

输入一个正整数n(1

运行示例:

Enter n:9

Enter 9 integers:3 5 8 1 22 89 0 -1 7

After sorted:-1 0 1 3 5 7 8 22 89

【程序】

#include

main()

{

int i,index,k,n,temp,a[10];

printf("Enter n:");

scanf("%d",&n);

printf("Enter %d integers:", (5));

for(i=0;i

scanf("%d",&a[i]);

for(k=0;k

(6);

for(i=k+1;i

if(a[i]

(8);

}

printf("After sorted:");

for(i=0;i

printf("%d ",a[i]);

printf("\n");

}

【供选择的答案】

(5)

A、*n

B、n

C、&n

D、10

(6)

A、index=k

B、index=0

C、index=n

D、index=1

(7)

A、i=index

B、sindex=n

C、index=k

D、index=i

(8)

A、a[index]=a[k],a[k]=a[index]

B、a[k]=a[index] ,a[index]=a[k]

C、temp=a[index],a[index]=a[k],a[k]=temp

D、temp=a[k],a[index]=temp,a[k]=a[index]

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

输入一个字符串(少于80个字符),检查其括号的使用是否正确,如果正确,则输出YES,否则,输出NO。要求定义和调用函数check(str),如果字符串str中括号使用正确,即满足以下条件,则返回1;否则返回0。

(1)字符串中左括号和右括号的数量相同。

(2)从字符串首字符起自左向右顺序检查其中的字符,遇到的右括号的个数在任何时候都不超过所遇到的左括号的个数。

运行示例:

Input the string:(2+(3*6)-10)

YES

Input the string:(2+(3)*6)-10)

NO

Input the string:)(A)12(

NO

【程序】

#include

(9)

int check(char *);

main()

{

char str[MAXLEN];

printf("Input the string:");

gets(str);

if(check(str)!=0) printf("YES\n");

else printf("NO\n");

}

int check(char *str)

{

int right,left;

right=left=0;

while(*str!='\0'){

if(*str==')') right++;

else if(*str=='(') left++;

if(right>left) (10);

(11);

}

if(right!=left) (12);

return 1;

}

相关文档
最新文档