征集笔试面试或上机考试的经典题目.

olive75 2003-10-18 05:48:37
大家把一些认为比较经典的面试题目发给我,谢了先.
...全文
151 21 打赏 收藏 转发到动态 举报
写回复
用AI写文章
21 条回复
切换为时间正序
请发表友善的回复…
发表回复
pinghell 2003-12-20
  • 打赏
  • 举报
回复
华为的笔试编程题:

数据结构中的哟色夫问题!!可以到书上找相关的资料~
olive75 2003-10-29
  • 打赏
  • 举报
回复
up
sxslyy 2003-10-23
  • 打赏
  • 举报
回复
公司委托我出的Win32/C++程序员面试考试题,共享出来给大家看一下。 fireseed(原作)

关键字 面试题 C++


★保密★ (公司名屏蔽)软件有限责任公司 Win32/C++程序员应骋考试题 (计时150分钟,满分150分。) 考试注意事项: 1. 本试题的保密级别为1级,属公司内部材料,版权归(公司名屏蔽)所有,考试人不得私自将此试卷带离试场。 2. 本试卷必须和《应聘人员调查表》一起发放给考试人,考试人只有在认真如实的按要求填写过《应聘人员调查表》之后,方有权答卷。 3. 考试用笔、草稿纸等文具应由考试人自行准备。如果无法解决请向考官提出。 4. 在得到考官批准前不得擅自开始答题,考试时间一到必须立即交卷,否则考试成绩无效。 5. 本考试为闭卷考试,故禁止一切作弊行为,包括查阅资料、相互商讨等,否则永远取消作弊人考试资格。 6. 考试期间允许离开坐位2次,每次不得超过5分钟,超过限制将视为作弊行为。 7. 如对试卷有任何疑问,请及时向考官询问,但不得询问与题意相关的任何问题。 一、单项选择题:(共12题,每题2分,共24分) 1. 下面哪一个不是C++的标准数据类型? ( ) A. int B. char C. bool D. real 2. break关键字在哪一种语法结构中不能使用? ( ) A. for语句 B. switch语句 C. if语句 D. while语句 3. 类的继承方式有几种? ( ) A. 两种 B. 三种 C. 四种 D. 六种 4. extern关键字的作用是什么? ( ) A. 声明外部链接 B. 声明外部头文件引用 C. 声明使用扩展C++语句 C. 声明外部成员函数、成员数据。 5. C库函数strstr的功能是? ( ) A. 查找子串 B. 计算字符串长度 C. 字符串比较 D. 连结字符串 6. stl::deque是一种什么数据类型? ( ) A. 动态数组 B. 链表 C. 堆栈 D. 树 7. STL库里含有下面的哪一种泛型算法? ( ) A. KMP查找 B. 折半查找 C. 冒泡排序 D. 快速排序 8. 现在最快且最通用的排序算法是什么? ( ) A. 快速排序 B. 冒泡排序 C. 选择排序 D. 外部排序 9. Win32下的线程的哪一种优先级最高? ( ) A. THREAD_PRIORITY_HIGHEST B. THREAD_PRIORITY_IDLE C. THREAD_PRIORITY_TIME_CRITICAL D. THREAD_PRIORITY_ABOVE_NORMAL 10. 下面四个选项中,哪一个不是WinMain函数的参数? ( ) A. HINSTANCE B. INT C. LPSTR D. WPARAM 11. VC++的编译器中,运算符new底层的实现是什么? ( ) A. VirtualAlloc() B. HeapAlloc() C. GlobalAlloc() D. AllocateUserPhysicalPages() 12. 下面哪一本C++参考书最厚? ( ) A. 《Think in C++》 B. 《深入浅出MFC》 C. 《C++ Primer》 D. 《Effective C++》 二、不定项选择题:(共6题,每题3分,共18分,多选、错选、漏选均不给分) 1. vector::iterator重载了下面哪些运算符? ( ) A. ++ B. >> C. *(前置) D. == 2. CreateFile( )的功能有哪几个? ( ) A. 打开文件 B. 创建新文件 C. 文件改名 D. 删除文件 3. 下面哪些是句柄(HANDLE)? ( ) A. HINSTANCE B. HWND C. HDC D. HFONT 4. 下面哪些不是OpenGL标准几何元素的绘制模式? ( ) A. GL_FOG B. GL_LINE_STRIP C. GL_POINTS D. GL_TRIANGLE_FAN 5. 下面哪些运算符不能被重载? ( ) A. 做用域运算符“::” B. 对象成员运算符“.” C. 指针成员运算符“->” D. 三目运算符“? :” 6. 下面哪些人曾参与了世界上第一个C++编译器的开发? ( ) A. Bill Gates B. Stanley Lippman C. Anderson Hejlsberg D. Bjarne Stroustrup 三、填空题:(共8题,每题3分,共24分) 1. 一个大小为320 X 192,颜色为灰度索引色的设备相关位图有______字节。如果此位图颜色为24位真彩色,则它的大小有______字节。 2. Windows API的中文意义是________________。 3. 计算反正弦的库函数是______;计算浮点数绝对值的库函数是______;计算浮点数n次方的库函数是______;将浮点数转化为字符串的库函数是______。 4. 如果i等于5,那么( ++i ) - -的返回值是_____。 5. API LoadBitmap()的功能是从______中读取位图数据到内存。 6. new和_____对应,malloc和_____对应,他们之间_____交叉混用。calloc的功能是___________,realloc的功能是____________。 7. SendMessage和PostMessage都会向窗体发送一个消息,但SendMessage_________而PostMessage____________。 8. 输出指定圆心、半径、边数的圆上的点: const int nCount = 12; const double dOrgX = 5.0, dOrgY = 3.0; const double dRadius = 2.0; for( int i = 0; i < nCount; i++ ) { double dAngle = M_PI * 2.0 / (double)nCount * i; cout << “第” << i << “点:X = “ << ________; cout << “, Y = “ << __________ << endl; } 三、判断题:(共12题,每题2分,共24分) 1. 一个类必须要有一个不带参数的构造函数。 □ 2. 你不能写一个虚的构造函数。 □ 3. 类里面所有的函数都是纯虚函数时才是纯虚类。 □ 4. const成员函数对于任何本类的数据成员都不能进行写操作。 □ 5. 函数中带默认值的参数必须位于不带默认值的参数之后。 □ 6. char *p = “Test”; p[0] = ‘R’; □ 7. cout << “Test”; □ 8. stl::list不支持随机访问叠代器。 □ 9. stl::vector的效率比stl::list高。 □ 10. VC和VC++是一回事,而VC++是一种比C++更难一些的语言。 □ 11. 理论上,new和malloc造成的内存泄露都会由操作系统回收。 □ 12. 在C++中struct和class的差别很大,所以从语法上不能混用。 □ 四、简述题(共3题,每题5分,共15分) 1. 请简述PeekMessage和GetMessage的区别。 2. 请列出你所知道的在Windows SDK平台上,实现计时功能的方法。 3. 请简述你所知道的const的各种用法。 五、编程题:(共3题,第1小题7分,第2小题14分,第3小题24分) 1. 深度遍历二叉树。 struct Node { Node *Parent; Node *Left, *Right; }; void Through(Node *Root) { } 2. 二分法查找。 int DicFind( int *Array, int Count, int Value ) { } 3. 写出字符串类String的默认构造函数、析构函数和重载赋值运算符。已知类String的原型为: class String { public: String( const char *pStr = NULL ); // 默认构造函数 ~String( void ); // 析构函数 String &operate = ( const String &Source ); // 重载赋值运算符 private: char *m_pData; // 指向字符串的指针 };



sxslyy 2003-10-23
  • 打赏
  • 举报
回复
托普集团程序员面试试卷



面试编号: 姓名:



一、选择题(每题1分,共20分)

1. 下列那种语言是面向对象的(C)

A. C B. PASCAL C. C++ D. FORTRAN77

2.在 Windows9x 下,可以进入 MS-D0S 方式。当在 DOS 提示符下键入 (B ) 命令后,系统将退出 MS-DOS方式,返回到 WIndows 方式。

A. CLOSE B. EXIT C. QUIT D. RETURN

3.下面哪些是面向对象的基本特性:(A,B,C )

A 多态 B 继承 C 封装 D 接口

4.在C++中经常要进行异常处理,下面哪些是异常处理常用到的关键词:(A,B,C)

A try B catch C throw D break E contiue

5.数据库技术中的“脏数据',是指(D)的数据。

A.错误 B.回返 C.未提交 D.未提交的随后又被撤消

6.TCP/IP是一种(A,B)

A.标准 B.协议 C.语言 D.算法

7. 下面有关计算机操作系统的叙述中,不正确的是( )

A 操作系统属于系统软件

B 操作系统只负责管理内存储器,而不管理外存储器

C UNIX 是一种操作系统

D 计算机的处理器、内存等硬件资源也由操作系统管理

8.微机上操作系统的作用是( D)

A 解释执行源程序 B 编译源程序

C 进行编码转换 D 控制和管理系统资源

9.下列存储器中存取速度最快的是(A )

A 内存 B 硬盘 C 光盘 D 软盘

10.在计算机中,—个字节是由多少个二进制位组成的( )

A. 4 B. 8 C. 16 D. 24

11. 存储16×16点阵的一个汉字信息,需要的字节数为( )

A 32 B 64 C 128 D 256

12. 以下选项中合法的字符常量是(C)

A."B" B. '\010' C. 68 D. D

13. 假定x和y为double型,则表达式x=2,y=x+3/2的值是()

A. 3.500000 B. 3 C. 2.000000 D. 3.000000

14. 以下合法的赋值语句是()

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); 的输出结果是()

