公司开发部要招VC++开发人员,各位高手给出几道考题,一定要附答案哦

解决方案 »

  1.   


     
     回复人: sxslyy(孤松傲雪) ( ) 信誉:100  2003-09-22 11:24:00  得分:0 
     
     
      公司委托我出的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; // 指向字符串的指针 };
       
     
    Top 
     
     回复人: sxslyy(孤松傲雪) ( ) 信誉:100  2003-09-22 11:27:00  得分:0 
     
     
      托普集团程序员面试试卷面试编号:                 姓名:    一、选择题(每题1分,共20分)1. 下列那种语言是面向对象的(C)A. C          B. PASCAL        C. C++          D. FORTRAN772.在 Windows9x 下,可以进入 MS-D0S 方式。当在 DOS 提示符下键入 (B ) 命令后,系统将退出 MS-DOS方式,返回到 WIndows 方式。 A. CLOSE   B. EXIT       C. QUIT        D. RETURN3.下面哪些是面向对象的基本特性:(A,B,C )A 多态      B 继承       C 封装         D 接口4.在C++中经常要进行异常处理,下面哪些是异常处理常用到的关键词:(A,B,C)    A try         B catch       C throw         D break E contiue5.数据库技术中的“脏数据',是指(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. 2411. 存储16×16点阵的一个汉字信息,需要的字节数为( )A 32        B 64        C 128        D 25612. 以下选项中合法的字符常量是(C)A."B"       B. '\010'     C. 68         D. D13. 假定x和y为double型,则表达式x=2,y=x+3/2的值是()A. 3.500000  B. 3        C. 2.000000    D. 3.00000014. 以下合法的赋值语句是()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,216. 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) 输出值不定
      

  2.   


    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 2020. 当调用Windows API函数InvalidateRect,将会产生什么消息()A:WM_PAINT           B:WM_CREATE   C:WM_NCHITTEST      D:WM_SETFOCUS
    //no.1
    二、填空题(每题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);}
      

  3.   

    不会吧,上边的这么简单,是大学考试内容拿去copy一下吗?
      

  4.   

    老实说我自己很烦笔试,有很多东西都不是靠记的
    程序编一编立刻就知道对不对了,面试应该是考解决问题的能力,不是记忆力,不是有否扎实的基础在深圳的时候面试基本上都有上机考试,我觉得很好
    有VC,有MSDN,题目可以稍微出的有难度点,有经验的三两下就搞定你的问题奇怪的是在上海基本上就没有上机考试,有上机考试也没有VC,只有WORD试卷
    我真觉得很不舒服。如果我去一家公司面试,他给我上面的题,我有立刻走人的冲动,什么玩意,大家说呢?
      

  5.   

    我也同意楼上的。最好是上机出一道题,和自己项目中某些东西有关的。比如如果是网络的项目,就出一道让他用Tcp/UDP实现一个什么什么的传送。
    这样的话,一可以看到一个人的基本功,二可以看到一个人的编程习惯,还可以通过程序看这个人的思维方式。真是很好的方法!推荐楼主使用
      

  6.   

    是看你看了没看现在比较精典的书籍。
    据我看来是C++ Primer,不过有几册我是电子版的,
    看来用钱买书还有这个好处!!
    晕!!
      

  7.   

    怎么说呢,这些题目是考那些没有工作经验的毕业生的,他们除了背书还会做什么?对于有一定经验的程序员,再这么考就有点贻笑大方了,谁都知道用MSDN和基本工具书摆平一切。
      

  8.   

    考分析能力吧,一些逻辑跟推理的题目
    你可以参考IBM的面试题目
      

  9.   

    看的我目瞪口呆,强,好强的题目,我再补几题吧,
    c++ primer一共分几个章?
    其中讲到模板技术的是哪几个章?
    第271页的小标题是什么?
    第一次虚函数出现是在第几章?
      

  10.   

    fzd999(花差花差) 好像很看不起毕业生啊,可是这里哪个人不是从毕业生过来的。
    虽然大多数的毕业生对编程不熟,不过也不可否认有些人要比你还强啊,我相信我的一些同学就有这个实力
      

  11.   

    上面那些题,其实要我做我可能拿不了高分
    第一.我没有背熟书上的内容
    第二.我会将题目的意思理解错
    第三.程序写多了会形成自己的风格,结果语言的某些方面会有所忽略
    ……
    还是大家认同的观点:面试应该是考解决问题的能力,不是记忆力,当然基础要有,但不可能面面俱到的,需要的时候找msdn找资料
      

  12.   

    gaosl11(gaosl11) 我说的是没有经验的毕业生,另外我不是学计算机专业的,比我强也没什么现在牛人遍天下,本科生就能写出个操作系统的也不是没有,你不必要太扣我的字眼。实际情况里面,几乎每个本科生刚出来的时候什么都做不来,他们知道的只是写理论知识。
      

  13.   

    1。看过。NET 吗?和VC有何区别?
    2。列举常用的操作数据库的方式。
      

  14.   

    还有:你在csdn 有账号吗?几个星!:)
    :(