聯想筆試題及解答

時間:2024-07-06 23:18:32 綜合指導 我要投稿
  • 相關推薦

聯想筆試題及解答

聯想筆試題
1.設計函數

int atoi(char *s)。int atoi(char *s)
{
  char sign; 
  char sign_val = 1;
  int val = 0;
  int n = 0;


  /* skip spaces */
  while (isspace(*s))
    ++s;
  if (*s == '-' || *s == '+')
    /* skip '-' and '+' sign */
  {
    sign = *s;
    if (sign == '-')
      sign_val = -1;
    ++s;
  }


  /* when goes here, it is not space or sign */
  while ((*s != '\0') && isdigit(*s))
  {
    val = 10 * n + (*s - '0'); 
    n = val;
    s++;
  }
  if (*s != '\0')
  {
    printf("non digit in your input!!\n"); 
    exit(-1); 
  } 
  /* non error occured */ 
  return (sign_val * val); 
} 


2.int i=(j=4,k=8,l=16,m=32); printf("%d", i); 輸出是多少?

結果為: 32.

3.解釋局部變量、全局變量和靜態變量的含義。

  局部變量包括函數的形參,包含在函數體或者語句塊內的變量,局部變量的生存期在退出函數或語句塊后結束。

  全局變量是指在所有函數和語句塊之外的變量,它對于整個程序均可見,全局變量的生存期與程序的生存期相同.

  靜態變量指由關鍵字static聲明的變量,它的作用域和其他變量一樣,由它所在的位置決定,如在函數體或語句塊中聲明,則只在函數體或語句塊可見,其他地方均不可見.它的生存期與程序相同.

4.解釋堆和棧的區別。簡述如下:

  棧上分配的內存,由系統自動分配,系統會自動收回.如果需要動態分配內存,則只能通過malloc/new在堆上分配的內存,使用完畢后,通過free/delete來釋放內存。

5.論述含參數的宏與函數的優缺點。

含參數的宏優點:省去了函數調用的開銷,運行效率高.
含參數的缺點:

由于宏本質上是字符串的替換,所有可能會由于一些參數的副作用導致得出錯誤的結果.

如:

  #define max(a, b) ( ((a) > (b)) ? (a) : (b) )
如果程序中出現這樣的調用: max(a++, b);
將導致a被計算2次,從而可能得到錯誤的結果,而函數調用不會出現這種問題.另外,如果程序中有多次宏替換的話,可能導致代碼體積變大.函數的優點是:
沒有帶參數宏可能導致的副作用,計算的正確性較宏更有保證.
函數調用的缺點:
函數調用需要一些參數,返回地址等入棧,出棧的開銷,效率沒有宏函數高

【聯想筆試題及解答】相關文章:

攢RP,聯想2014校園招聘筆試題分享11-21

中國銀行筆試題回顧,新鮮筆經!11-21

清華同方軟件測試工程師筆試題解答分享11-21

迅雷JAVA廣州站二筆筆試題目分享11-21

李祖華談管理應用類面試題解答--“木桶”法則02-18

李祖華談管理應用類面試題解答--“刺猬”法則02-18

李祖華談管理應用類面試題解答--“南風”法則02-18

大唐移動測試工程師筆經,筆試題目分享11-21

聯想筆試真題09-26

聯想(lenovo)筆試記02-18

亚洲制服丝袜二区欧美精品,亚洲精品无码视频乱码,日韩av无码一区二区,国产人妖视频一区二区
正在播放酒店约少妇 | 午夜一区二区免费福利麻豆 | 亚洲第一视频在线观看播放 | 亚洲综合色婷婷在线观看 | 偷自拍亚洲综合在线观看 | 日本中文字幕有码在线视频三级 |