计算机二级C语言专家预测试题七及答案_精品文档Word文档格式.docx
《计算机二级C语言专家预测试题七及答案_精品文档Word文档格式.docx》由会员分享,可在线阅读,更多相关《计算机二级C语言专家预测试题七及答案_精品文档Word文档格式.docx(6页珍藏版)》请在冰豆网上搜索。
sp;
aa=bb=cc=dd=1;
(aa+1==2)?
bb=aa+2:
aa+3
A.2
B.3
C.1
D.5
6.设有intx=11;
则表达式(x+1/3)的值是( C )。
A.3
B.4
C.11
D.12
7.设有字符串A=“Hehas钱!
”,则该字符串的长度为( B )。
A.9
B.10
D.8
8.有如下程序段,则正确的执行结果是( B)
intm=3;
while(m<
=5)
{printf(“%d”,m-3);
m++;
}
A.000
B.012
C.123
D.无结果
9.执行语句:
printf("
%d"
,(a=2)&
&
(b=-2);
后,输出结果是(D )。
A.无输出
B.结果不确定
C.-1
D.1
10.有如下定义类型语句,若从键盘输入数据,正确的输入语句是(D )。
intx;
chary;
charz[20];
A.scanf("
%d%c%c"
&
x,&
y,&
z);
B.scanf("
%d%c%s"
C.scanf("
y,z);
D.scanf("
参考答案:
1.D2.C3.A4.C5.B6.C7.B8.B9.D10.D
11.structex
{intx;
floaty;
charz;
}example;
则下面的叙述中不正确的是( B )。
A.struct结构体类型的关键字
B.example是结构体类型名
C.x,y,z都是结构体成员名
D.structex是结构体类型
12.在C语言中对于实型数组,其每个数组元素的类型是(A )。
A.实型
B.整型
C.可以为任何类型
D.不确定
13.若已定义:
inta[9],*p=a;
不能表示a[1]地址的表达式是(C )。
A.p+1
B.a+1
C.a++
来源:
D.++p
14.在TC2.0环境中,对文件进行保存使用的命令是( B )。
A.OPEN
B.SAVE
C.LOAD
D.WRITETO
15.在C++的类中,用于表示公共类型的关键字是( D )。
A.class
B.private
C.protect
D.public
11.B12.A13.C14.B15.D 二、填空题
1.在C语言中,正确的标识符是由___.字母、数字、下划线________组成的,且由______以字母、下划线开头______开头的。
2.设p=30,那么执行q=(++p)后,表达式的结果q为____4__,变量p的结果为___4_____。
若a为int类型,且其值为3,则执行完表达式a+=a-=a*a后,a的值是__--12_____。
3.一个变量的指针是指_____该变量的地址。
___________。
4.在C语言程序中,对文件进行操作首先要_______打开______;
然后对文件进行操作,最后要对文件实行___关闭______操作,防止文件中信息的丢失。
5.以下程序运行后的输出结果是___20,10______。
该程序的功能是__变量的交换_____。
main()
{intx=10,y=20,t=0;
if(x!
=y)t=x;
x=y;
y=t;
printf("
%d,%d\n"
x,y);
}.
6.若fp已正确定义为一个文件指针,d1.dat为二进制文件,请填空,以便为"
读"
而打开此文件:
fp=fopen(“d1.dat”,“rb” );
。
7.有以下程序,当输入的数值为2,3,4时,输出结果为____sumofnumberis:
14___。
{intx,y,z;
cout<
<
“pleaseinputthreenumber”;
cin>
>
x>
y>
z;
sum=x*x+y*2+z;
cout<
“sumofnumberis:
”<
8.有以下程序
{charc;
while((c=getchar())!
='
?
'
)putchar(--c);
}
程序运行时,如果从键盘输入:
YDG?
N?
回车>
则输出结果为_______。
9.在循环中,continue语句与break语句的区别是:
continue语句是语句的区别是:
continue语句是___结束本次循环,进入下一次循环;
______,break是__结束循环。
_______。
三、程序填空与算法题
1.下面程序是计算10个整数中奇数的和及其偶数的和,请填空。
#include
{inta,b,c,i;
a=c=0;
for(i=1;
i<
=10;
i++)
{scanf(“%d”,&
b);
canf(“%d”,&
____if(b%2==0)_____
_____a=a+b____
_____elsec=c+b____}
偶数的和=%d\n"
a);
奇数的和=%d\n"
c);
2.编写一个自定义函数,实现求两个实数的平方和
floatsum(floatx,floaty)
{returnx*x+y*y;
}
3.以下程序运行后的输出结果是___.ABC______。
{chars[]="
GFEDCBA"
;
intp=6;
while(s[p]!
=‘D’)
{printf("
%c"
p);
p=p-1;
}}
4.定义一个反映学生信息的结构体,包括学生的姓名,性别,年龄,成绩等。
structstudent{
charname[10];
charsex;
intage;
5.以下程序输出的结果是__.12624120_______。
intff(intn)
{staticintf=l;
f=f*n;
returnf;
{inti;
=5;
i++)printf("
%d\n"
ff(i));
6.设有以下程序:
{intn1,n2;
scanf("
n2);
while(n2!
=0)
{n1=n2;
n2=n2/10;
%d"
n1);
程序运行后,如果从键盘上输入1298;
则输出结果为_____8921____。
7.下面程序的功能是:
输出100以内(不包含100)能被3整除且个位数为6的所有整数,请填空。
#Include
{inti,j;
_____.i<
100_______;
i++)
if(__i%3==0&
i+==6_____________)
j);
四、编程题
1.编程实现求解下面的式子的结果
s=1*2+2*3+3*4+…+20*21
main()
{intm,n,sum=0;
for(m=1;
m<
=20;
m++)
sum=sum+m*(m+1);
printf(“%s”,sum);
}
2.编程实现求下面的式子的结果
#include“math.h”
{floatx,y;
scanf(“%f”&
x);
if(x>
6)
y=(x-3)/(2*x-12);
else
y=-2*x*x+4*x-10;
printf(“y=%f”,y);
3.编程实现将文本文件file1.dat的内容读出来,显示到屏幕上。
{charch;
FILE*fp1,*fp2;
fp1=fopen(“file1.dat”,“r”);
fp2=fopen(“file2.dat”,“r”);
fp3=fopen(“file3.dat”,“w”);
Ch=fgetc(fp1);
While(ch!
=EOF)
{fputc(ch,fp3);
fputc(ch,fp3);
Ch=fgetc(fp2);
Fclose(fp1);
Fclose(fp2);
Fclose(fp3);
}
6