计算机二级考试模拟题一Word下载.docx
《计算机二级考试模拟题一Word下载.docx》由会员分享,可在线阅读,更多相关《计算机二级考试模拟题一Word下载.docx(17页珍藏版)》请在冰豆网上搜索。
A.保证模块中每一独立的路径至少执行一次
B.保证所有判断的每一分支至少执行一次
C.保证每一循环都在边界条件和一般条件下最多执行一次
D.验证所有内部数据结构的有效性
9.数据库管理系统DBMS中用来定义模式、内模式和外模式的语言为()
A.CB.BasicC.DDLD.DML
10.假定学生关系是S(SNO,SNAME,SEX,AGE)
课程关系是C(CNO,CNAME,CREDIT)
学生选课关系是SC(SNO,CNO,GRADE)
要查找选修“数据库”课程的女学生的姓名,将涉及的关系是()
A.SB.C,SC.S,SCD.S,C,SC
11.以下叙述不正确的是( )
A.一个C语言源程序可由一个或多个函数组成
B.一个C语言源程序必须包含一个main函数
C.C语言源程序的基本组成单位是函数
D.在C语言源程序中,注释说明只能位于一条语句的后面
12.二进制语言属于()
A.面向机器的语言B.面向过程的语言
C.面向问题的语言D.面向汇编的语言
13.若有定义:
inta=7;
floatx=2.5,y=4.7,则表达式x+a%3*(int)(x+y)%2/4的值是()
A.2.500000B.2.750000C.3.500000D.0.000000
14.能正确表示a≥10或a≤0的关系表达式是()
A.a>=10ora<=0B.a>=10|a<=0
C.a>=10&
&
a<=0D.a>=10||a<=0
15.若变量a,i已正确定义,且i已正确赋值,合法的语句是()
A.a==1B.++i;
C.a=a++=5;
D.a=int(i);
16.执行下面的程序段
intx=35;
charz=’A’;
intb;
B=((x&
15)&
(z<’a’));
后,B的值为()
A.0B.1C.2D.3
17.请读程序片段(字符串内没有空格字符):
printf(“%d\n”,strlen(“ATS\n012\1\\”));
上面程序片段的输出结果是()
A.11B.10C.9D.8
18.请读程序:
#include<
stdio.h>
main()
{
inta;
floatb,c;
scanf(“%2d%3f%4f”,&
a,&
b,&
c);
printf(“\na=%d,b=%f,c=%f\n”,a,b,c);
}
若运行时从键盘上输入9876543210,则上面程序的输出结果是()
A.a=98,b=765,c=4321B.a=10,b=432,c=8765
C.a=98,b=765.000000,c=4321.000000D.a=98,b=765.0,c=4321.0
19.以下if语句语法正确的是()。
A.if(x>
0)B.if(x>
0)
printf(“%f”,x){x=x+y;
printf(“%f”,x);
}
elseprintf(“%f”,-x);
C.if(x>
0)D.if(x>
{x=x+y;
};
printf(“%f”,x)}
20.请阅读以下程序:
main()
inta=5,b=0,c=0;
if(a+b+c)printf(“***\n”);
elseprintf(“$$$\n”);
以上程序()。
A.有语法错不能通过编译B.可以通过编译但不能通过链接
C.输出***D.输出$$$
21.定义如下变量:
intn=10;
则下列循环的输出结果是()。
while(n>
7)
n--;
printf(“%d\n”,n);
A.1098B.987C.10987D.9876
22.在下述程序中,判断i>
j共执行的次数是()。
inti=0,j=10,k=2,s=0;
for(;
;
)
{
i+=k;
if(i>
j)
printf(“%d”,s);
break;
s+=i;
A.4B.7C.5D.6
23.下面程序的运行结果是()。
#include<
main()
inta=1,b=10;
do
{b-=a;
a++;
while(b--<
0);
printf(“a=%d,b=%d\n”,a,b);
A.a=3,b=11B.a=2,b=8C.a=1,b=-1D.a=4,b=9
24.若有说明“inta[3][4];
”,则数组元素的非法引用是()。
A.a[0][2*1]B.a[1][3]C.a[4–2][0]D.a[0][4]
25.下列描述中不正确的是()。
A.字符型数组中可以存放字符串
B.可以对字符型数组进行整体输入、输出
C.可以对整型数组进行整体输入、输出
D.能在赋值语句中通过赋值运算符“=”对字符型数组进行整体赋值
26.若有以下说明和语句,对c数组元素的正确引用是()。
intc[4][5],(*cp)[5];
cp=c;
A.cp+2B.*(cp+2)+1C.*(cp+3)D.*(*cp+1)
27.由以下程序
char*s[]={“one”,“two”,“three”},*p;
p=s[1];
printf(“%c,%s\n”,*(p+1),s[0]);
执行后的输出结果是()。
A.n,twoB.t,oneC.w,oneD.o,two
28.设有以下定义:
inta[4][3]={1,2,3,4,5,6,7,8,9,10,11,12};
int(*prt)[3]=a,*p=a[0];
则下列能够正确表示数组元素a[1][2]的表达式是()。
A.*((*prt+1)[2])B.*(*(p+5))
C.(*prt+1)+2D.*(*(a+1)+2)
29.下列程序的输出结果是()。
inta[5]={2,4,6,8,10},*p,**k;
p=a;
k=&
p;
printf(“%d”,*(p++));
printf(“%d\n”,**k);
A.44B.22C.24D.46
30.执行下面的程序段后,变量的值为()。
intk=3,s[2];
s[0]=k;
k=s[1]*10;
A.不定值B.33C.30D.10
31.若有以下说明:
inta[12]={1,2,3,4,5,6,7,8,9,10,11,12};
charc=‘a’,d,g;
则数值为4的表达式是()
A.a[g–c]B.a[4]C.a[‘d’–‘c’]D.a[‘d’–c]
32.以下程序运行后的输出结果是()。
floatfun(intx,inty)
{return(x+y);
inta=2,b=5,c=8;
printf(“%3.0f\n”,fun((int)fun(a+c,b),a-c));
A.编译出错B.9C.21D.9.0
33.C语言规定,程序中各函数之间()。
A.既允许直接递归调用,也允许间接递归调用
B.不允许直接递归调用也不允许间接递归调用
C.允许直接递归调用不允许间接递归调用
D.不允许直接递归调用允许间接递归调用
34.请选出以下程序的输出结果()。
#include<
sub(int*s,inty)
staticintt=3;
y=s[t];
t--;
inta[]={1,2,3,4},i,x=0;
for(i=0;
i<
4;
i++)
sub(a,x);
printf(“%d”,x);
printf(“\n”);
A.1234B.4321C.0000D.4444
35.请选出以下程序的输出结果()。
#include<
sub(intx,inty,int*z)
{*z=y-x;
{
inta,b,c;
sub(10,5,&
a);
sub(7,a,&
b);
sub(a,b,&
printf(“%d,%d,%d\n”,a,b,c);
A.5,2,3B.-5,-12,-7C.-5,-12,-17D.5,-2,-7
36.1.在宏定义#definePI3.14159中,用宏名PI代替一个()
A.单精度数
B.双精度数
C.常量
D.字符串
37.以下程序的输出结果是( )
#definemax(x,y)(x)>
(y)?
(x):
(y)
main()
inta=5,b=2,c=3,d=3,t;
t=max(a+b,c+d)*10;
printf("
%d\n"
t);
A.6
B.60
C.7
D.9
38.如下程序的中的for循环执行的次数是( )
#define
N
2
M
N+1
NUM
(2*(M+1))