资源描述
2022年秋浙江省高等学校
计算机等级考试试卷(二级C)
说明:⑴考生应将所有试题的答案填写在答卷上。其中试题一到试题六请在答卷上的各小题选项的对应位置上填“√〞。
⑵请将你的准考证号的后五位填写在答卷右下角的指定位置内;
⑶考试时间为90分钟。
试题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、* B、float
C、double D、char
(2) A、(ch = getchar())B、ch = getchar()
C、getchar(ch)D、putchar(ch)
(3) A、(ch >= 'a' && ch <= 'z') && (ch >= 'A' && ch <= 'Z')
B、(ch >= 'a' && ch <= 'z') || (ch >= 'A' && ch <= 'Z')
C、ch >= 'a' && ch <= 'Z'
D、ch >= 'A' && ch <= 'z'
(4) A、ifB、else
C、else ifD、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) A、reverse()B、in
C、reverse(in)D、reverse
(6) A、res = 0B、long res
C、long res = 0D、res
(7) A、number > 0B、number < 0
C、number != 0D、number == 0
(8) A、number%10B、res*10 + number%10
C、number/10D、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) A、a[j][k]B、a[k][j]
C、&a[j][k]D、&a[k][j]
(10) A、; B、sum = -1;
C、sum = 1;D、sum =0;
(11) A、sum + a[j][k]B、sum + a[j][j]
C、sum + a[k][k]D、0
(12) A、kB、j
C、0D、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) 。
A、5 4 3 2 1 B、5 4 2 1 C、5 4 D、3
(14) 将第6行中的continue改为break后,程序的输出是(14) 。
A、5 4 3 2 1 B、5 4 2 1 C、5 4 D、3
(15) 将第6行中的continue删除〔保存分号〕后,程序的输出是(15) 。
A、5 4 3 2 1 B、5 4 2 1 C、5 4 D、3
(16) 将第6行全部删除后,程序的输出是(16) 。
A、5 4 3 2 1 B、5 4 2 1 C、5 4 D、3
试题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) 。
A、Happy New Year B、Hppy New Yer
C、Hay New YearD、Happy Nw Yar
(18) 程序运行时,输入字母e,输出(18) 。
A、Happy New Year B、Hppy New Yer
C、Hay New YearD、Happy Nw Yar
(19) 程序运行时,输入字母p,输出(19) 。
A、Happy New Year B、Hppy New Yer
C、Hay New YearD、Happy Nw Yar
(20) 程序运行时,输入字母b,输出(20) 。
A、Happy New Year B、Hppy New Yer
C、Hay New YearD、Happy 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;
}
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) 。
A、12:12:0 B、12:12:50 C、12:12:60D、12:13:0
(22) 程序运行时,输入12 12 30 10,输出(22) 。
A、12:12:0 B、12:12:10 C、12:12:30D、12:12:40
(23) 程序运行时,输入22 59 30 30,输出(23) 。
A、23:0:0 B、22:59:60 C、22:59:30 D、22:0:0
(24) 程序运行时,输入23 59 0 300,输出(24) 。
A、0:4:0 B、23:59:300 C、23:59:00D、23:0:0
试题7 (14分)
编写程序,输入100个学生的英语成绩,统计并输出该门课程的平均分以及不及格学生的人数。
试题8 (14分)
编写程序,输入一个正整数n,计算并输出以下算式的值。要求定义和调用函数total(n)计算1+1/2+1/3+……+1/n,函数返回值的类型是double。
计算机等级考试答案〔二级C〕
试题1~6
试题7
试题8
合计
试题1~6
A
B
C
D
A
B
C
D
(1)
√
(13)
√sssss
(2)
√
(14)
√
(3)
√
(15)
√
(4)
√
(16)
√
(5)
√
(17)
√
(6)
√
(18)
√
(7)
√
(19)
√
(8)
√
(20)
√
(9)
√
(21)
√
(10)
√
(22)
√
(11)
√
(23)
√
(12)
√
(24)
√
试题7
#include "stdio.h"
void main()
{
float a[100],aver;
int i,count=0;
printf("请输入100个学生") ;
for(i=0;i<100;i++)
scanf("%f",&a[i]);
for(i=0;i<100;i++)
{
aver=aver+a[i];
if(a[i]<60)
count++;
}
printf("平均分是:%.2f,不及格人数是:%d\n",aver/100,count);
}
试题8
#include "stdio.h"
void main()
{
double total(int n);
int n;
printf("请输入n:");
scanf("%d",&n);
printf("结果是:%lf\n",total(n));
}
double total(int n)
{
int i;
double sum=0;
for(i=1;i<=n;i++)
{
sum=sum+1.0/i;
}
}
展开阅读全文