A.10,3 B. 9,3 C. 9,2 D.10,2

16. x、y、z被定义为int型变量,若从键盘给x、y、z输入数据,正确的输入语句是()

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.以下数组定义中不正确的是()

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. 以下程序的输出结果是()

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 以下程序的输出结果是()

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,将会产生什么消息()

A:WM_PAINT B:WM_CREATE

C:WM_NCHITTEST D:WM_SETFOCUS



二、填空题(每题3分,共30分)

1.请列举当前一些当前流行的数据库引擎__________

2. 为了将当前盘当前目录中的所有文本文件(扩展名为.TXT)的内容打印输出,正确的单条DOS命令为______。

3. 计算机网络分为局域网和广域网,因特网属于 广域网。

4. 设y是int型变量,请写出判断y为奇效的关系表达_______。

5. 设有以下程序:

main()

{ int n1,n2;

scanf("%d",&n2);

while(n2!=0)

{ n1=n2%10;

n2=n2/10;

printf("%d",n1);

}

}

程序运行后,如果从键盘上输入1298;则输出结果为____。

6.以下程序运行后的输出结果是______。

main()

{ char s[ ]="9876",*p;

for ( p=s ; p<s+2 ; p++) printf("%s\n", p);

}

7.以下函数的功能是:求x的y次方,请填空。

