最新浙江省二级C语言考试真题(6)

2019-01-12 17:13

(22) 程序运行时,输入I , 输出 (22)

[A]SQL hello bear I zone [B] I SQL hello bear zone [C] SQL I hello bear zone [D]SQL hello bear zone I (23) 程序运行时,输入zoo , 输出 (23)

[A]zoo SQL hello bear zone [B] SQL hello bear zoo zone [C]SQL hello bear zone zoo [D] SQL hello zoo bear zone

(24) 程序运行时,输入orange , 输出 (24)

[A]SQL orange hello bear zone [B] SQL hello orange bear zone [C]orange SQL hello bear zone [D] SQL hello bear orange zone

二、程序编写(每小题14分,共28分)

1. 编写程序,输入100个整数,将它们存入数组a中,查找并输出数组a中的最小值。

2.按下面要求编写程序:

(1)定义函数cal_power(x, n)计算x的n次幂(即xn),函数返回值类型是double.

(2)定义函数main(),输入浮点数x和正整数n,计算并输出下列算式的值。要求调用函数cal_power(x, n)计算x的n次幂。

s?1111?2?3????n xxxxC模拟试卷29

参考答案

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

题号 (1) (2) (3) (4) (5) (6) (7) (8) (9) (10) (11) (12) (13) (14) (15) (16) (17) (18) (19) (20) (21) (22) (23) (24) 答案 D A C B B C A D D C B A A A B B C C D D A B C D 二、程序编写(2小题,每小题14分,共28分)

1.

#include void main() {

int a[100],i; int min;

for(i=0;i<100;i++) scanf(\min=a[0];

for(i=1;i<100;i++) if(a[i]

printf(\} 2.

#include

double cal_power(double x,int n) {

double p = x; int i;

for(i=1;i

void main() {

double x, s=0; int i,n;

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

s=s+1/cal_power(x,i); printf(\}

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( (1) ) in = -in; do{

sum = sum + (2) ; (3) ; count++;

}while( (4) );

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是素数。

运行示例: 53 59 61 67

【程序】

#include #include main()

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

printf(\}

int isprime(int m) {

int i, k; (6)

k = (int)sqrt((double)m); for(i = 2; i <= k; i++) if(m % i == 0) (7) ; (8) ; }

【供选择的答案】 (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]) (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()


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

下一篇:例谈“一题多解”与“多题一解”之争

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

马上注册会员

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