C++程序员经典笔试题

C++程序员经典笔试题

时间:2017-06-22 编辑:丽霞 手机版

  下面CN人才网小编为大家带来的是C++程序员经典笔试题,希望对大家有所帮助~

  1.请问i的值会输出什么?

  #include"iostream.h"

  int i=1;

  void main()

  {

  int i=i;

  cout<

  }

  答案:

  i是一个没有定义的值。

  由于你在main函数里面你又一次定义了一个局部变量i,并且没有初始化。它的值就是一个随机值。(所分配内存位置转换为int后的值)。

  同一时候,在main函数里面使用i会覆盖之前定义的全局变量i(即int i = 1那句)。

  输出i的值是局部变量i的值。

  2.请问x会输出什么?

  #include

  using namespace std;

  int main()

  {

  int x=2,y,z;

  x*=(y=z=5);cout<

  z=3;

  x==(y=z);cout<

  x=(y==z);cout<

  x=(y&z);cout<

  x=(y&&z);cout<

  y=4;

  x=(y|z);cout<

  x=(y||z);cout<

  return 0;

  }

  答案:

  10。10,1,3,1,7。1

  3.下面代码的结果是多少?

  #include

  using namespace std;

  int func(int x)

  {

  int count=0;

  while(x)

  {

  count++;

  x=x&(x-1);

  }

  return count;

  }

  int main()

  {

  cout<

  return 0;

  }

  答案:

  8

  细致想想应该是9999的二进制表示中1的个数。想不通了纸上画一下。

相关文章
分享到:QQ空间新浪微博腾讯微博人人网微信