double fun( double x, int y)

{ int i;

double z;

for(i=1, z=x; i<y;i++) z=z* _____;

return z;

}

8.以下程序段打开文件后,先利用fseek函数将文件位置指针定位在文件末尾,然后调用ftell函数返回当前文件位置指针的具体位置,从而确定文件长度,请填空。

FILE *myf; ling f1;

myf= ______("test.t","rb");

fseek(myf,0,SEEK_END); f1=ftel(myf);

fclose(myf);

printf("%d\n",f1);

9. 以下程序输出的最后一个值是______。

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. 以下程序运行后的输出结果是_____。

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、Num1、Num2 from custom;

2. 何为“事务处理”,谈谈你对它的理解。

3. 常用的数据结构有哪些?请枚举一些。(不少于5个)

4. 什么是OOP?什么是类?请对比类和对象实例之间的关系。

5. 有一组数字(3,10,6,8,98,22),请编程排序(升降序皆可),语言不限,算法不限,但须注明是何种算法。

olive75 2003-10-22
  • 打赏
  • 举报
回复
up
Benjiaming 2003-10-21
  • 打赏
  • 举报
回复
解题咯,
变量交换的实现。
int a = 10, b = 11;
a = a+b;
b = a-b;
a = a-b;
????
其实效率不够高,而且产生了临时变量

