第一范文网 - 专业文章范例文档资料分享平台

浙江省高等学校二级C语言(笔试部分真题2008-2010年)

来源:用户分享 时间:2025/5/15 12:33:50 本文由loading 分享 下载这篇文档手机版
说明:文章内容仅供预览,部分内容可能不全,需要完整文档或者需要复制内容,请下载word后使用。下载word有问题请添加微信号:xxxxxxx或QQ:xxxxxx 处理(尽可能给您提供完整文档),感谢您的支持与谅解。

计算机等级考试试卷(二级C) 2010-2008笔试部分真题

2010年春浙江省高等学校

浙江省高等学校

计算机等级考试试卷(二级C)

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

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

【程序说明】

输入一个整数,求它的各位数字之和位数。例如,17的各位数字之和是8,位数是2。 运行示例:

Enter an integer:-153 sum = 8, count = 3 【程序】

#include main() {

int count = 0, in, sum = 0; printf(\ scanf(\ if( D ) in = -in; do{ sum = sum + (2) C ; (3)C ; count++;

}while( (4)B );

printf(\}

【供选择的答案】 (1) A、in == 0 B、in > 0

C、in != 0 D、in < 0 (2) A、in /10 B、in mod 10

C、in % 10 D、in (3) A、in = in % 10 B、in /10

C、in = in /10 D、in % 10 (4) A、in % 10 != 0 B、in != 0

C、!in D、in / 10 != 0

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

【程序说明】

输出50到70之间的所有素数。要求定义和调用函数isprime(m)判断m是否为素数,若m为素数则返回1,否则返回0。素数就是只能被1和自身整除的正整数,1不是素数,2是

1

素数。

运行示例: 53 59 61 67 【程序】

#include #include main()

{ int i; int isprime(int m); for(i = 50; i <= 70; i++) if( (5) B )

printf(\}

int isprime(int m) {

int i, k; (6)B

k = (int)sqrt((double)m); for(i = 2; i <= k; i++)

if(m % i == 0) (7) A ; (8)A ; }

【供选择的答案】 (5) A、isprime (m) != 0 B、isprime (i) != 0

C、isprime (m) == 0 D、isprime (i) == 0 (6) A、if(m != 1) return 1; B、if(m == 1) return 0;

C、; D、if(m == 1) return 1; (7) A、return 0 B、return 1

C、return i <= k D、return (8) A、return 1 B、return 0

C、return D、return i <= k

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

【程序说明】

输入6个整数,找出其中最小的数,将它和最后一个数交换,然后输出这6个数。要求定义和调用函数swap(x, y),该函数交换指针x和y所指向单元的内容。

运行示例:

Enter 6 integers: 6 1 8 2 10 97 After swaped: 6 97 8 2 10 1 【程序】

void swap(int *x, int *y) { int t; (9) ; }

main()

{ int i, index, a[10]; for(i = 0; i < 6; i++) scanf(\ (10) ;

for(i = 1; i < 6; i++) if(a[index] > a[i])

2

(11) ; (12) ; printf(\ for(i = 0; i < 6; i++) printf(\ printf(\}

【供选择的答案】 (9) A、t = *x, *x = *y, *y = t

B、t = x, x = y, y = t

C、*t = *x, *x = *y, *y = *t D、&t = x, x = y, y = &t

(10)A、index = 0 B、index = 5 C、index = index D、index = 1 (11)A、a[index] = a[i] B、i = index C、a[i] = a[index] D、index = i (12)A、swap(a[index], a[5]) B、swap(*a[index], *a[5]) C、swap(a[*index], a[*5]) D、swap(&a[index], &a[5])

4. 阅读下列程序并回答问题,在每小题提供的若干可选答案中,挑选一个正确答案。 【程序】

#include

#define T(c) (((c) >= '0') && ((c) <= '9') ? (c) - '0' : -1) void f1(char ch) {

switch(ch){

case '0': printf(\ case '1': printf(\

case '2': printf(\ case '3': printf(\ default: printf(\ }

printf(\}

double f2() {

return (double)(5/2); }

double f3(int n) {

if(n == 1) return 1.0;

else return 1.0 + 1.0/f3(n-1); }

main() {

printf(\ f1('1');

printf(\

3

printf(\} 【问题】

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

A、7 -1 B、-1 7 C、7 a (14) 程序运行时,第2行输出 (14) 。

A、1239 B、12 C、1 (15) 程序运行时,第3行输出 (15) 。

A、2.5 B、2 C、2.0 (16) 程序运行时,第4行输出 (16) 。 A、1.000 B、2.000 C、1.500

D、-1 -1 D、9 D、3

D、1.667

5. 阅读下列程序并回答问题,在每小题提供的若干可选答案中,挑选一个正确答案。 【程序】

程序1

#include main() {

int i, j, t, a[3][4] = {1,2,3,4,5,6,7,8,9,10,11,12}; for(i = 0; i < 3; i++)

for(j = 0; j <= i/2; j++){

t = a[i][j], a[i][j] = a[i][3-j], a[i][3-j] = t; }

printf(\ printf(\}

程序2

#include main() {

char str[10] = \ int i, number = 0;

for(i = 0; str[i] != '\\0'; i++)

if(str[i] >= '0' && str[i] <= '7')

number = number * 8 + str[i] - '0'; printf(\

for(i = 0; str[i] != '\\0'; i++)

if(str[i] >= '0' && str[i] <= '5') number = number * 6 + str[i] -'0'; printf(\} 【问题】

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

A、3 B、4 C、1 D、2 (18) 程序1运行时,第2行输出 (18) 。 A、12 B、11 C、10 D、9 (19) 程序2运行时,第1行输出 (19) 。 A、2 B、27 C、23 D、16 (20) 程序2运行时,第2行输出 (20) 。

4

浙江省高等学校二级C语言(笔试部分真题2008-2010年).doc 将本文的Word文档下载到电脑,方便复制、编辑、收藏和打印
本文链接:https://www.diyifanwen.net/c1bu5h3ccg28ojis8frd8_1.html(转载请注明文章来源)
热门推荐
Copyright © 2012-2023 第一范文网 版权所有 免责声明 | 联系我们
声明 :本网站尊重并保护知识产权,根据《信息网络传播权保护条例》,如果我们转载的作品侵犯了您的权利,请在一个月内通知我们,我们会及时删除。
客服QQ:xxxxxx 邮箱:xxxxxx@qq.com
渝ICP备2023013149号
Top