发新话题
打印

2006年秋浙江省高等学校 计算机等级考试试卷(二级C)

您是本帖第663个浏览者

2006年秋浙江省高等学校 计算机等级考试试卷(二级C)

2006年秋浙江省高等学校

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


试题1(每小题3分,共12分)
阅读下列程序说明和程序,在每小题提供的若干可选答案中,挑选一个正确答案。
【程序说明】
输入一行字符,统计并输出其中英文字母、数字和其他字符的个数。

运行示例:
Enter characters: f(x,y)=3x+5y-10
letter=5, digit=4, other=6
【程序】
#include <stdio.h>
void main( )
{
int digit, i, letter, other;



(1)

ch;


digit = letter = other = 0;


printf("Enter characters: ");


while(
(2)

!= '\n')


if(
(3)
)


letter ++;




(4)
(ch >= '0' && ch <= '9')


digit ++;


else


other ++;


printf("letter=%d, digit=%d, other=%d\n", letter, digit, other);

}
【供选择的答案】
(1) A*

Bfloat



Cdouble

Dchar

(2) A(ch = getchar())
B
ch = getchar()


Cgetchar(ch)
D
putchar(ch)

(3) A(ch >= 'a' && ch <= 'z') && (ch >= 'A' && ch <= 'Z')


B(ch >= 'a' && ch <= 'z') || (ch >= 'A' && ch <= 'Z')


Cch >= 'a' && ch <= 'Z'
Dch >= 'A' && ch <= 'z'

(4) Aif

B
else

Celse if

D
if else

试题2(每小题3分,共12分)
阅读下列程序说明和程序,在每小题提供的若干可选答案中,挑选一个正确答案。
【程序说明】
输入一个整数,将它逆序输出。要求定义并调用函数reverse(long number),它的功能是返回number的逆序数。例如reverse(12345)的返回值是54321。
运行示例:
Enter an integer: -123
After reversed: -321
【程序】
#include <stdio.h>
void main( )
{
long in;


long reverse(long number);


printf("Enter an integer:");


scanf("%ld", &in);


printf("After reversed:%ld\n",
(5)
);

}
long reverse(long number)
{ int flag;


(6)
;


flag = number < 0 ? -1 : 1;


if(
(7)
)
number = - number;


while(number != 0){


res =
(8)
;


number /= 10;


}


return flag*res;

}
【供选择的答案】
(5) Areverse( )


B
in



Creverse(in)
D
reverse

(6) Ares = 0

B
long res



Clong res = 0
D
res

(7) Anumber > 0
B
number < 0




Cnumber != 0

D
number == 0

(8) Anumber%10
B
res*10 + number%10




Cnumber/10

D
res*10 + number/10

试题3(每小题3分,共12分)
阅读下列程序说明和程序,在每小题提供的若干可选答案中,挑选一个正确答案。
【程序说明】
输入一个3 行2 列的矩阵,分别输出各行元素之和.
运行示例:
Enter an array:
6
3

1
-8

3 12
sum of row 0 is 9
sum of row 1 is -7
sum of row 2 is 15
【程序】
#include <stdio.h>
void main( )
{
int j, k, sum = 0;


int a[3][2];


printf("Enter an array:\n");


for(j = 0; j < 3; j++)


for(k = 0; k < 2; k++)




scanf("%d",
(9)
);


for(j = 0; j < 3; j++){



(10)


for(k = 0; k < 2; k++)




sum =
(11)
;



printf("sum of row %d is %d\n",
(12)
, sum);



}

}
【供选择的答案】
(9)
Aa[j][k]

B
a[k][j]



C&a[j][k]

D
&a[k][j]

(10) A;
Bsum = -1;



Csum = 1;
D
sum = 0;

(11) Asum + a[j][k]

B
sum + a[j][j]



Csum + a[k][k]
D
0

(12) Ak

B
j



C0
D
1

试题4(每小题3分,共12分)
阅读下列程序并回答问题,在每小题提供的若干可选答案中,挑选一个正确答案。
【程序】
#include <stdio.h>
void main( )
{
int k;


for(k = 5; k > 0; k--){


if(k==3)


continue;
/* 6 */



printf("%d ", k);


}

}
(13) 程序的输出是

(13)




A5 4 3 2 1

B5 4 2 1
C5 4

D3

(14) 将第6行中的continue改为break后,程序的输出是

(14)




A5 4 3 2 1

B5 4 2 1
C5 4

D3


(15) 将第6行中的continue删除(保留分号)后,程序的输出是

(15)




A5 4 3 2 1

B5 4 2 1
C5 4

D3


(16) 将第6行全部删除后,程序的输出是

(16)




