欧美在线观看www-欧美在线观看高清一二三区-欧美在线观看网站-欧美在线观看网址-国产高清在线精品免费-国产高清在线精品一区二区

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

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

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

  1、下面的程序運行時哪里會出現錯誤:

  struct S

  {

  int i;

  int p;

  };

  int main()

  {

  S s;

  int p = &s.i;

  p[0] = 4;

  p = 3;

  s.p = p;

  s.p = 1;

  s.p[0] = 2;

  return 0;

  }

  【題目解析】

  這道題考的是對結構體內存使用情況的理解。在32位的操作系統中,int和指針類型的變量占用空間都是4個字節。在本題中 &s.i的值實際就是 &s的值,所以“int p = &s.i”也就相當于把p指向了結構體s的地址的起始位置。如圖1所示。

  圖1

  假設 &s的值為0x12300,則p的值也是0x12300,p[0]指的是從0x12300開始的連續4個字節的空間,p指的是從0x12304(注意!不是0x12301)開始的連續4個字節的空間。這樣,p[0]也就相當于s.i,p也就相當于s.p,分析到這一步,可以確定程序運行到“s.p=p;”這里不會出錯。繼續往下看。

  在進行了“s.p=p;”的賦值之后,s.p指向的是s的首地址,此時s.p[0]相當于s.i,s.p相當于s.p。

  下一句“s.p=1”執行過之后,此時s.p的值為1,也就是指向內存的0x00001處,隱患出現了。在執行“s.p[0]=2”的時候,實際上是向內存0x00001起始的連續四個字節寫入0x00000002,而那塊內存不屬于這個程序,會出現訪問非法內存的錯誤。

  VC解析的匯編代碼如下(部分),有興趣的可以參考一下。

  ; 14: S s;

  ; 15: int p = &s.i;

  00401028 lea eax,[ebp-8]

  0040102B mov dword ptr [ebp-0Ch],eax

  ; 16: p[0] = 4;

  0040102E mov ecx,dword ptr [ebp-0Ch]

  00401031 mov dword ptr [ecx],4

  ; 17: p = 3;

  00401037 mov edx,dword ptr [ebp-0Ch]

  0040103A mov dword ptr [edx+4],3

  ; 18: s.p = p;

  00401041 mov eax,dword ptr [ebp-0Ch]

  00401044 mov dword ptr [ebp-4],eax

  ; 19: s.p = 1;

  00401047 mov ecx,dword ptr [ebp-4]

  0040104A mov dword ptr [ecx+4],1

  ; 20: s.p[0] = 2;

  00401051 mov edx,dword ptr [ebp-4]

  00401054 mov dword ptr [edx],2

  2、ABCDEF各是一個0~9的數字,根據下面的條件確定A~F的值

  ABCDEF2 = CDEFAB

  CDEFAB2 = EFABCD

  【題目解析】

  以下答案由winion提供

  ABCDEF各是一個0~9的數字,根據下面的條件確定A~F的值

  ABCDEF2 = CDEFAB

  CDEFAB2 = EFABCD

  一看到題目,我立即就想到了1/7,它正好滿足這個數字的性質。所以答案是142857.

  ......

  1/7=0.142857

  2/7=0.285714

  3/7=0.428571

  4/7=0.571428

  5/7=0.714285

  6/7=0.857142

  然后是循環,注意到沒有,都是142857這六個數字。

  以下答案由大輝提供

  ABCDEF2 = CDEFAB

  CDEFAB2 = EFABCD

  2AB = CD

  2EF = 1AB

  2CD+1 = EF

  8AB+2 = 100+AB

  AB = 14

  以下答案由dawangzi16 提供

  1. E>2C>4A;==>a=1or2;

  2. 因為EF2=AB ,結合式子1得:(if A=2 then E=8 or 9 此時不成立) 所以 A=1; E=5;

  同時得出F大于5; 此時:1BCD5F2=CD5F1B;CD5F1B2=5F1BCD;

  3。因為1B2=CD 所以推出:c=3或2; 又由CD2=5F; 推出C=2 ; D>5;

  此時:1B2D5F2=2D5F1B;2D5F1B2=5F1B2D;

  4。因為1B2 = 2D 而且D>5,推出B<5 ;當 B=3時 D=6;B=4時D=8;

  又因為5F2=1B 所以 B為偶數。 從而 B=4 ,D=8;

  此時 14285F2=285F14;285F142=5F1428;

  5。不難看出 F=7;

  從而得解

  以下答案由 xiahui 提供

  令AB=x, CDEF=y;

  則(10000x+y)2 = 100y+x;

  19999x = 98y

  28577x = 714y

  故得AB=14,CDEF=2857

最新圖文

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
主站蜘蛛池模板: 最新国产一区二区精品久久 | 欧美一区二区三区不卡免费观看 | 朋友的妻子在线播放 | 免费看动漫网站 | 国内精品久久久久激情影院 | 精品一区 二区三区免费毛片 | 久操青青| 99视频全部免费精品全部四虎 | 亚洲人成在线影院 | 天堂国产在线观看 | 夜夜爽天天狠狠九月婷婷 | 最近韩国高清免费观看 | 国产成人亚洲欧美激情 | 午夜视频在线播放 | 精品国产三级a∨在线 | 偷拍同志老头小便oldman | 午夜黄色在线观看 | 日韩一级二级三级 | 国产一级做a爰片在线 | 成人a视频在线观看 | 国内久久久久高清影视 | www.99精品| 香蕉视频网站免费观视频 | 久久久99精品免费观看精品 | 久久国产精品免费 | h视频在线观看免费观看 | 五月婷婷在线观看 | 寡妇一级a毛片免费播放 | 青青草针对华人 | 色综合综合色综合色综合 | 周末情人全集免费观看 | 国产视频自拍一区 | 国产精品v欧美精品v日韩 | 全色导航 | 99精品免费在线 | 国产一级特黄a大片99 | 91在线免费公开视频 | 九九九九九九精品免费 | 亚洲天堂中文字幕在线观看 | 青青青手机在线视频 | 精品国产三级a∨在线 |