int a = 10, b = 11;
a ^= b;
b ^= a;
a ^= b;
leisureftso 2003-10-21
  • 打赏
  • 举报
回复
分析库函数的安全性,为什么是安全或不安全的,如果不安全请给出解决措施:例如sprintf()、strcpy()、strcmp()、
不使用任何C/C++库函数,实现void strcpy(char* dest_string,const char* src_string)和 void atof(cahr* string)
olive75 2003-10-21
  • 打赏
  • 举报
回复
up
ljzcom 2003-10-20
  • 打赏
  • 举报
回复
解题咯,
变量交换的实现。
int a = 10, b = 11;
a = a+b;
b = a-b;
a = a-b;


olive75 2003-10-20
  • 打赏
  • 举报
回复
谢谢楼上的两位,还有吗?
tryber 2003-10-20
  • 打赏
  • 举报
回复
char* getstr()
{
char str1[]={"hello world"};
return str1;
}

int main()
{
printf(getstr());
}

? output result
tryber 2003-10-20
  • 打赏
  • 举报
回复
union{
union{ int i:2;
int j:3;
int k:4;
}ui
char c;
}uic;
uic.c=100;

uic.ui.k=?
olive75 2003-10-20
  • 打赏
  • 举报
回复
偶也说个题目,确实很简单,一个文本文件,把文本里面的内容倒叙排出.偶觉得用链表做的话好像效率会高些,不知道大家的意见,大家还有好的题目么?
olive75 2003-10-20
  • 打赏
  • 举报
回复
up
bigflyingpig 2003-10-20
  • 打赏
  • 举报
回复
两个变量表示两个整数,如何实现这两个变量的互换,只用这两个变量。
其实你也可以找些题目来考考你的面试官
yangchaobj 2003-10-19
  • 打赏
  • 举报
回复
经典之一:
写一个字符串拷贝函数:
一般的只能写成按字节交换的。
好的会写成自动计算字符串长度,按照32位交换的,这样的效率能快4倍;并能够利用const关键字。

骨灰一点的用嵌入C的汇编语言写,思路也是32位交换的,这个效率更高,是上面的n倍。(多少倍我忘了)
我用C写了一个32位的,和微软的C库比(纯汇编写的),效率最多的差20多倍甚至更多,少的差8倍。
sandsboy 2003-10-19
  • 打赏
  • 举报
回复
我也想要一份
hypermaster@163.com
olive75 2003-10-19
  • 打赏
  • 举报
回复
楼上的兄弟没面试过吗?说说自己映象深的题目
pinghell 2003-10-19
  • 打赏
  • 举报
回复
csu120@hotmail.com
weasea 2003-10-19
  • 打赏
  • 举报
回复
收集啊??
应付啊??
加载更多回复(1)

16,467

社区成员

发帖
与我相关
我的任务
社区描述
VC/MFC相关问题讨论
社区管理员
  • 基础类社区
  • Web++
  • encoderlee
加入社区
  • 近7日
  • 近30日
  • 至今
社区公告

        VC/MFC社区版块或许是CSDN最“古老”的版块了,记忆之中,与CSDN的年龄几乎差不多。随着时间的推移,MFC技术渐渐的偏离了开发主流,若干年之后的今天,当我们面对着微软的这个经典之笔,内心充满着敬意,那些曾经的记忆,可以说代表着二十年前曾经的辉煌……
        向经典致敬,或许是老一代程序员内心里面难以释怀的感受。互联网大行其道的今天,我们期待着MFC技术能够恢复其曾经的辉煌,或许这个期待会永远成为一种“梦想”,或许一切皆有可能……
        我们希望这个版块可以很好的适配Web时代,期待更好的互联网技术能够使得MFC技术框架得以重现活力,……

试试用AI创作助手写篇文章吧