A5 4 3 2 1

B5 4 2 1
C5 4

D3

试题5(每小题3分,共12分)
阅读下列程序并回答问题,在每小题提供的若干可选答案中,挑选一个正确答案。
【程序】
# include <stdio.h>
void main()
{
char c, s[80]= "Happy New Year";


int i;
void f(char *s, char c);


c = getchar();


f(s, c);


puts(s);

}
void f(char *s, char c)
{
int k = 0, j = 0;



while(s[k] != '\0'){



if(s[k] != c){




s[j] = s[k];




j++;



}


k++;


}


s[j] = '\0';

}
(17) 程序运行时,输入字母a,输出

(17)




AHappy New Year
BHppy New Yer



CHay New Year

DHappy Nw Yar

(18) 程序运行时,输入字母e,输出

(18)




AHappy New Year
BHppy New Yer



CHay New Year

DHappy Nw Yar


(19) 程序运行时,输入字母p,输出

(19)




AHappy New Year
BHppy New Yer




CHay New Year

DHappy Nw Yar


(20) 程序运行时,输入字母b,输出

(20)




AHappy New Year
BHppy New Yer



CHay New Year

DHappy Nw Yar

试题6(每小题3分,共12分)
#include <stdio.h>
struct st{
int x, y, z;
};
void f(struct st *t, int n);
void main( )

{
int k, n;
struct st time;

scanf("%d%d%d%d", &time.x, &time.y, &time.z, &n);
f(&time, n);
printf("%d:%d:%d\n", time.x, time.y, time.z);
}
void f(struct st *t, int n)
{


t->z = t->z + n;



if(t->z >= 60){



t->y = t->y + t->z/60;



t->z = t->z%60;





}



if(t->y >= 60){



t->x = t->x + t->y/60;



t->y = t->y%60;




}



if(t->x >= 24)
t-> x = t->x % 24;

}
(21)程序运行时输入12 12 50 10输出

(21)



A12:12:0
B12:12:50
C12:12:60

D12:13:0


(22) 程序运行时,输入12 12 30 10,输出

(22)



A12:12:0
B12:12:10
C12:12:30

D12:12:40


(23) 程序运行时,输入22 59 30 30,输出

(23)



A23:0:0
B22:59:60
C22:59:30

D22:0:0


(24) 程序运行时,输入23 59 0 300,输出

(24)



A0:4:0
B23:59:300
C23:59:00

D23:0:0

试题7 (14)编写程序,输入100个学生的英语成绩,统计并输出该门课程的平均分以及不及格学生的人数。
试题8 (14)编写程序,输入一个正整数n,计算并输出下列算式的值。要求定义和调用函数total(n)计算1+1/2+1/3+……+1/n函数返回值的类型是double。

  

楼主最新帖子

我不是四眼、、但我是田鸡℃あいぁぃ

TOP

2006年秋浙江省高等学校
计算机等级考试答案(二级C)
试题1~6

1        2        3        4        5        6        7        8        9        10        11        12
D        A        B        C        C        C        B        B        C        D        A        B
13        14        15        16        17        18        19        20        21        22        23        24
B        C        A        D        B        D        C        A        D        D        A        A

试题7 (14分)  编写程序,输入100个学生的英语成绩,统计并输出该门课程的平均分以及不及格学生的人数。
#include <stdio.h>
void main( )
{
int count, k, a[100];
double aver;   

for(k = 0; k < 100; k++)
scanf ("%d", &a[k]);

        aver = 0;
for(k = 0; k < 100; k++)
aver += a[k];

        count = 0;
for(k = 0; k<100; k++)
if(a[k]<60)
count++;

printf("aver=%f\n", aver);
printf("fail %d\n", count);
}






试题8 (14分)  编写程序,输入一个正整数n,计算并输出下列算式的值。要求定义和调用函数total(n)计算1+1/2+1/3+……+1/n,函数返回值的类型是double。



#include <stdio.h>
void main( )
{  int n;
   double toatl(int n);
   scanf("%d", &n);
   printf("sum = %f\n", total(n));
}
double total(int n)
{   int k;
double sum;
sum = 0;
    for(k = 1; k <= n; k++)
   sum = sum + 1.0/k;
return sum;
}

我不是四眼、、但我是田鸡℃あいぁぃ
看不懂,不会啊,到时怎么考

TOP

额。。。这个二级还是比较简单的啦

我不是四眼、、但我是田鸡℃あいぁぃ
发新话题
站长:天涯海角 QQ:361707661 广告联系:0571-81509195
中国网络110报警服务 信息产业部互联网备案信息 绿色安全网站:无病毒,无插件! 浙江网络警察不良信息举报