网易C++笔试题
2013-10-09 17:11
134 查看
网易C++笔试题1. #i nclude 和#i nclude “filename.h” 有什么区别?
答:对于#i nclude ,编译器从标准库路径开始搜索filename.h
对于#i nclude “filename.h”,编译器从用户的工作路径开始搜索filename.h
网易C++笔试题2. 在C++ 程序中调用被C 编译器编译后的函数,为什么要加extern “C”?
答:C++语言支持函数重载,C 语言不支持函数重载。函数被C++编译后在库中的名字与C 语言的不同。假设某个函数的原型为: void foo(int x, int y);
该函数被C 编译器编译后在库中的名字为_foo , 而C++ 编译器则会产生像_foo_int_int 之类的名字。
C++提供了C 连接交换指定符号extern“C”来解决名字匹配问题。
网易C++笔试题3. 一个类有基类、内部有一个其他类的成员对象,构造函数的执行顺序是怎样的?
答:先执行基类的(如果基类当中有虚基类,要先执行虚基类的,其他基类则按照声明派生类时的顺序依次执行),再执行成员对象的,最后执行自己的。
网易C++笔试题4. New delete 与malloc free 的区别
答案:用malloc 函数不能初始化对象,new 会调用对象的构造函数。Delete 会调用对象的destructor,而free 不会调用对象的destructor.
网易C++笔试题5. Struct 和class 的区别
答案:struct 中成员变量和成员函数默认访问权限是public,class 是private
网易C++笔试题6.请问下面程序有什么错误?
int a[60][250][1000],i,j,k;
for(k=0;k<=1000;k++)
for(j=0;j<250;j++)
for(i=0;i<60;i++)
a[i][j][k]=0;
答案:把循环语句内外换一下
网易C++笔试题7. 请写出下列代码的输出内容
#include
main()
{
int a,b,c,d;
a=10;
b=a++;
c=++a;
d=10*a++;
printf("b,c,d:%d,%d,%d",b,c,d);
return 0;
}
答:10,12,120
网易C++笔试题8. 写出BOOL,int,float,指针类型的变量a 与零的比较语句。
答案: BOOL : if ( !a )
int : if ( a == 0)
float : const EXPRESSION EXP = 0.000001
if ( a < EXP && a >-EXP)
pointer : if ( a != NULL)
网易C++笔试题9.已知strcpy 函数的原型是:
char *strcpy(char *strDest, const char *strSrc);
其中strDest 是目的字符串,strSrc 是源字符串。不调用C++/C 的字符串库函数,请编写函数 strcpy
答案:
char *strcpy(char *strDest, const char *strSrc)
{
if ( strDest == NULL || strSrc == NULL)
return NULL ;
if ( strDest == strSrc)
return strDest ;
char *tempptr = strDest ;
while( (*strDest++ = *strSrc++) != ‘’)
;
return tempptr ;
}
网易C++笔试题10.写一个函数找出一个整数数组中,第二大的数
答案:
const int MINNUMBER = -32767 ;
int find_sec_max( int data[] , int count) //类似于1 4 4 4这样的序列将认为1是第二大数
{
int maxnumber = data[0] ;
int sec_max = MINNUMBER ;
for ( int i = 1 ; i < count ; i++)
{
if ( data[i] > maxnumber )
{
sec_max = maxnumber ;
maxnumber = data[i] ;
}
else
{
if ( data[i] > sec_max )
sec_max = data[i] ;
}
}
return sec_max ;
}
答:对于#i nclude ,编译器从标准库路径开始搜索filename.h
对于#i nclude “filename.h”,编译器从用户的工作路径开始搜索filename.h
网易C++笔试题2. 在C++ 程序中调用被C 编译器编译后的函数,为什么要加extern “C”?
答:C++语言支持函数重载,C 语言不支持函数重载。函数被C++编译后在库中的名字与C 语言的不同。假设某个函数的原型为: void foo(int x, int y);
该函数被C 编译器编译后在库中的名字为_foo , 而C++ 编译器则会产生像_foo_int_int 之类的名字。
C++提供了C 连接交换指定符号extern“C”来解决名字匹配问题。
网易C++笔试题3. 一个类有基类、内部有一个其他类的成员对象,构造函数的执行顺序是怎样的?
答:先执行基类的(如果基类当中有虚基类,要先执行虚基类的,其他基类则按照声明派生类时的顺序依次执行),再执行成员对象的,最后执行自己的。
网易C++笔试题4. New delete 与malloc free 的区别
答案:用malloc 函数不能初始化对象,new 会调用对象的构造函数。Delete 会调用对象的destructor,而free 不会调用对象的destructor.
网易C++笔试题5. Struct 和class 的区别
答案:struct 中成员变量和成员函数默认访问权限是public,class 是private
网易C++笔试题6.请问下面程序有什么错误?
int a[60][250][1000],i,j,k;
for(k=0;k<=1000;k++)
for(j=0;j<250;j++)
for(i=0;i<60;i++)
a[i][j][k]=0;
答案:把循环语句内外换一下
网易C++笔试题7. 请写出下列代码的输出内容
#include
main()
{
int a,b,c,d;
a=10;
b=a++;
c=++a;
d=10*a++;
printf("b,c,d:%d,%d,%d",b,c,d);
return 0;
}
答:10,12,120
网易C++笔试题8. 写出BOOL,int,float,指针类型的变量a 与零的比较语句。
答案: BOOL : if ( !a )
int : if ( a == 0)
float : const EXPRESSION EXP = 0.000001
if ( a < EXP && a >-EXP)
pointer : if ( a != NULL)
网易C++笔试题9.已知strcpy 函数的原型是:
char *strcpy(char *strDest, const char *strSrc);
其中strDest 是目的字符串,strSrc 是源字符串。不调用C++/C 的字符串库函数,请编写函数 strcpy
答案:
char *strcpy(char *strDest, const char *strSrc)
{
if ( strDest == NULL || strSrc == NULL)
return NULL ;
if ( strDest == strSrc)
return strDest ;
char *tempptr = strDest ;
while( (*strDest++ = *strSrc++) != ‘’)
;
return tempptr ;
}
网易C++笔试题10.写一个函数找出一个整数数组中,第二大的数
答案:
const int MINNUMBER = -32767 ;
int find_sec_max( int data[] , int count) //类似于1 4 4 4这样的序列将认为1是第二大数
{
int maxnumber = data[0] ;
int sec_max = MINNUMBER ;
for ( int i = 1 ; i < count ; i++)
{
if ( data[i] > maxnumber )
{
sec_max = maxnumber ;
maxnumber = data[i] ;
}
else
{
if ( data[i] > sec_max )
sec_max = data[i] ;
}
}
return sec_max ;
}
相关文章推荐
- 网易笔试题(java 、 c++ 、软件测试等)
- 网易笔试编程题:到Fibonacci数最小步数(C++)
- 网易2018校招内推笔试-彩色砖块-python2,python3,C++解法
- 网易笔试编程题:统计回文(C++)
- 网易笔试编程题:有限次数下位置查找(C++)
- 网易2018内推_算法工程师_笔试题_交错01串_C/C++
- 网易2016软件工程师笔试题-----[编程题] 奖学金(C++实现)
- 网易实习笔试真题C/C++
- 网易2018内推笔试题_操作序列_C++
- 网易实习笔试真题C/C++
- 2017网易内推c++工程师笔试——编程题
- 网易笔试编程题:最多可放蛋糕数(C++)
- [互联网面试笔试汇总C/C++-5] 网易有道-3
- 网易笔试编程题:最少时间落入陷阱(C++)
- 网易C++笔试(含编程第二题解答)
- 网易2017内推C++笔试题目
- [互联网面试笔试汇总C/C++-12] 哈希表冲突解决办法-网易游戏
- 2017网易秋招笔试题 跳石板 C/C++
- 2017网易C++笔试:将构造函数补充完整
- 网易笔试编程题:两种排序方法(C++)