微信搜索关注"91考试网"公众号,领30元,获取公务员、事业编、教师等考试资料40G!
一、填空题:
每小题1分,共17分
1、算法的复杂度主要包括时间复杂度和 __1__ 复杂度。
自评分
2、数据的物理结构在计算机存储空间中的存放形式称为数据的 __2__ 。
自评分
3、若按功能划分,软件测试的方法通常分为 __3__ 测试方法和黑盒测试方法。
自评分
4、数据库三级模式体系结构的划分,有利于保持数据库的 ___4___ 。
自评分
5、在关系运算中,查找满足一定条件的元组的运算称之为 ___5___ 。
自评分
6、 在C语言中(以16位PC机为例),一个float型数据在内存中所占的字节数为4:一个double型数据在内存中所
占的字节数为 ___6___ 。
自评分
7、 设有以下变量定义,并已赋确定的值,
char w;int x;floaty;double Z;
则表达式:w*x+z-y所求得的数据类型为上 ___7___ 。
自评分
8、 若运行时给变量x输入12,则以下程序的运行结果是 ___8___ ;
main(){
int x,y;
scanf(%d,&x);
y=x>12?x+10:x-12;
printf(%d ,y);
}
自评分
9、四条语句:x++;、++x;、x=x+1;、x=1+x;,执行后都使变量x中的值增1,请写出一条同一功能的赋值语句(不得与列举的相同) ___9___ 。
自评分
10、 设有以下定义和语句,则*(*(P+2)+1)的值为 ___10___ 。
int[3][2]={10,20,30,40,50,60},(*p)[2];
p=a;
自评分
11、 若要使指针p指向一个double类型的动态存储单元,请填空。
p= ___11___ malloc(sizeof(double));
自评分
12、 下面程序的功能:输出100以内能被3整除且个位数为6的所有整数,请补充完整。
main()
{ int i,j;
for(i=0; __12___ ;i++)
{ j=i*10+6;
if( ___13___ )continue;
printf(%d,j);
} }
自评分
13、 函数mycmp(char*s,char*t)的功能提比较字符串s和t的大小,当s等于t时返回0,当s>t返回正值,当s<t时返回负值。请填空。
mycmp(char*s,char*t)
{ while(*s==*t)
{ if(*s=='''''''')return0;
++s;++t;
}
return( ___14___ )
}
自评分
14、 以下程序运行后的输出结果是 ___15___ 。
void fun()
{
static int a=0;
a+=2;
printf(%d,a) ;
}
main()
{ int cc;
for(cc=1;cc<4,cc++)fun();
printf( );
}
自评分
15、 下列程序的运行结果是 ___16___ 。
main()
{ union EXAMPLE
{ struct
{ int x;int y;}in;
int a;
int b;
} e:
e.a=1;e.b=2;
e.in.x=e.a*e.b;
e.in.y=e.a+e.b;
printf(%d,%d ,e.in.x,e.in.y);
}
自评分
16、在对文件进行操作的过程中,若要求文件的位置回到文件的开头,应当调用的函数是 ___17___ 函数。
自评分
17、 以下函数用于求出一个2×4矩阵中的最大元素值。
max_value(arr)
int arr[][4];
{
int i,j,max;
max=arr[O][0];
for(i=0;i<2;i++)
for(j=0; ___18___ ;j++)
if( ___19___ >max)max= ___20___ ;
return(max);
}
自评分
二、单选题:
每小题1分,共49分
1、下面叙述正确的是_______。
A.算法的执行效率与数据的存储结构无关
B.算法的空间复杂度是指算法程序中指令(或语句)的条数
C.算法的有穷性是指算法必须能在执行有限个步骤之后终止
D.算法的时间复杂度是指执行算法程序所需要的时间
2、以下数据结构属于非线性数据结构的是_______。
A.队列
B.线性表
C.二叉树
D.栈
3、在一棵二叉树上第8层的结点数最多是_______。
A.8
B.16
C.128
D.256
4、下面描述中,不符合结构化程序计风格的是_______。
A.使用顺序、选择和重复(循环)三种基本控制结构表示程序的控制逻辑
B.自顶向下
C.注重提高程序的执行效率
D.限制使用goto语句
5、以下概念中,不属于面向对象方法的是_______。
A.对象、消息
B.继承、多态
C.类、封装
D.过程调用
6、在结构化方法中,用数据流程图(DFD) 作为描述工具的软件开发阶段是_______。
A.可行性分析
B.需求分析
C.详细设计
D.程序编码
7、软件生命周期中所花费用最多的阶段是_______。
A.详细设计
B.软件编码
C.软件测试
D.软件维护
8、数据库系统的核心是_______。
A.数据模型
B.DBMS
C.软件工具
D.数据库
9、下列叙述中正确的是_______。
A.数据处理是将信息转化为数据的过程
B.数据库设计是指设计数据库管理系统
C.如果一个关系中的属性或属性组并非该关系的关键字,但它是另一个关系的关键字,则称其为本关系的外关键字
D.关系中的每列称为元组,一个元组就是一个字段
10、下列模式中,_______是用户模式。
A.内模式
B.外模式
C.概念模式
D.逻辑模式
11、C语言规定,程序中各函数之间_______。
A.既允许直接递归调用也允许间接递归调用
B.不允许直接递归调用也不允许间接递归调用
C.允许直接递归调用不允许间接递归调用
D.不允许直接递归调用允许间接递归调用
12、在使用程序流程图来表示算法时,菱形用来表示_______。
A.输入与输出
B.子程序
C.判断分支
D.循环边界
13、C语言中下列叙述正确的是_______。
A.不能使用do...while语句构成的循环
B.do...while语句构成的循环,必须用reak语句才能退出
C.do...while语句构成的循环,当while语句中的表达式值为非零时结束循环
D.do...while语句构成的循环,当while语句中的表达式值为零时结束循环
14、以下选项中属于C语言的数据类型是_______。
A.复数型
B.逻辑型
C.双精度型
D.集合型
15、在C语言中,不正确的int类型的常数是_______。
A.32768
B.0
C.037
D.0xAF
16、 以下程序输出的结果是_______。
main()
{
int a=65535;
printf(%d%u,a,a) ;
}
A.-1-1
B.65535 65535
C.-1 65535
D.65535-1
17、下列描述中不正确的是_______。
A.字符型数组中可以存放字符串
B.可以对字符型数组进行整体输入、输出
C.可以对整型数组进行整体输入、输出
D.不能在赋值语句中通过赋值运算符“=”对字符型数组进行整体赋值
18、 以下程序的输出结果是_______。
main()
{ int i,x[3][3]={9,8,7,6,5,4,3,2,1},*p=&x[1][1];
for(i=0;i<4;i+=2)printf(%d,p[i]);
}
A.5 2
B.5 1
C.5 3
D.9 7
19、下列可用于C语言标识符的一组是_______。
A.void WORD defie
B.a 6$y For
C.2a izeof ac
D.It defie izeof
20、 以下程序的运行结果是_______。
#include stdio.h
main()
{
int a[]={1,2,3,4,5,6,7,8,9,10,11,12};
int *p=a+5,*q=NULL;
*q=*(p+5);
printf(%d %d ,*p,*q);
}
A.运行后报错
B.6 6
C.6 12
D.5 5
21、以下说法中正确的是_______。
A.C语言程序总是从第一个函数开始执行
B.在C语言程序中,要调用函数必须在mai()函数中定义
C.C语言程序总是从mai()函数开始执行
D.C语言程序中的mai()函数必须放在程序的开始部分
22、 有如下程序
float fun (int x,int y){return(x+y);}
main()
{
int a=2,b=5,c=8;
printf(%3.Of ,fun((int)fun(a+c,b) ,(a-c)))
}
程序运行后的输出结果为_______。
A.编译出错
B.9
C.21
D.9.0
23、能正确表示a和b同时为正或同时为负的逻辑表达式是_______。
A.(agt=0gt=0)amam(alt0=0)
B.(agt0amamgt=0)amam(alt0amamlt0)
C.(a+gt0)amam(a+lt=0)
D.a*gt0
24、若已定义:int a[9],*p=a;并在以后的语句中未改变p的值,不能表示a[1]地址的表达式是 _______。
A.+1
B.a+1
C.a++
D.++
25、 以下程序的输出结果是_______。
main()
{ int a=-1,b=1,k;
if(++a<0)&&!(b-<=0))
printf(%d %d ,a,b) ;
else
printf(%d %d ,b,a) ;
}
A.-1 1
B.0 1
C.1 0
D.0 0
26、 下面程序的输出结果是_______。
#define P1(x)printf(x)
main()
{
char d[]=p;
P1(d) ;
P1(d);
}
A.d
B.dd
C.d
D.d
27、以下选项中,能定义s为合法的结构件变量的是_______。
A.tyedef truct ac{ doule a;char [10]; };
B.truct{ doule a;char [10]; }
C.truct ABC{ doule a;char [10];}ABC;
D.tyedef ABC{ doule a;char [10];}ABC;
28、 请读程序:
#include<stdio.h>
#include<string.h>
main()
{
char*s1=AbCdEf,*s2=aB;
s1++;s2++;
printf(%d ,strcmp(s1,s2));
}
上面程序的输出结果是_______。
A.正数
B.负数
C.零
D.不确定的值
29、 请读程序:
#include<stdio.h>
main()
{
int a=5,b=7,c=9;
pintf(%d,%d,a,b,c) ;
printf(%d,%d,a,d) ;
} 上面程序的输出结果是_______。
A.5,7,9,5,7
B.5,7,5,7
C.5,7,不定7,9
D.5,7,5,7,不定
30、 请读程序:
#include<stdio.h>
func(int a,int b) {
int c;
c=a+b;
return c;
}
main(){
int x=6,y=7,z=8,r,
r=func((x-,y++,x+y),z-);
printf(%d ,r);
}
上面程序的输出结果是_______。
A.11
B.20
C.21
D.31
31、 请读程序:
#include<stdio.h>
main()
{
int a,b;
for(a=1,b=1;a<=100:a++){
if(b>=20)break;
if(b%3=1”{b+=3;continue;}
b=5;
}
printf(%d ,a) ;
} 上面程序的输出结果是_______。
A.7
B.8
C.9
D.10
32、设变量x为float型且已经赋值,则以下语句中能够将x中的数值保留到小数点后面两位,并将第三位四舍五入的是_______。
A.x=x*l00+0.5/100.0
B.x=(x*100+O.5)/100
C.x=(it)(x*100+0.5)/100.0
D.x=(x/100+0.5)*100.0
33、 请读程序片段(字符串内没有空格字符):
printf(%d ,strlen(ATS 0121\));上面程序片段的输出结果是_______。
A.11
B.10
C.9
D.8
34、 运行以下程序后,如果从键盘上输入china#<回车>,贝愉出结果为_______。
#include<stdio.h>
main()
{
int v1=0,v2=O;char ch;
while((ch=getchar())!=''''#'''')
switch(ch)
{
case''''a'''':
case''''h'''':
default:v1++;
case''''O'''':v2++;
}
printf(%d,%d ,v1,v2);
}
A.2,0
B.5,0
C.5,5
D.2,5
35、请选出司用作C语言用户标识符的一组标识符_______。
A.void defie WORD
B.a3 3 _123 IF
C.For _ae cae
D.2a DO izeof
36、下面能正确定义数组,并正确赋值的语句是_______。
A.it N=5,[N][N]
B.it a[1][2]={{1},{3}}
C.it c[2][]={{1,2},{3,4}}
D.it d[3][2]={{1,2},{34}}
37、 请选出以下程序的输出结果_______。
#include<stdio.h>
sub(int*s,inty)
{ static int t=3,
y=s[t];t-;
}
main()
{ int a[]={1,2,3,4},i,x=0;
for(i=0;i<4;i++){
sub(a,x);printf(%d,x);}
printf( );
}
A.1234
B.4321
C.0000
D.4444
38、 假定下面程序可执行文件名prg.exe,则该程序所在的子目录下输入命令行:prg hello good<回车>后,
程序的输出结果是_______。
main(int argc,char*argv[])
{
int i;
for(i=1;i<argc;i++)printf(%c,argv[i]);
}
A.hello good
B.hg
C.hel
D.hellogood
39、 若有以下说明和语句,请选出哪个是对c数组元素的正确引用_______。
int c[4][5],(*cp)[5];
cp=c;
A.c+1
B.*(c+3)
C.*(c+1)+3
D.*(*c+2)
40、下列选项中不能正确定义结构体的是_______。
A.tyedef truct {it red it gree it lue }COLOR COLORcl
B.truct colorcl {itred itgree it lue }
C.truct color {it red it gree it lue }cl
D.truct { it red it gree it lue }cl
41、 设有以下语句
char a=3,b=6,c;
c=a^b<<2;
则c的二进制值是_______。
A.00011011
B.00010100
C.00011100
D.00011000
42、 设有如下定义
struct ss
{ char name [10];
int age;
char sex;
}std[3],*p=std;
下列各输入语句中错误的是_______。
A.caf(%d,am(*).age);
B.caf(%,amtd.ame);
C.caf(%c,amtd[0].ex);
D.caf(%c,am(-gtex));
43、 设有 static char str[]=Beijing;
则执行
printf(%d ,strlen(strcpy(str,China)));
后的输出结果为_______。
A.5
B.7
C.12
D.14
44、 以下程序的输出结果是_______。
#include<stdio.h>
main()
{ int i;
for(i=1;i<5;i++)
{
if(i%2)printf(*);
else continue;
printf(#);
}
printf($ );
}
A.*#*#*#$
B.#*#*#*$
C.*#*#$
D.#*#*$
45、 库函数strcpy用以复制字符串,若有以下定义和语句:
char str1[]=china,str2[10],*str3,*str4=china;
则对库函数strcpy的正确的调用是_______。
A.trcy(trl,eole);
B.trcy(tr2,eole)
C.trcy(tr3,eole);
D.trcy(tr4,eole)
46、 有以下程序
#include<stdio.h>
main()
{ int c;
while((c=getchar())!='''' '''')
{ switch(c-''''2'''')
{ case O:case1:putchar(c+4);
case 2:putchar(c+4);braeak;
case3:putchar(c+3);
default:putchar(c+2);break;}
}
}
从第一列开始输入以下数据,↓代表一个回车符。
2473↓
程序的输出结果是_______。
A.668977
B.668966
C.66778777
D.6688766
47、 下面程序的输出结果是_______。
union un
{ int a[4];
long b;
char c[6];}
main()
{
union un u;
printf(%d%d,sizeof(u),sizeof(ua) );
}
A.82
B.88
C.188
D.182
48、 以下程序的输出结果是_______。
main()
{ int w=5;fun(w);printf( );}
fun(int k)
{ if(k>0) fun(k-1);
printf(%d,k);
}
A.5 4 3 2 1
B.0 l 2 3 4 5
C.1 2 3 4 5
D.5 4 3 2 1 0
49、若fp是指向某文件的指针,且已读到此文件的末尾,则函数feof(fp)的返回值是_______。
A.EOF
B.0
C.非零值
D.NULL