托普集团程序员面试试卷
一、选择题(每题1分,共20分)
1. 下列那种语言是面向对象的( C )
A. C B. PASCAL C. C++ D. FORTRAN77
2.在 Windows9x 下,可以进入 MS-D0S 方式。当在do
S 提示符下键入 ( B ) 命令后,系统将退出 MS-DOS方式,返回到 WIndows 方式。
A. CLOSE B. EXIT C. QUIT D. RETURN
3.下面哪些是面向对象的基本特性:(A、B、C )
A 多态 B 继承 C 封装 D 接口
4.在C++中经常要进行异常处理,下面哪些是异常处理常用到的关键词:( B )
A try B catch C throw D break E contiue
5.数据库技术中的“脏数据',是指(C)的数据。
A.错误 B.回返 C.未提交 D.未提交的随后又被撤消
6.TCP/IP是一种(B)
A.标准 B.协议 C.语言 D.算法
7. 下面有关计算机操作系统的叙述中,不正确的是( B)
A 操作系统属于系统软件
B 操作系统只负责管理内存储器,而不管理外存储器
C UNIX 是一种操作系统
D 计算机的处理器、内存等硬件资源也由操作系统管理
8.微机上操作系统的作用是(D )
A 解释执行源程序 B 编译源程序
C 进行编码转换 D 控制和管理系统资源
9.下列存储器中存取速度最快的是( A)
A 内存 B 硬盘 C 光盘 D 软盘
10.在计算机中,—个字节是由多少个二进制位组成的(B )
A. 4 B. 8 C. 16 D. 24
11. 存储16×16点阵的一个汉字信息,需要的字节数为(A )
A 32 B 64 C 128 D 256
12. 以下选项中合法的字符常量是(D)
A."B" B. '/010' C. 68 D. D
13. 假定x和y为double型,则表达式x=2,y=x+3/2的值是(A)
A. 3.500000 B. 3 C. 2.000000 D. 3.000000
14. 以下合法的赋值语句是(D)
A. x=y=100 B. d--;
C. x+y;
D. c=int(a+b);
15. 设正x、y均为整型变量,且x=10 y=3,则以下语句
pprintf("%d,%d/n",x--,--y);
的输出结果是(D)
A.10,3 B. 9,3 C. 9,2 D.10,2
16. x、y、z被定义为int型变量,若从键盘给x、y、z输入数据,正确的输入语句是(B)
A .INPUT x、y、z;
B. scanf("%d%d%d",&x,&y,&z);
C. scanf("%d%d%d", x,y,z);
D. read("%d%d%d",&x,&y,&z);
17.以下数组定义中不正确的是(D)
A) int a[2][3];
B) int b[][3]={0,1,2,3};
C) int c[100][100]={0};
D) int d[3][]={{1,2},{1,2,3},{1,2,3,4}};
18. 以下程序的输出结果是(C)
main()
{
int a[4][4]={{1,3,5},{2,4,6},{3,5,7}};
printf("%d%d%d%d/n",a[0][3],a[1][2],a[2][1],a[3][0];
}
A) 0650 B) 1470 C) 5430 D) 输出值不定
19 以下程序的输出结果是(B)
main()
{
char st[20]= "hello/0/t///";
printf(%d %d /n",strlen(st),sizeof(st));
}
A) 9 9 B) 5 20 C) 13 20 D) 20 20
20. 当调用Windows API函数InvalidateRect,将会产生什么消息(B)
A:WM_PAINT B:WM_CREATE
C:WM_NCHITTEST D:WM_SETFOCUS
二、填空题(每题3分,共30分)
1.请列举当前一些当前流行的数据库引擎_ADO,BDE,DAO,ODBC___
2. 为了将当前盘当前目录中的所有文本文件(扩展名为.TXT)的内容打印输出,正确的单条DOS命令为___TYPE *.TXT>PRN ___。
3. 计算机网络分为局域网和广域网,因特网属于_广域网____。
4. 设y是int型变量,请写出判断y为奇效的关系表达_return y%2=0 ? 0:1______。
5. 设有以下程序:
main()
{ int n1,n2;
scanf("%d",&n2);
while(n2!=0)
{ n1=n2%10;
n2=n2/10;
printf("%d",n1);
}
}
程序运行后,如果从键盘上输入1298;则输出结果为__8921__。
6.以下程序运行后的输出结果是__98____。
main()
{ char s[ ]="9876",*p;
for ( p=s ;
p<s+2 ;
p++) printf("%s/n", p);
}
7.以下函数的功能是:求x的y次方,请填空。
double fun(do
uble x, int y)
{ int i;
double z;
for(i=1, z=x;
i<y;i++) z=z* _X____;
return z;
}
8.以下程序段打开文件后,先利用fseek函数将文件位置指针定位在文件末尾,然后调用ftell函数返回当前文件位置指针的具体位置,从而确定文件长度,请填空。
FILE *myf;
ling f1;
myf= FOpen("test.t","rb");
fseek(myf,0,SEEK_END);
f1=ftel(myf);
fclose(myf);
printf("%d/n",f1);
9. 以下程序输出的最后一个值是_100_____。
int ff(int n)
{ static int f=l;
f=f*n;
return f;
}
main()
{ int i;
for(I=1;I<=5;I++ printf("%d/n",ff(i));
)
10. 以下程序运行后的输出结果是___54__。
main()
{ int i=10, j=0;
do
{ j=j+i;
i--;
while(i>2);
printf("%d/n",j);
}
三、判断题(每题2分,共20分)
1:动态链结库不能静态调用。 ×
2:UDP是面向无连接的网络连接 √
3:ASP是一种数据库引擎 ×
4:队列是先进后出。 ×
5:Weblogic是分布式应用服务器。 √
6:TCP,UDP都是传输层的协议。 √
7: 两个线程不能共存于同一地址空间 √
8: JAVA是一种跨平台的开发工具 ×
9.在WINDOWS操作系统中对外设是以文件的方式进行管理 ×
10. 虚拟内存实际是创建在硬盘上的 √
四、问答题(每题10分,共30分)
1. 写出从数据库表Custom中查询No、Name、Num1、Num2并将Name以姓名显示、计算出的和以总和显示的SQL。
答案:Select No,Name as 姓名,(Num1+Num2) as 总和 From Custom
2. 何为“事务处理”,谈谈你对它的理解。
答案:一个最简单的定义是,事务处理是对某种服务的请求,而且是否接受或拒绝这种请求将即时答复请求者。在请求和响应之间,资源(如文件、数据库等)将根据需要阅读和更新。从事务处理的发展历史来看,大致经历了一个从集中处理到分布式处理的演进过程。这一转变主要的动力是伴随着Internet的兴起,客户对于更快、更安全的事务处理的客观需求和面向对象的应用所提供的技术实现的可能性。
3. 常用的数据结构有哪些?请枚举一些。(不少于5个)
答案:线性表、堆栈、队列、数组、树、二叉树、字符串。
4. 什么是OOP?什么是类?请对比类和对象实例之间的关系。
答案:OOP是面向对象程序设计
类是一组具有相同属性、相同行为、和其他对象有相同关系、有相同表现的对象描述。类是对象的中间状态,一个对象是一个类的的实例,一个对象不能由几个类实例化。
在对象系统中,人们并不去描述每个对象,而是将注意力集中于具有相同属性的一类对象,抽象出这样一类对象的共同结构和行为。具有相同属性和许可操作的一组对象称为对象类。类中的每个对象都是该对象类的对象实例。
5. 有一组数字(3,10,6,8,98,22),请编程排序(升降序皆可),语言不限,算法不限,但须注明是何种算法。
答:
即然大家用C答题,那我就勉为其难用C写段代码,因为长时间用DELPHI、JSP写代码,有些地方记不起来了,还请见谅。
Void ArraySort()
{ int e[]={3,10,6,8,98,22};
int I,j,k,t;
for (I=0,I<6;I++) {
for (k=I,j=j+1;j<n;j++)
if (e[k]>e[j]) k=j;
if (k!=I) {
t= e;
e=e[k];
e[k]= t;
}
}
}
/* 以上算法是最简单的选择排序(好像没记错吧)(:*/
}