联想[笔试题]
2013-09-24

注:笔试题根据面试者回忆记录,仅供参考;

1、请写出二进制数0111 1011 1000 所对应的十六进制及十进制形式

2、DOS API GDI GUI IDE MFC分别是那些单词的缩写

3、请书写你所知道的main函数所有形式的函数原型

4、定义一个宏MUL,可实现两个表达式的正确相乘

5、试列举30个以上符合C/C++标准的关键字

6、请写出程序cv.cpp的运行输出结果
     //cv.cpp
     void main()
     {
          struct node {int a;int b;int c;};
          struct node2 {int a;char b;int c;};
          struct node3{int a;int b;char c;};
          struct node4{int a;char b;short c;};
          struct node5 {int a;short b;char c;};
          struct nodde s={3,5,6};
          struct node *pt=&s;
          printf(“%d”,*(int*)pt);
          printf(“%d%d%d”,sizeof(node),sizeof(node2),sizeof(node3));
          printf(“%d%d”,sizeof(node4),sizeof(node5))
     }

7、请写出程序sp.cpp的运行输出结果
     //sp.cpp
     #include <stdio.h>
     #include <tchar.h>
     #include <conio.h>

     int i=9;
     int _tmain(int argc,_TCHAR* argv[])
     {
          { int i=5;
               {
                    int i=1;
                    i++;
               }
          i++;
     printf(“%d,”,i);
     }
     printf(“,%d”,i);
     _getch();
     return();
     }

8、请写出程序ul.cpp的运行输出结果
     //ul.cpp
     #include <stdio.h>
     #include <tchar.h>
     #include <conio.h>
     #include <Windows.h>
     #include <string>

     int _tmain(int argc,_TCHAR* argv[])
     {
          wchar_t str[16]=L”ABC”;
          int iLen = (int)strlen((char*)str);
          printf(“%d”,iLen);
          _getch();
          return0;
     }

9、请写出程序st.cpp的运行输出结果
     //st.cpp
     #include<stdio.h>

     void test(int v)
     {
          static int s=v;
          printf(“06 %d%d”,s,v);
     }

     int main(int argc,char* argv[])
     {
          int x=2;int y=3
          test(x++);
          x=x+++y;
          test(x++);
          return 0;
     }

10、请写出程序al.cpp的运行输出结果
     //al.cpp
     Void main()
     {
          int a[5]={1,2,3,4,5};
          int *ptr=(int *)(&a+1);
          int *pl =a;
          int **pp=&pl;
          printf(“%d%d%d%d%d”,*(a+1),*(ptr-1),pl[0],pp[0][3]);
     }


11、请指出ns.cpp中错误的的所在
     //ns.cpp

     #include <stdio.h>
     #include <tchar.h>
     #include <conio.h>
     #include <iostream>
     #include <string>
     int showstring(…)
     {
          string str1=”hello,”;
          string str2=”world”;
          count << str1+str2<<endl;
          return 0;
     }

     int _tmain(int argc,_TCCHAR* argv[])
     {
          string str1=”HI,”;
          string str2=”U”;
          int nCount =2;
          showstring(str1,nCount,str2);
          _getch();
          return 0;
     }


12、在a.c中有一个全局变量为int g_nM4A1_clips;那么如果在b.cpp中想对此变量值乘2,并将运算结果赋给此变量,那么应该如何在b.cpp中书写代码

13、编写程序计算文本文件的行数

14、请写出程序dt.cpp的运行输出结果

     //dt.cpp
     #include<stdio.h>
     #include<tchar.h>
     #include<stdlib.h>
     #include<conio.h>
     int tmain(int argc,_TCHAR* argv[])
     {
          const int nRow=7;
          for(int I=0;i<nRow;i++)
          {
               if(i<(nRow/2+1))
               {
                    for(int j0;j<nRow/2-I;j++)
                         {
                              printf(“ ”);
                         }
                    for(int k=0;k<=I;k++)
                              printf(“*”);
                }
               else
               {
                    for(int j=0;j<i-nRow/2;j++)
                         {
                              printf(“ ”);
                         }
                    for(int k=0;k<=nRow/2-(i-nRow/2);k++)
                         {
                              printf(“*”);
                         }
               }
               _getch();
     return 0;
}