文档库 最新最全的文档下载
当前位置:文档库 › 浙江省计算机二级考试(C语言)模拟考试题

浙江省计算机二级考试(C语言)模拟考试题

浙江省计算机二级考试(C语言)模拟考试题
试题1(每小题3分,共12分)
阅读下列程序说明和程序,在没小题提供的若干可选答案中,挑选一个正确答案.
【程序说明】
求1-2/3+3/5-4/7+5/9-…的前20项之和.
运行示例:
sum = 0.386453
【程序】
#include
void main()
{
int i,b=1;
double s;
(1)
for(i=1;i<=20;i++){
if(i%2)
s=s+ (2) ;
else
s=s- (2) ;
(3)
}
printf("(4)",s);
}
【供选择的答案】
(1)A、S=0 B、S=1
C、S=-1 D、S=2
(2)A、i/b B、double(i)/double(b)
C、b=b+2; D、(double)i/(double)b
(3)A、; B、b=2*i-1;
C、b=1.0*b; D、b=b+2;
(4)A、"sum=%d\n" B、"s=%c\n"
C、"sum=%f\n" D、"s=%s\n"
试题2(每小题3分,共12分)
阅读下列程序说明和程序,在每小题供的若干可选答案中,挑选一个正确答案.
【程序说明】下列程序运行时,输入n个学生的姓名和3门功课成绩,然后根据3门功课的平均成绩从高分到低分显示每个学生的姓名,3门功课成绩以及平均成绩.
【程序】
#include
(5)
void main()
{ struct student { char name[9]; int a[3]; float v; } temp,*s;
int i,j,k;
scanf("%d",&n); s=(student*)malloc(n*sizeof(student));
for( (6) ) {
scanf("%s",s[i].name); s[i].v=0;
for(j=0;j<3;j++) { scanf("%d",&s[i].a[j]); (7) ; }
}
for(i=0;is[k].v) k=j;
temp=s[i]; s[i]=s[k]; s[k]=temp;
}
for(i=0;i s[i].name,s[i].a[0],s[i].a[1],s[i].a[2],s[i].v);
}
(5) A,#include B,#include
C,#include D,#include
(6) A,i=1;i<=n;i++ B,i=1;i C,i=0;i0;--i
(7) A,s[i].v=s[i].v+s[i].a[j] B,s[i].v+=s[i].a[j]/3
C,s+i->v=s+i->v+s+i->a[j]/3 D,s+i->v+=s+i->a[j]/3
(8) A,j=i-1;j C,j=i+1;j试题3(每小题3分,共12分)
阅读下列程序说明和程序,在每小题供的若干可选答案中,挑选一个正确答案.
【程序说明】
从键盘输入一批以 -1结束的整数,将其中的奇数写入当前目录下的文本文件res.txt.
#include
#include
void main()
{ int x;
(9) ;
if((fp=fopen("res.txt","w"))==NULL) {
printf("不能打开文件");
exit(0);
}
scanf("%d", &x);
while( (10) ){
if(x%2!=0) (11) ;
(12) ;
}
fclose(fp);
}
(9) A,FILE fp B,FILE *fp
C,file fp D,file *fp
(10) A,x == -1 B,feof(fp)
C,!feof(fp) D,x!=-1
(11) A,fprintf(fp, "%d ", x) B,printf( "%d ", x)
C,fprintf("%d ", x, fp) D,break
(12) A,printf("%d ", x) B,fscanf(fp,"%d", &x)
C,fprintf("%d ", x, fp) D,scanf("%d", &x)
试题4(每小题3分,共12分)
阅读下列程序并回答问题,在每个小题提供的若干可选答案中,挑选一个正确的答案.
【程序】
#include "stdio.h"
void main( )
{ int j, k, n, s, a[6][6];
scanf("%d",&n);
for(k=0; k for(j=0; j a[k][j]=j*n+k;
printf("a[0][1]=%d\n", a[0][1]);
s=0;
for (k=0; k s +=a[k][k];
printf("sum1=%d\n", s);
for (k=0; k s +=a[n-k-1][k];
printf("sum2=%d\n", s);
for (k=0; k s +=a[k][2];
printf("sum3=%d\n", s);
}
(13)程序运行时,

输入3后,第一行输出____
A a[1][0]=6 B a[0][1]=6 C a[1][0]=3 D a[0][1]=3
(14) 程序运行时,输入3后,第二行输出______
A sum1=22 B sum1=21 C sum1=12 D sum1=11
(15) 程序运行时,输入6后,第一行输出______
A sum2=210 B sum2=211 C sum2=200 D sum2=120
(16) 程序运行时,输入6后,第二行输出______
A sum3=279 B sum3=927 C sum3=297 D sum3=277
试题5(每小题3分,共12分)
阅读下列程序并回答问题,在每个小题提供的若干可选答案中,挑选一个正确的答案.
【程序】
#include
void main()
{
int i=0,n;
char s[10]="95682h01";
n=0;
for(i=0;s[i]!=’\0’;i++)
if(s[i]=’0’)
{
n=n*10+(s[i]-’0’);
printf("%d\n",n);
}
else
break;

}
(17)程序运行时,第2行输出____(17)____.
A,9 B,95 C,5 D,59
(18)程序运行时,第3行输出____(18)____.
A,956 B,659 C,965 D,96
(19)程序运行时,第4行输出____(19)____.
A,9586 B,5896 C,5698 D,9568
(20)程序运行时,第5行输出____(20)____.
A,92568 B,95682 C,68295 D,58629
试题6(每小题3分,共12分)
#include
struct student
{
char * name;
char *sex;
int age;
float score;
};
void initial(struct student st[], char *xm[ ], char *xb[ ],int nl[],float cj[])
{ int i;
for (i=0; i<4; i++){
st[i].name = xm[(i+3)%4];
st[i].sex = xb[(i+3)%4];
st[i].age = nl[(i+3)%4];
st[i].score = cj[(i+3)%4];
}
}
void show(struct student st[])
{ int i;
printf("学生信息如下:\n");
for (i=0; i<4; i++)
printf("姓名:%s\t性别:%s\t年龄:%d\t成绩:%f\n",st[i].name,st[i].sex,st[i].age,st[i].score);
}
void main( )
{ struct student st[4];
char * xm[ ]={"张三", "李四","小周","小吴"};
char *xb[ ]={"男", "男","女","女"};
int nl[]={18,17,17,18};
float cj[]={85,86,80,84};
initial(st, xm, xb,nl,cj);
show (st);
}
(21)程序运行时,第1行输出____(21)____.
A,姓名:小吴 性别:女 年龄:18 成绩:84.000000
B,姓名:李四 性别:男 年龄:17 成绩:86.000000
C,姓名:张三 性别:男 年龄:18 成绩:85.000000
D,姓名:小周 性别:女 年龄:17 成绩:80.000000
(22)程序运行时,第2行输出____(22)____.
A,姓名:小吴 性别:女 年龄:18 成绩:84.000000
B,姓名:李四 性别:男 年龄:17 成绩:86.000000
C,姓名:张三 性别:男 年龄:18 成绩:85.000000
D,姓名:小周 性别:女 年龄:17 成绩:80.000000
(23)程序运行时,第3行输出____(23)____.
A,姓名:小吴 性别:女 年龄:18 成绩:84.000000
B,姓名:李四 性别:男 年龄:17 成绩:86.000000
C,姓名:张三 性别:男 年龄:18 成绩:85.000000
D,姓名:小周 性别:女 年龄:17 成绩:80.000000
(24)程序运行时,第4行输出____(24)____.
A,姓名:小吴 性别:女 年龄:18 成绩:84.000000
B,姓名:李四 性别:男 年龄:17 成绩:86.000000
C,姓名:张三 性别:男 年龄:18 成绩:85.000000
D,姓名:小周 性别:女 年龄:17 成绩:80.000000
试题7 (14分)
编写程序,求出数组a中

各相邻两个元素的和,并将这些和存放在数组 b中,按每行3个元素的形式输出.
试题8 (14分)
编写程序,找出100~999之间所有的Armstrong数.所谓Armstrong数是指这个3位数各位上数字的立方和等于自身.例如:371=3*3*3+7*7*7+1*1*1,那么371就是Armstrong数.

相关文档