當前位置:高考升學網 > 招聘筆試題 > 正文

微軟筆試題和面試題答案解析與答案

更新:2023-09-15 23:38:50 高考升學網

  微軟部分筆試題解析與答案,也許對你會有所啟發

  1、求函數返回值,輸入x=9999;

  int func(x)

  {

  int countx = 0;

  while(x)

  {

  countx ++;

  x = x&(x-1);

  }

  return countx;

  }

  【試題解析】

  解這道題的時候,如果拿出一個二進制數來分析就會容易的多了,x=x&(x-1)實際上就是把x的二進制形式的最后一個“1”變成“0”,x的二進制形式有多少個“1”循環就執行多少次。

  9999/256 = 39 余 15,把這兩個數分別轉化一下就很快了

  39 = 32 + 4 + 2 +1 = 00100111

  15 = 0F = 00001111

  所以 9999=0010011100001111,共有8個1,答案就是 8 了

  2、實現以下程序,以方便binary search.

  .要有處理錯誤語句

  .隊列的分配的大小是固定的MAX_LEN,由第二個參數輸入

  .不能復制隊列

  insert (int arr, //隊列

  size_l len, // 隊列大小

  size_l count, //隊列元素的數目

  int varl //要處理的數據

  )返回插入數據的索引

  remove(int arr,size_l len,size_l count,int varl)返回刪除元素的索引

  search(int arr,size_l len,size_l count,int varl)返回搜索道元素的索引

  【試題解析】

  略。數據結構書上都有的。

  3、堆棧R,從頂到底:{2,4,6,8,10},逐個取出放入隊列Q中 ,再從Q中逐個取出放入R中,問現在堆棧R中從頂到底的順序。

  【試題解析】

  這個也不用了吧,{10,8,6,4,2}

  4、寫出程序的結果:___________

  int funa(int a)

  {

  a[0] ++;

  }

  int funb(int b[])

  {

  b += 5;

  }

  main()

  {

  int a[5] = {2,3,4,5,6};

  int b[5] = {2,3,4,5,6};

  int p;

  p = &a[0];

  (p)++;

  funa(p);

  for(int i = 0; i<3; i++)

  printf("%d,",a);

  p = &b;

  funb(p);

  for(i = 0; i<3; i++)

  printf("%d,",b);

  }

  【題目解析】

  結果是:

  4,3,4,2,3,9

  (p)++; 也就是a[0]++;

  funa(p);中的 a[0]++ 是將 main 中的數組 a[0]++,

  數組 a 中只有第一個元素加了兩次 1 ,

  p = &b;把p指向了數組 b 的第二個元素

  funb(p);中的 b+=5 是將 main 中的數組 b+=5

  數組 b 中的第三個元素加了 5

  5、找出下面程序的 BUG

  int CopyStringAndCount(char Str) ①

  {

  int nCount = 0;

  char pBuffer; ②

  pBuffer = new char[MAX_PATH_LENGTH];

  ③

  ④

  strcpy(pBuffer, Str);

  for ( ; pBuffer⑤; pBuffer++ )

  if ( pBuffer⑥=='\\' ) nCount ++;

  ⑦

  return nCount;

  }

  【題目解析】

  ① (const char Str)

  如果在函數體內不需要改變字符串的內容,最好加上 const 以免誤修改字符串內容

  ② char pBuffer = NULL;

  指針聲明的時候最好賦初值 NULL

  ③ if ( !pBuffer ) return -1;

  開辟空間之后沒有檢查是否成功,沒有錯誤檢查

  ④ if ( strlen(Str)>(MAX_PATH_LENGTH-1) ) return -2;

  沒有檢查新開辟的空間能否容納傳進來的字符串,否則有可能越界

  ⑤ pBuffer

  題中的原意是當到字符串末尾的時候跳出循環,所以應該是取字符串的內容

  ⑥ 同⑤

  ⑦ delete pBuffer; pBuffer=NULL;

  沒有釋放新開辟的空間,會造成內存泄漏

  6、你覺得下一代瀏覽器應該添加什么功能?

  【題目解析】

  當時隨便寫的,比如安全性,搜索功能等。

最新圖文

2020年河北新聞網兩學一做

時間:2023-09-18 07:0:24

2020年河北新聞網兩學一做

時間:2023-09-15 11:0:59

兩學一做學習教育知

時間:2023-09-21 06:0:30

2020年開展兩學一做學習教

時間:2023-09-19 21:0:30
9999久久久国产精品,日韩在线一区二区三区欧美,日韩精品综合在线人妻,免费AAAAAA毛片看
伊大人香蕉久久网欧美 | 一级国产精品免费观看 | 伊人大杳蕉久久综合 | 在线播放免费人成视频观看 | 亚洲va在线天堂va欧美va | 亚洲欧美V国产一区 |