??xml version="1.0" encoding="utf-8" standalone="yes"?>
]]>
回答提示Q一般h回答q个问题q于q_Q只说姓名、年龄、爱好?a target="_blank">工作l?
验,q些在简历上都有Q其实,企业最希望知道的是求职者能否胜d作,包括Q最强的技能、最深入研究的知识领域、个性中最U极的部分、做q的最成功的事Q?
主要的成qQ这些都可以和学习无养I也可以和学习有关Q但要突出积极的个性和做事的能力,说得合情合理企业才会怿。企业很重视一个h的礼貌,求职者要
重考官Q在回答每个问题之后都说一?#8220;谢谢”。企业喜Ƣ有CD的求职者?br>2、你觉得你个性上最大的优点是什么?
回答提示Q沉着冷静、条理清楚、立场坚定、顽强向上?br>乐于助h和关心他人、适应能力和幽默感、乐观和友爱。我在北大青鸟经q一Cq的培训及项目实战,加上实习工作Q我适合q䆾工作。我怿我能成功?br>3、说说你最大的~点Q?br>
?
{提C:q个问题企业问的概率很大Q通常不希望听到直接回{的~点是什么等Q如果求职者说自己心眹{爱忌妒人、非常懒、脾气大、工作效率低Q企业肯定不
会录用你。绝对不要自作聪明地回答“我最大的~点是过于追求完?#8221;Q有的h以ؓq样回答会显得自己比较出Ԍ但事实上Q他已经岌芨可危了。企业喜Ƣ求职?
从自q优点说vQ中间加一些小~点Q最后再把问题{回到优点上,H出优点的部分。企业喜Ƣ聪明的求职者?br>4、你对加班的看法Q?br>
回答提示Q实际上好多公司问这个问题,q不证明一定要加班?只是x试你是否愿意为公司奉献?br>回答hQ如果是工作需要我会义不容辞加班。我现在单nQ没有Q何家庭负担,可以全n心的投入工作。但同时Q我也会提高工作效率Q减不必要的加?br>5、你对薪资的要求Q?br>
?
{提C:如果你对薪酬的要求太低,那显然贬低自q能力Q如果你对薪酬的要求太高Q那又会昑־你分量过重,公司受用不v。一些雇主通常都事先对求聘的职?
定下开支预,因而他们第一ơ提出的价钱往往是他们所能给予的最高h钱。他们问你只不过惌实一下这W钱是否以引v你对该工作的兴趣?br>回答h一Q?#8220;我对工资没有性要求。我怿贵公司在处理我的问题上会友善合理。我注重的是扑֯工作ZQ所以只要条件公qI我则不会计较太多
回答h二:我受q系l的软g~程的训l,不需要进行大量的培训。而且我本Z对编E特别感兴趣。因此,我希望公司能Ҏ我的情况和市场标准的水^Q给我合理的薪水?br>回答h三:如果你必自p出具体数目,请不要说一个宽泛的范围Q那样你只能得到最低限度的数字。最好给Z个具体的数字Q这栯明你已经对当今的人才市场作了调查Q知道像自己q样学历的雇员有什么样的h倹{?br>6、在五年的时间内Q你的职业规划?
?
{提C:q是每一个应聘者都不希望被问到的问题,但是几乎每个人都会被问到。比较多的答案是“理?#8221;。但是近几年来,许多公司都已l徏立了专门的技术?
径。这些工作地位往往被称?#8220;N”?#8220;参议技?#8221;?#8220;高软g工程?#8221;{等。当Ӟ说出其他一些你感兴的职位也是可以的,比如产品销售部l理Q生产部
l理{一些与你的专业有相兌景的工作。要知道Q考官L喜欢有进取心的应聘者,此时如果?#8220;不知?#8221;Q或许就会你׃个好Z。最普通的回答应该?
“我准备在技术领域有所作ؓ”?#8220;我希望能按照公司的管理思\发展”?br>7、你朋友对你的评P
回答提示Q?想从侧面了解一下你的性格及与人相处的问题?br>回答hQ?#8220;我的朋友都说我是一个可以信赖的人。因为,我一旦答应别人的事情Q就一定会做到。如果我做不刎ͼ我就不会L许诺?br>回答hQ?#8221;我觉的我是一个比较随和的人,与不同的人都可以友好相处。在我与人相处时Q我L能站在别人的角度考虑问题“
8、你q有什么问题要问吗Q?br>
?
{提C:企业的这个问题看上去可有可无Q其实很关键Q企业不喜欢?#8220;没有问题”的hQ因为其很注重员工的个性和创新能力。企业不喜欢求职者问个h利之类
的问题,如果有hq样问:贵公司对新入公司的员工有没有什么培训项目,我可以参加吗Q或者说贵公司的晋升机制是什么样的?企业很Ƣ迎Q因Z现出你对?
习的热情和对公司的忠诚度以及你的上进心?br>9、如果通过q次面试我们单位录用了你Q但工作一D|间却发现你根本不适合q个职位Q你怎么办?
回答提示Q一D|间发现工作不适合我,有两U情况:
1、如果你实热爱q个职业Q那你就要不断学习,虚心向领导和同事学习业务知识和处事经验,了解q个职业的精内涵和职业要求Q力争减差距;
2、你觉得q个职业可有可无Q那q是早换个职业Q去发现适合你的Q你热爱的职业,那样你的发展前途也会大点,对单位和个h都有好处?br>10、在完成某项工作Ӟ你认为领D求的方式不是最好的Q自p有更好的ҎQ你应该怎么做?
回答提示Q①.原则上我会尊重和服从领导的工作安排;同时U底下找Z以请教的口吻Q婉转地表达自己的想法,看看领导是否能改变想法;
②如果领导没有采Ux的徏议,我也同样会按领导的要求认真地d成这工作;
?q有一U情况,假如领导要求的方式违背原则,我会坚决提出反对意见Q如领导仍固执己见,我会毫不犹U地再向上U领导反映?br>11、如果你的工作出现失误,l本公司造成l济损失Q你认ؓ该怎么办?
回答提示Q?br>①我本意是ؓ公司努力工作Q如果造成l济损失Q我认ؓ首要的问题是x设法dI补或挽回l济损失。如果我无能力负责,希望单位帮助解决Q?br>②是责Q问题。分清责任,各负其责Q如果是我的责QQ我甘愿受罚Q如果是一个我负责的团队中别h的失误,也不能幸灾乐,作ؓ一个团队,需要互相提携共同完成工作,安慰同事q且帮助同事查找原因ȝl验?br>③ȝl验教训Q一个h的一生不可能不犯错误Q重要的是能从自q或者是别h的错误中吸取l验教训Qƈ在今后的工作中避免发生同cȝ错误。检讨自q工作Ҏ、分析问题的深度和力度是否不够,以致出现了本可以避免的错误?br>12、如果你在这ơ考试中没有被录用Q你怎么打算Q?br>
?
{提C:现在的社会是一个竞争的C会,从这ơ面试中也可看出q一?有竞争就必然有优?有成功必定就会有p|.往往成功的背后有许多的困隑֒挫折,如果
q次p|了也仅仅是一ơ而已,只有l过l验l历的积累才能塑造出一个完全的成功者。我会从以下几个斚w来正看待这ơ失?
W一、要敢于面对,面对q次p|不气?接受已经失去了这ơ机会就不会回头q个现实,从心理意志和_上体现出对这ơ失败的抉|力。要有自?怿自己l历了这ơ之后经q努力一定能?能够越自我.
W二、善于反?对于q次面试l验要认真ȝ,思考剖?能够从自w的角度扑ַ距。正对待自?实事求是地评仯?辩证的看待自q长短得失,做一个明白h.
W三、走出阴?要克服这一ơ失败带l自q心理压力,时刻牢记自己q,防患于未?加强学习,提高自n素质.
W四、认真工?回到原单位岗位上?要实实在在、踏t实实地工作,三十六行,行行出状?争取在本岗位上做Z定的成W.
W五、再接再?成ؓ软g工程师或|络工程师一直是我的梦想,以后如果有机会我仍然后再ơ参加竞?
13、如果你做的一工作受CU领导的表扬Q但你主领导却说是他做的,你该怎样Q?br>
?
{提C:我首先不会找那位上领导说明qg事,我会d找我的主领导来沟通,因ؓ沟通是解决人际关系的最好办法,但结果会有两U:1.我的ȝ领导认识
到自q错误Q我x会视具体情况军_是否原谅他;2.他更加变本加厉的来威胁我Q那我会毫不犹U地找我的上领导反映此事Q因Zq样做会造成负面?
响,对今后的工作不利?br>14、谈谈你对蟩槽的看法Q?br>
回答提示Q(1Q正常的"x"能促qh才合理流动,应该支持Q?br>Q?Q频J的x对单位和个h双方都不利,应该反对?br>15、工作中你难以和同事、上司相处,你该怎么办?
回答提示Q?br>①我会服从领导的指挥Q配合同事的工作?br>②我会从自n扑֎因,仔细分析是不是自己工作做得不好让领导不满意,同事看不惯。还要看看是不是Zh处世斚w做得不好。如果是q样的话 我会努力Ҏ?br>③如果我找不到原因,我会找机会跟他们沟通,请他们指出我的不뀂有问题及时改正?br>④作ZU的员工,应该时刻以大局为重Q即使在一D|间内Q领导和同事Ҏ不理解,我也会做好本职工作,虚心向他们学习,我相信,他们会看见我在努力,L一天会Ҏ微笑的!
16、假设你在某单位工作Q成l比较突出,得到领导的肯定。但同时你发现同事们来孤立你Q你怎么看这个问题?你准备怎么办?
回答提示Q?br>①成l比较突出,得到领导的肯定是件好事情Q以后更加努?br>②检讨一下自己是不是对工作的热心度超q同事间交往的热心了Q加强同事间的交往及共同的兴趣爱好?br>③工作中Q切勿伤宛_人的自尊?br>④不再领导前拨弄是非
⑤乐于助人对?br>17、你最q是否参加了培训评Q谈谈培训课E的内容。是公司资助q是自费参加Q?br>
回答提示Q是自费参加Q就是北大青鸟的培训评Q可以多谈谈自己学的技术)?br>18、你对于我们公司了解多少Q?br>
回答提示Q在d叔R试前上网查一下该公司主营业务。如回答Q贵公司有意改变{略Q加Z国外大厂的OEM合作Q自有品牌的部分则透过外l销商?br>19、请说出你选择q䆾工作的动机?
回答提示Q这是想知道面试者对q䆾工作的热忱及理解度,q筛选因一时兴赯来应试的hQ如果是无经验者,可以“q职种不同Q也希望有机会发挥之前的l验”?br>20、你最擅长的技术方向是什么?
回答提示Q说和你要应聘的职位相关的课E,表现一下自q热诚没有什么坏处?br>21、你能ؓ我们公司带来什么呢Q?br>
回答提示Q?br>①假如你可以的话Q试着告诉他们你可以减低他们的费用—?#8220;我已l接受过北大青鸟q两q专业的培训Q立d可以上岗工作”?br>?
企业很想知道未来的员工能Z业做什么,求职者应再次重复自己的优势,然后_“我的能力,我可以做一个优U的员工在l织中发挥能力,l组l带来高效率
和更多的收益”。企业喜Ƣ求职者就甌的职位表明自q能力Q比如申误销之类的职位,可以_“我可以开发大量的新客P同时Q对老客户做更全面周到的
服务Q开发老客L新需求和消费?#8221;{等?br>22、最能概括你自己的三个词是什么?
回答提示Q?br>我经常用的三个词是:适应能力强,有责d和做事有始终Q结合具体例子向主考官解释Q?br>23、你的业余爱好是什么?
回答提示Q找一些富于团体合作精的Q这里有一个真实的故事Q有否决掉,因ؓ他的爱好是深h水。主考官_因ؓq是一单人活动,我不敢肯定他能否适应团体工作?br>24、作面试者给我打一下分
回答提示Q试着列出四个优点和一个非帔R帔R常小的缺点,Q可以抱怨一下设施,没有明确责Q人的~点是不会有Z意的Q?br>25、你怎么理解你应聘的职位Q?br>
回答提示Q把岗位职责和Q务及工作态度阐述一?br>26、喜Ƣ这份工作的哪一点?
?
{提C:怿其实大家心中一定都有答案了吧!每个人的价D不同Q自然评断的标准也会不同Q但是,在回{面试官q个问题时可不能太直接就把自己心理的话说
出来Q尤其是薪资斚w的问题,不过一些无伤大雅的回答是不错的考虑Q如交通方便,工作性质及内定w能符合自q兴趣{等都是不错的答案,不过如果q时自己
能仔l思考出q䆾工作的与众不同之处,怿在面试上会大大加分?br>27、ؓ什么要职?
回答提示Q?br>①回{这个问题时一定要
心Q就在前一个工作受到再大的委屈Q对公司有多的怨言Q都千万不要表现出来Q尤其要避免对公司本w主的批评Q避免面试官的负面情l及印象Q徏议此
时最好的回答方式是将问题归咎在自pn上,例如觉得工作没有学习发展的空_自己惛_面试工作的相关业中多加学习Q或是前一份工作与自己的生涯规划不?
{等Q回{的{案最好是U极正面的?br>②我希望能获得一份更好的工作Q如果机会来_我会抓住Q我觉得目前的工作,已经辑ֈ峰Q即沒有升迁Z?br>28、说说你对行业、技术发展趋势的看法Q?br>
?
{提C:企业对这个问题很感兴,只有有备而来的求职者能够过兟뀂求职者可以直接在|上查找对你所甌的行业部门的信息Q只有深入了解才能生独特的?
解。企业认为最聪明的求职者是Ҏ面试的公叔R先了解很多,包括公司各个部门Q发展情况,在面试回{问题的时候可以提到所了解的情况,企业Ƣ迎q入企业?
人是“知己”Q而不?#8220;盲h”?br>29、对工作的期望与目标何在Q?br>
回答提示Q这是面试者用来评断求职者是否对自己有一定程度的?
望、对q䆾工作是否了解的问题。对于工作有实学习目标的h通常学习较快Q对于新工作自然较容易进入状况,q时你,最好针对工作的性质扑և一个确实的
{案Q如业务员的工作可以q样回答Q?#8220;我的目标是能成ؓ一个超U业务员Q将公司的品广泛的推销出去Q达到最好的业W成效Qؓ了达到这个目标,我一定会?
力学习,而我怿以我认真负责的态度Q一定可以达到这个目标?#8221;其他cȝ工作也可以比照这个方式来回答Q只要在目标斚wE微修改一下就可以了?br>30、说说你的家庭?br>
?
{提C:企业面试时询问家庭问题不是非要知道求职者家庭的情况Q探IU,企业不喜Ƣ探I个人隐U,而是要了解家庭背景对求职者的塑造和影响。企业希望听
到的重点也在于家庭对求职者的U极影响。企业最喜欢听到的是Q我很爱我的家庭Q我的家庭一向很和睦Q虽然我的父亲和母亲都是普通hQ但是从,我就看到?
父亲h贪黑Q每天工作特别勤劻I他的行动无Ş中培M我认真负责的态度和勤劳的_。我母亲Zh善良Q对人热情,特别乐于助hQ所以在单位人缘很好Q她
的一a一行也一直在教导我做人的道理。企业相信,和睦的家庭关pd一个h的成长有潜移默化的媄响?br>31、就你申Lq个职位Q你认ؓ你还Ơ缺什么?
?
{提C:企业喜欢问求职者弱点,但精明的求职者一般不直接回答。他们希望看到这L求职者:l箋重复自己的优势,然后_“对于q个职位和我的能力来_
我相信自己是可以胜Q的,只是~Zl验Q这个问题我x可以q入公司以后以最短的旉来解冻I我的学习能力很强Q我怿可以很快融入公司的企业文化,q入
工作状态?#8221;企业喜欢能够巧妙地躲q难题的求职者?br>32、你ƣ赏哪种性格的hQ?br>
回答提示Q诚实、不L而且Ҏ相处的h、有"实际行动"的h?br>33、你通常如何处理別h的批评?
回答提示Q①沈默是金。不必说什么,否则情况更糟Q不q我会接受徏设性的批评Q②我会{大家冷靜下来再讨论?br>34、你怎样对待自己的失敗?
回答提示Q我们大家生来都不是十全十美的,我相信我有第二个ZҎ我的错误?br>35、什么会让你有成感Q?br>
回答提示Qؓ贵公司竭力效劻I我所能,完成一个项?br>36、眼下你生活中最重要的是什么?
回答提示Q对我来_能在q个领域扑ֈ工作是最重要的;望能在贵公司任职Ҏ说最重要?br>37、你Z么愿意到我们公司来工作?
?
{提C:对于q个问题Q你要格外小心,如果你已l对该单位作了研IӞ你可以回{一些详l的原因Q像“公司本n的高技术开发环境很吸引我?#8221;Q?#8220;我同公司?
生在同样的时代,我希望能够进入一家与我共同成长的公司?#8221;“你们公司一直都E_发展Q在q几q来在市Z很有竞争力?#8221;或?#8220;我认公司能够l我提供
一个与众不同的发展道\?#8221;q都昄Z已经做了一些调查,也说明你对自q未来有了较ؓ具体的远景规划?br>38、你和别人发生过争执吗?你是怎样解决的?
?
{提C:q是面试中最险恶的问题。其实是考官布下的一个陷阱。千万不要说M人的q错。应知成功解决矛盾是一个协作团体中成员所必备的能力。假如你工作?
一个服务行业,q个问题直成了最重要的一个环节。你是否能获得这份工作,取决于q个问题的回{。考官希望看到你是成熟且乐于奉献的。他们通过q个问题
了解你的成熟度和处世能力。在没有外界q涉的情况下Q通过妥协的方式来解决才是正确{案?br>39、问题:你做q的哪g事最令自己感到骄?
回答提示Q这是考官l你的一个机会,让你展示自己把握命运的能力。这会体C潜在的领D力以及你被提升的可能性。假如你应聘于一个服务性质的单位,你很可能会被邀请去午餐。记住:你的前途取决于你的知识、你的社交能力和l合表现?br>40、你新到一个部?一天一个客h找你解决问题,你努力想让他满意Q可是始l达不到众得满?他投诉你们部门工作效率低,你这个时候怎么?
?
{提C:(1)首先Q我会保持冷静。作Z名工作h员,在工作中遇到各种各样的问题是正常的,关键是如何认识它Q积极应对,妥善处理?
(2)其次Q我会反思一下客户不满意的原因。一是看是否是自己在解决问题上的有考虑的不周到的地方,二是看是否是客户不太了解相关的服务规定而提?
规定的要求,三是看是否是客户了解相关的规定,但是提出的要求不合理?
(3)再次Q根据原因采取相对的对策。如果是自己有不周到的地方Q按照服务规定作出合理的安排Qƈ向客户作释;如果是客户不太了解政{规定而造成?
误解Q我会向他作一步的解释Q消除他的误会;如果是客h出的要求不符合政{规定,我会明确地向他指出?
(4)再次Q我会把整个事情的处理情况向领导作出说明Q希望得C的理解和支持?5)我不会因为客h诉了我而失工作的热情和积极性,而会一如既往?
牢记为客h务的宗旨Q争取早日做一名领g仅R公司放心、客h意的职员?br>41、对q项工作Q你有哪些可预见的困难?”
回答提示Q:①不宜直接说出具体的困难Q否则可能oҎ怀疑应聘者不行;②可以尝试迂回战术,说出应聘者对困难所持有的态度—?#8220;工作中出C些困难是正常的,也是隑օ的,但是只要有坚忍不拔的毅力、良好的合作_以及事前周密而充分的准备QQ何困N是可以克服?#8221;
?
析:一般问q个问题Q面试者的希望比较大了,因ؓ已经在谈工作l节。但常规思\中的回答Q又被面试官“?#8221;了。当面试官询问这个问题的时候,有两个目
的。第一Q看看应聘者是不是在行Q说出的困难是不是在q个职位中一般都不可避免的问题。第二,是想看一下应聘者解军_隄手法对不对,及公司能否提供这?
的资源。而不是想了解应聘者对困难的态度?br>42、如果我录用你,你将怎样开展工作?”
回答提示Q?①如果应聘者对于应聘的职位~Z_的了解,最好不要直接说己开展工作的具体办法Q②可以试采用q回战术来回{,?#8220;首先听取领导的指C和要求Q然后就有关情况q行了解和熟悉,接下来制定一份近期的工作计划q报领导批准Q最后根据计划开展工作?#8221;
分析Q这个问题的主要目的也是了解应聘者的工作能力和计划性、条理性,而且重点惌知道l节。如果向思\中所讲的q回战术Q面试官会认为回遉K题,如果引导了几ơ仍然是回避的话。此人绝对不会录用了?br>43?#8220;你希望与什么样的上U共事?”
?
{提C:①通过应聘者对上?#8220;希望”可以判断出应聘者对自我要求的意识,q既上一个陷阱,又是一ơ机会;②最好回避对上具体的希望,多谈对自q?
求;③如“做ؓ刚步入社会的ChQ我应该多要求自己尽快熟悉环境、适应环境Q而不应该对环境提Z么要求,只要能发挥我的专长就可以?br>分析Q这个问题比较好的回{是Q希望我的上U能够在工作中对我多指导Q对我工作中的错误能够立x出。MQ从上指导q个斚w谈,不会有大的纰漏?br>44、在完成某项工作Ӟ你认为领D求的方式不是最好的Q自p有更好的ҎQ你应该怎么做?
回答提示Q?br>?原则上我会尊重和服从领导的工作安排;同时U底下找Z以请教的口吻Q婉转地表达自己的想法,看看领导是否能改变想法;
②如果领导没有采Ux的徏议,我也同样会按领导的要求认真地d成这工作;
?q有一U情况,假如领导要求的方式违背原则,我会坚决提出反对意见Q如领导仍固执己见,我会毫不犹U地再向上U领导反映?br>45、与上意见不一是,你将怎么办?”
?
{提C:①一般可以这样回{?#8220;我会l上U以必要的解释和提醒Q在q种情况下,我会服从上的意见?#8221;②如果面试你的是ȝ理,而你所应聘的职位另有一位经
理,且这位经理当时不在场Q可以这样回{:“对于非原则性问题,我会服从上的意见,对于涉及公司利益的重大问题,我希望能向更高层领导反映?#8221;
分析Q这个问题的标准{案是思\1Q如果用2的回{,必死无疑。你没有摸清楚改公司的内部情况,先想打小报告Q这L人没有h敢要?br>46?#8220;你工作经验欠~,如何能胜任这工作?”
?
规思\Q①如果招聘单位对应届毕业生的应聘者提个问题,说明招聘公司q不真正在乎“l验”Q关键看应聘者怎样回答Q②对这个问题的回答最好要体现出应
聘者的诚恳、机智、果敢及敬业Q③?#8220;作ؓ应届毕业生,在工作经验方面的会有所Ơ缺Q因此在M期间我一直利用各U机会在q个行业里做D。我也发玎ͼ
实际工作q比书本知识丰富、复杂。但我有较强的责d、适应能力和学习能力,而且比较勤奋Q所以在D中均能圆满完成各工作,从中获取的经验也令我受益
非浅。请贵公司放心,学校所学及D的工作经验我一定能胜Qq个职位?#8221;
点评Q这个问题思\中的{案可。突q吃苦能力和适应性以及学习能力(不是学习成WQؓ好?br>47、您在前一家公司的职原因是什么?”
?
{提C:①最重要的是Q应聘者要使找招聘单位怿Q应聘者在q往的单位的“职原因”在此家招聘单位里不存在;②避免把“职原因”说得太详l、太?
体;③不能掺杂主观的负面感受Q如“太辛?#8221;?#8220;人际关系复杂”?#8220;理太?#8221;?#8220;公司不重视h?#8221;?#8220;公司排斥我们某某的员?#8221;{;④但也不能躲闪?
回避Q如“x换环?#8221;?#8220;个h原因”{;⑤不能涉及自p面的人格特征Q如不诚实、懒惰、缺乏责L、不随和{;⑥尽量解释的理׃ؓ应聘者个人Ş象添
彩;⑦相关例子:?#8220;我离职是因ؓq家公司倒闭Q我在公司工作了三年多,有较q感情Q从d始,׃市场形势H变Q公司的局面急{直下Q到gq一步我
觉得很遗憾,但还要面ҎC,重新L能发挥我能力的舞台?#8221;同一个面试问题ƈ非只有一个答案,而同一个答案ƈ不是在Q何面试场合都有效Q关键在应聘者掌
握了规律后,寚w试的具体情况q行把握Q有意识地揣摩面试官提出问题的心理背景,然后投其所好?br>分析Q除非是薪资太低Q或者是最初的工作Q否则不
要用薪资作ؓ理由?#8220;求发?#8221;也被考官听得太多Q离职理pҎ每个人的真实职理由来设计,但是在回{时一定要表现得真诚。实在想不出来的时候,家在?
地可以说是因为家中有事,请假几个月Q公司又不可能准假,所以辞职。这个答案一般面试官q能接受?br>48?#8220;你工作经验欠~,如何能胜任这工作?”
?
{提C:①如果招聘单位对应届毕业生的应聘者提个问题,说明招聘公司q不真正在乎“l验”Q关键看应聘者怎样回答Q②对这个问题的回答最好要体现出应
聘者的诚恳、机智、果敢及敬业Q③?#8220;作ؓ应届毕业生,在工作经验方面的会有所Ơ缺Q因此在M期间我一直利用各U机会在q个行业里做D。我也发玎ͼ
实际工作q比书本知识丰富、复杂。但我有较强的责d、适应能力和学习能力,而且比较勤奋Q所以在D中均能圆满完成各工作,从中获取的经验也令我受益
非浅。请贵公司放心,学校所学及D的工作经验我一定能胜Qq个职位?#8221;
分析Q这个问题思\中的{案可。突q吃苦能力和适应性以及学习能力(不是学习成WQؓ好?br>49、ؓ了做好你工作份外之事Q你该怎样获得他h的支持和帮助Q?br>
?
{提C:每个公司都在不断变化发展的过E中Q你当然希望你的员工也是q样。你希望得到那些希望q欢q变化的人,因ؓq些人明白,Z公司的发展,变化是公
司日常生zM重要l成部分。这L员工往往很容易适应公司的变化,q会对变化做出积极的响应。此外,他们遇到矛盾和问题时Q也能泰然处之。下面的问题能够
考核应聘者这斚w的能力?br>据说有h能从定w免正面冲H。请讲一下你在这斚w的经验和技巧?br>有些时候,我们得和我们不喜Ƣ的人在一起共事。说说你曄克服了性格斚w的冲H而取得预期工作效果的l历?br>50、如果你在这ơ面试中没有被录用,你怎么打算Q?br>
?
{提C:现在的社会是一个竞争的C会,从这ơ面试中也可看出q一?有竞争就必然有优?有成功必定就会有p|.往往成功的背后有许多的困隑֒挫折,如果
q次p|了也仅仅是一ơ而已,只有l过l验l历的积累才能塑造出一个完全的成功者。我会从以下几个斚w来正看待这ơ失?
W一、要敢于面对,面对q次p|不气?接受已经失去了这ơ机会就不会回头q个现实,从心理意志和_上体现出对这ơ失败的抉|力。要有自?怿自己l历了这ơ之后经q努力一定能?能够越自我.
W二、善于反?对于q次面试l验要认真ȝ,思考剖?能够从自w的角度扑ַ距。正对待自?实事求是地评仯?辩证的看待自q长短得失,做一个明白h.
W三、走出阴?要克服这一ơ失败带l自q心理压力,时刻牢记自己q,防患于未?加强学习,提高自n素质.
W四、认真工?回到原单位岗位上?要实实在在、踏t实实地工作,三十六行,行行出状?争取在本岗位上做Z定的成W.
W五、再接再?成ؓ国家公务员一直是我的梦想,以后如果有机会我仍然后再ơ参加竞?
51、假如你晚上要去送一个出国的同学L场,可单位时有事非你办不可Q你怎么办?
回答提示Q我觉得工作是第一位的Q但朋友间的情谊也是不能偏废的。这个问题我觉得要按照当时具体的情况来决定?br>Q?Q、如果我的朋友晚?点中的飞机,而我?加班八点p够完成的话,那就最理想了,q完工作L场,皆大Ƣ喜?br>Q?Q、如果说工作不是很紧急,加班仅仅是ؓ了明天上班的时候能把报告交到办公室Q那完全可以跟领导打声招|先去机场然后回来加班Q晚点睡是了?br>Q?Q、如果工作很紧急,两者不可能兼顾的情况下Q我觉得可以׃U选择?Q如果不是全单位都加班的话,是不是可以要其他同事来代替以下工作,自己L场,哪怕就是代替你d的那一会儿?Q如果连q一炚w做不到的话,
那只好忠义不能两全了Q打电话l朋友解释一下,心他会理解Q毕竟工作做完了完了,朋友q是可以再见面的?br>52、如果通过q次面试我们单位录用了你Q但工作一D|间却发现你根本不适合q个职位Q你怎么办?
回答提示Q一D|间发现工作不适合我,有两U情况:
1、如果你实热爱q个职业Q那你就要不断学习,虚心向领导和同事学习业务知识和处事经验,了解q个职业的精内涵和职业要求Q力争减差距;
2、你觉得q个职业可有可无Q那q是早换个职业Q去发现适合你的Q你热爱的职业,那样你的发展前途也会大点,对单位和个h都有好处?br>53、你做过的哪件事最令自己感到骄?
回答提示Q这是考官l你的一个机会,让你展示自己把握命运的能力。这会体C潜在的领D力以及你被提升的可能性。假如你应聘于一个服务性质的单位,你很可能会被邀请去午餐。记住:你的前途取决于你的知识、你的社交能力和l合表现?br>54、谈谈你q去做过的成功案?br>
回答提示QD一个你最有把握的例子Q把来龙去脉说清楚,而不要说了很多却没有重点。切忌夸大其词,把别人的功劳到说成自qQ很多主ؓ了确保要用的人是最适合的,会打电话向你的前一个主征询对你的看法及意见,所以如果说谎,是很ҎI梆的?br>55、谈谈你q去的工作经验中Q最令你挫折的事?br>
?
{提C:曄接触q一个客P原本有耳闻他们以挑剔出名,所以事前的准备功夫做得十分充分Q也投入了相当多的时间与_֊Q最后客戯然ƈ没有照单全收Q?
但是接受的程度已l出乎我们意料之外了。原以ؓ从此可以合作愉快Q却得知客户最后因为预关p选择了另一家代理商Q之前的努力因而付诸流水。尽如此,?
q是从这ơ的l验学到很多Q如对该产业的了解,整个team的默契也更好了?br>分析Q借此了解你对挫折的容忍度及调解方式?br>56、如何安排自q旉Q会不会排斥加班Q?br>
回答提示Q基本上Q如果上班工作有效率Q工作量合理的话Q应该不太需要加班。可是我也知道有时候很N免加班,加上现在工作都采用责dQ所以我会调配自q旉Q全力配合?br>分析Q虽然不会有人心甘情愿的加班Q但依旧要表现出高配合度的诚意?br>57、ؓ什么我们要在众多的面试者中选择你?
回答提示Q根据我对贵公司的了解,以及我在q䆾工作上所累积的专业、经验及Q相信正是贵公司所扑֯的h才。而我在工作态度、IQ׃Q也有圆融、成熟的一面,和主、同事都能合作愉快?br>分析Q别q度吹嘘自己的能力,或信口开沛_乱开支票Q例如一定会公司带来多少q业务{,q样很容易给ZU爱说大话、不切实际的感觉?br>58、对q个职务的期许?
回答提示Q希望能借此发挥我的所学及专长Q同时也吸收贵公司在q方面的l验Q就公司、我个h而言Q缔?#8220;双赢”的局面?br>分析Q回{前不妨先询问该公司对这职务的责Q认定及归属,因ؓ每一家公司的状况不尽相同。以免说了一堆理x负却发现牛头不对马嘴?br>59、ؓ什么选择q个职务Q?br>
回答提示Q:q一直是我的兴趣和专长,l过q几q的练Q也累积了一定的l验及h脉,怿我一定能胜Qq个职务的?br>分析Q适时丑ևq去?#8220;丰功伟业”Q表现出你对q䆾职务的熟E度Q但避免q于夸张的ŞҎ于炫耀?br>60、ؓ什么选择我们q家公司Q?br>
回答提示Q曾l在报章杂志看过关于贵公司的报道Q与自己所q求的理忉|志一同。而贵公司在业界的成W也是有目q的,而且对员工的教育训练、升q等也都很有制度?br>分析Q去面试前先做功课,了解一下该公司的背景,让对方觉得你真的很有心想得到q䆾工作Q而不只是探探路?br>61、你认ؓ你在学校属于好学生吗Q?br>
?
{提C:企业的招聘者很_明Q问q个问题可以试探出很多问题:如果求职者学习成l好Q就会说Q?#8220;是的Q我的成l很好,所有的成W都很优异。当Ӟ判断一?
学生是不是好学生有很多标准,在学校期间我认ؓ成W是重要的Q其他方面包括思想道d、实늻验、团队精、沟通能力也都是很重要的Q我在这些方面也做得?
好,应该说我是一个全面发展的学生?#8221;如果求职者成l不理惻I便会_“我认为是不是一个好学生的标准是多元化的Q我的学习成l还可以Q在其他斚w我的
表现也很H出Q比如我d多地方实习过Q我很喜Ƣ在快节奏和压力下工作,我在学生会组l过 ××zdQ锻g我的团队合作_和组l能力?#8221;
有经验的招聘者一听就会明白,企业喜欢诚实的求职者?br>62、请谈谈如何适应办公室工作的新环境?
回答提示①办公室里每个h有各自的岗位与职责,不得擅离岗位?br>②根据领导指C和工作安排Q制定工作计划,提前预备Qƈ按计划完成?br>③多Lq及时汇报,遇到不明白的要虚心请教?br>④抓间隙旉Q多学习Q努力提高自q政治素质和业务水q?br>63、在工作中学习到了些什么?
回答提示Q这是针对{职者提出的问题Q徏议此时可以配合面试工作的特点作ؓ主要依据来回{,如业务工作需要与人沟通,便可丑և之前工作与h沟通的例子Q经历了哪些困难Q学习到哪些l验Q把握这些要点做陈述Q就可以Lq关?br>64、有惌创业吗?
回答提示Q这个问题可以显CZ的冲Ԍ但如果你的回{是“?#8221;的话Q千万小心,下一个问题可能就?#8220;那么Z么你不这样做呢?”
65、最能概括你自己的三个词是什么?
回答提示Q我l常用的三个词是Q适应能力强,有责d和做事有始终Q结合具体例子向主考官解释Q他们觉得你具有发展潜?br>66、你认ؓ你在学校属于好学生吗Q?br>
?
{提C:企业的招聘者很_明Q问q个问题可以试探出很多问题:如果求职者学习成l好Q就会说Q?#8220;是的Q我的成l很好,所有的成W都很优异。当Ӟ判断一?
学生是不是好学生有很多标准,在学校期间我认ؓ成W是重要的Q其他方面包括思想道d、实늻验、团队精、沟通能力也都是很重要的Q我在这些方面也做得?
好,应该说我是一个全面发展的学生?#8221;如果求职者成l不理惻I便会_“我认为是不是一个好学生的标准是多元化的Q我的学习成l还可以Q在其他斚w我的
表现也很H出Q比如我d多地方实习过Q我很喜Ƣ在快节奏和压力下工作,我在学生会组l过 ××zdQ锻g我的团队合作_和组l能力?#8221;
有经验的招聘者一听就会明白,企业喜欢诚实的求职者?br>67、除了本公司外,q应聘了哪些公司Q?br>
回答提示Q很奇怪,q是相当多公怼问的问题Q其用意是要概略知道应R者的求职志向Q所以这ql对是负面答案,q不便说出公司名称Q也应回{?#8220;销售同U品的公司”Q如果应聘的其他公司是不同业界,Ҏ让h产生无法信Q的感觉?br>68、何时可以到职?
回答提示Q大多数企业会关心就职时_最好是回答\’如果被录用的话,到职日可按公司规定上?#8221;Q但如果q未辞去上一个工作、上班时间又太近Q似乎有些强人所难,因ؓ交接臛_要一个月的时_应进一步说明原因,录取公司应该会通融?br>69、你q毕业于名牌院校?
回答提示Q是否毕业于名牌院校不重要,重要的是有能力完成您交给我的工作Q我接受了北大青鸟的职业培训Q掌握的技能完全可以胜任贵公司现在工作Q而且我比一些名牌院校的应届毕业生的动手能力q要强,我想我更适合贵公司这个职位?br>70、你怎样看待学历和能力?
?
{提C:学历我想只要是大学专U的学历Q就表明觉得我具备了Ҏ的学习能力。剩下的Q你是学士也好,q是博士也好Q对于这一点的讨论Q不是看你学了多知
识,而是看你在这个领域上发挥了什么,也就是所说的能力问题。一个h工作能力的高低直接决定其职场命运Q而学历的高低只是q入一个企业的敲门砖,如果贵公
司把学历卡在博士上,我就无法q入贵公司,当然q不一定只是我个h的损失,如果一个专U生都能完成的工作,您又何必非要招聘一位博士生呢?
from:
http://blog.ceconlinebbs.com/BLOG_ARTICLE_8896.HTM
]]>
思想成熟、精明能qӀؓ实?
Excellent ability of systematical managementQ?/font>
有极强的pȝ理能力?
Ability to work independent1yQmature and resourcefu1Q?/font>
能够独立工作、思想成熟、应变能力强?
A person with ability plus flexibility should app1y.
需要有能力及适应力强的h?
A stable personality and high sense of responsibility are desirable.
个性稳重、具高度责Q感?
Work well with a multi-cultural and diverse work force.
能够在不同文化和工作人员的背景下地工作?
BrightQaggressive applicants.
反应快、有q取心的应聘者?
Ambitious attitude essentialQ?/font>
有雄心壮志?
InitiativeQindependent and good communication skillQ?/font>
U极d、独立工作能力强Qƈ有良好的交际技能?
Willing to work under pressure with leardership qualityQ?/font>
愿意在压力下工作Qƈ具领导素质?
Willing to assume responsibilities.
应聘者须勇于挑重担?
MatureQself-motivated and strong interpersonal skills.
思想成熟、上q心强,q具极丰富的人际关系技巧?
EnergeticQfashion-minded person.
_֊旺盛、思想新潮?
With a pleasant mature attitude.
开朗成熟?
Strong determination to succeedQ?/font>
有获得成功的坚定军_?
Strong leadership skillsQ?/font>
有极强的领导艺术?
Ability to work well with others.
能够同他Z道很好地工作?
Highly-motivated and reliable person with excellent health and pleasant personality.
上进心强又可靠者,q且w体健康、性格开朗?
The ability to initiate and operate independently.
有创业能力,q能独立C业?
Strong leadership skill while possessing a great team spirit.
有很高的领导艺术和很强的集体_?
Be highly organized and effecientQ?/font>
工作很有条理Q办事效率高?
Willing to learn and progressQ?/font>
肯学习进取?
Good presentation skills.
有良好的表达能力?
Positive active mind essentialQ?/font>
有积极、灵zȝ头脑?
Ability to deal with personnel at all levels effectively?/font>
善于同各Uh员打交道?
Have positive work attitude and be willing and able to work diligently without supervision?/font>
有积极的工作态度Q愿意和能够在没有监督的情况下勤奋地工作?
YoungQbrightQenergetic with strong career-ambition.
q轻、聪明、精力充沛,q有很强的事业心?
Good people management and communication skills. Team player.
有良好的人员理和交际能力。能在集体中发挥带头作用?
Able to work under high pressure and time limitation.
能够在高压力下和旉限制下进行工作?
Be elegant and with nice personality.
举止优雅、个人性格好?
With good managerial skills and organizational capabilities.
有良好的理艺术和组l能力?
The main qualities required are preparedness to work hard, ability to learn, ambition and good health.
主要必备素质是吃苦耐劳_好、学习能力优、事业心强和w体?
Having good and extensive social connections.
h良好而广泛的C会关系?
Being active, creative and innonative is a plus.
思想z跃、有首创和革新精尤佟?nbsp;
With good analytical capability.
有较强的分析能力
]]>
M感觉题目q是比较单,主要考C++里面的东西,q有一些windowsq程机制的题目,具体如下Q?/p>
1.讲述constQstaticQextern的作用;
2.要你描述zcȝ内存存储方式?/p>
3.l你一?2位的六进制数Q写一个程序让它倒序输出?/p>
4.写一个冒泡或者选择排序的程序,q在讲述一个其余排序的E序Qƈ讲述其特炏V?/p>
5.从下?个题目中选做一题或者多题:
Q?Q面向对象是什么意思,C++是如何实现的Q?br>Q?Q多U程中的同步机制是什么,有什么优~点Q?br>Q?QTCP与UDP有什么区别,分别有什么具体的应用协议Q?br>Q?Q(不太记得了,好像是关于hook的)
Q?Q同步机制的考察题?/p>
q次面试的笔试题分ؓWPS软g研发Q毒霸研发以及游戏测试三个方向,WPS方向的题比较难,设计深入的C++~程问题Q游戏测试全是简{题Q如列D兽 世界的十大缺?之类的,都很好回{,感觉是金山的组l还是比较乱,大家都一ؕ抢试P搞得场面很烂Q而且只有两个小mm在组l现场,呵呵Q?/p>
W试?腾讯数据库笔试题Q?br>在一个文件中?10G 个整敎ͼ乱序排列Q要求找Z位数。内存限制ؓ 2G。只写出思\卛_?/p>
腾讯W试题解{?Peak Wong)Q?/p>
1Q把整数分成256MD,每段可以?4位整C存该D|据个敎ͼ256M*8 = 2G内存Q先?
2Q读10G整数Q把整数映射?56MD中Q增加相应段的记?/p>
3Q扫?56MD늚记数Q找C位数的段和中位数的段前面所有段的记敎ͼ可以把其他段的内存释?/p>
4Q因中位数段的可能整数取值已l比较小(如果?2bit整数Q当然如果是64bit整数的话Q可以再ơ分D?Q对每个整数做一个记敎ͼ再读一?0G整数Q只d中位数段对应的整敎ͼq设|记数?/p>
5Q对新的记数扫描一ơ,卛_扑ֈ中位数?/p>
如果?2bit整数Q读10G整数2ơ,扫描256M记数一ơ,后一ơ记数因数量很小Q可以忽略不记?/p>
解释一下:假设?2bit整数Q按无符h数处?/p>
整数分成256MD? 整数范围? - 2^32 - 1 一共有4GU取|4G/256M = 16Q每16个数一D?0-15?D,16-31是一D,...
整数映射?56MD中? 如果整数?-15Q则增加W一D记敎ͼ如果整数?6-31Q则增加W二D记敎ͼ...
其实可以不用?56MD,可以分的D|一些,q样在扫描记数段时会快一些,q能节省一些内存?/p>
Baidu面试W试?解答{案
一、选择题:15??0?
1. 在排序方法中Q关键码比较ơ数与记录地初始排列无关的是 .
A. Shell排序 B. 归ƈ排序 C. 直接插入排序 D. 选择排序
2. 以下多线E对int型变量x的操作,哪几个需要进行同步:
A. x=y; B. x C. x; D. x=1;
3. 代码
void func() {
static int val;
…
}
中,变量val的内存地址位于Q?
A. 已初始化数据D?B.未初始化数据D?C.?D.?
4. 同一q程下的U程可以׃n以下
A. stack B. data section
C. register set D. thread ID
5. TCP和IP分别对应?OSI中的哪几层?
A. Application layer
B. Data link layer
C. Presentation layer
D. Physical layer
E. Transport layer
F. Session layer
G. Network layer
6. short a[100]Qsizeof(a)q回Q?
A 2 B 4 C 100 D 200 E 400
7. 以下哪种不是Zlg的开发技术_____?
A XPCOM B XP C COM D CORBA
8. 以下代码打印的结果是Q假设运行在i386pd计算ZQ:
struct st_t
{
int status;
short* pdata;
char errstr[32];
};
st_t st[16];
char* p = (char*)(st[2].errstr 32);
printf("%d", (p - (char*)(st)));
A 32 B 114
C 120 D 1112
9. STL中的哪种l构是连lŞ式的存储
A map B set C list D vector
10. 一个栈的入栈序列是AQBQCQDQEQ则栈的不可能的输出序列是( Q?
A、EDCBAQ?B、DECBAQ?C、DCEABQ?D、ABCDE
二、简{题Q?0分,??
1. Q?分)重复多次fclose一个打开q一ơ的FILE *fp指针会有什么结果,q请解释?
考察点:D文g描述W结构中指针指向的内存被重复释放Q进而导致一些不可预期的?br>常?
2. Q?5分)下面一D代码,惛_调用f2(1)时打印err1Q调用f2(2)时打印err4Q但是代?br>中有一些问题,请做可能少的修改之正?
1 static int f1(const char *errstr, unsigned int flag) {
2 int copy, index, len;
3 const static char **__err = {“err1”, “err2”, “err3”, “err4”};
4
5 if(flag & 0x10000)
6 copy = 1;
7 index = (flag & 0x300000) >> 20;
8
9 if(copy) {
10 len = flag & 0xF;
11 errstr = malloc(len);
12 if(errstr = NULL)
13 return -1;
14 strncpy(errstr, __err[index], sizeof(errstr));
15 } else
16 errstr = __err index;
17 }
18
19 void f2(int c) {
20 char *err;
21
22 swtch(c) {
23 case 1:
24 if(f1(err, 0x110004) != -1)
25 printf(err);
26 case 2:
27 if(f2(err, 0x30000D) != -1)
28 printf(err);
29 }
30 }
三、编E题Q?0???
注意Q要求提供完整代码,如果可以~译q行酌情加分?
1. 求符合指定规则的数?
l定函数d(n) = n n的各位之和,n为正整数Q如 d(78) = 78 7 8=93?q样q个函数
可以看成一个生成器Q如93可以看成?8生成?
定义数AQ数A找不C个数B可以由d(B)=AQ即A不能由其他数生成。现在要写程序,扑և
1?0000里的所有符合数A定义的数?
输出Q?
1
3
…
四、设计题Q?5???
注意Q请可能详l描qC的数据结构、系l架构、设计思\{。徏议多写一些伪代码?br>者流E说明?
1. 假设一个mp3搜烦引擎收录?^24首歌Ԍq记录了可收听这些歌曲的2^30条URLQ但?br>首歌的URL不超q?^10个。系l会定期查这些URLQ如果一个URL不可用则不出现在搜烦l?br>果中。现在歌曲名和URL分别通过整型的SONG_ID和URL_ID唯一定。对该系l有如下需?br>Q?
1) 通过SONG_ID搜烦一首歌的URL_IDQ给出URL_ID计数和列?
2) l定一个SONG_IDQؓ其添加一个新的URL_ID
3) d一个新的SONG_ID
4) l定一个URL_IDQ将其置Z可用
限制条gQ内存占用不过1GQ单个文件大不过2GQ一个目录下的文件数不超q?28?br>?
得最x能Q请说明设计的数据结构、搜索算法,以及资源消耗。如果系l数据量?br>大,该如何多机分布处理?
W一?br> ?br> 癑ֺ的主要业务是搜烦Q搜索的基本原理如下
1Q编写爬虫程序到互联|上抓取|页量的网c?br> 2Q将抓取来的|页通过抽取Q以一定的格式保存在能快速检索的文gpȝ中?br> 3Q把用户输入的字W串q行拆分成关键字L件系l中查询q返回结果?br> ׃?点可见,字符串的分析Q抽取在搜烦引擎中的C是何{重要?br> 因此Q百度的W试面试题中Q出现这L题就变得理所当然了?br>import java.net.*;
import java.io.*;
import java.util.*;
/** * @author tzy * 在j2sdk1.4.2下测试通过 */
public class FileNameStat{
private String srcPath;//要统计的文g路径
private Map statMap;//用于l计的map
public FileNameStat(String srcPath)
{
this.srcPath=srcPath;
statMap=new TreeMap();
}
/*获得要统计的URL的文件名*/
public String getFileName(String urlString)
{
URL url=null;
String filePath=null;
String fileName=null;
try
{
url=new URL(urlString);
filePath=url.getPath();
int index=0;
if ((index=filePath.lastIndexOf(\"/\"))!=-1)
{
fileName=filePath.substring(index+1);
}
else
{
fileName=\"\";
}
}
catch(MalformedURLException e)
{
}
return fileName;
}
/*l计指定文g名的个数*/
public void stat(String filename)
{
Integer count=null;
if(statMap.get(filename)!=null)
{
count=(Integer)statMap.get(filename);
count=new Integer(count.intValue()+1);
}
else
{
count=new Integer(1);
}
statMap.put(filename,count);
}
/*l计的主Ҏ*/
public void start() throws FileNotFoundException,IOException
{
BufferedReader bfin=new BufferedReader(new FileReader(this.srcPath));
String temp=null;
while((temp=bfin.readLine())!=null)
{
stat(getFileName(temp));
}
}
/*输出l计l果*/
public void result()
{
Iterator it=statMap.entrySet().iterator();
while(it.hasNext())
{
Map.Entry entry=(Map.Entry)(it.next());
System.out.println((entry.getKey().equals(\"\")?\"I文件名\":entry.getKey()) + \"的个数是\" + entry.getValue());
}
}
public static void main(String[] args) throws Exception
{
FileNameStat fns=new FileNameStat(\"src.txt\");//指定成待l计文g
fns.start();
fns.result();
}
}
W二?/p>
评:
q道题也与百度的业务有关Q百度现在除了搜索外Q还有脓吧,知道Q博客等重要产品。 同时也在U极的探索社区化Q包括前不久宣布q军电子商务领域Q?搜烦之外的这些品,其主要功能的实现主要是对数据库的操作。 因此Q想q入癑ֺQ也需要对数据库有一定的认识? 实现思\及数据库设计Q 1Q该论坛主要有两个实体对象,用户和帖?对于帖子对象Q有一个问题:回复的帖子是否应该跟主题帖子存放在同一个表?
考虑到每天更?0万帖子,说明帖子数比较多Qؓ了方便主题的呈现Q我一般都把主题脓和回帖分别放在不同的表中Q把主题贴和回帖分开可以提高查询效率(300万的讉K量每??/p>
2Q按?中的思\Q该论坛׃个对?用户和帖?变成三个实体对象Q分别是用户Q主题帖子,回复帖子;
3Q上qC个对象存在三个关p,分别是:
用户--主题帖,一个用户可以发0个或多个帖子Q一个帖子对应一个用?一对多关系)Q?/p>
主题?-回复帖:一个主题有0个或多个回复帖子Q一个回复帖子对应一个主?一对多关系);
用户--回复_一个用户可以回0个或多个帖,一个帖子对应一个用?一对多关系)?/p>
q存在对回复贴的回复Q这个考虑用fatherId来表C?/p>
4Q由于三个关p?“用户--主题帖,主题?-回复帖,用户--回复?#8221; 都是一对多关系Q根据表设计一般原则,可以这两个关系独立建立表,也可以不另外而将一对多的关pM现在实体表中;然而,表间的连接查询是非常耗资?的,所以应量减少表间q接Q那么对三个关系不应该分别徏表,而是把用Lid作ؓ主题表和回帖表的外键Q把主题贴id作ؓ回帖表的外键?/p>
5Q鉴于以上考虑Q该论坛的三个表如下所C?/p>
表名Qt_user_info (用户信息?
字段?nbsp; cd ~省?nbsp; 中文含义 U束 备注
id Int 用户~号 PRI Auto_increment
Name Varchar(30) 用户?nbsp;
Email Varchar(50)
Phone Varchar(30)
Addr Varchar(200)
其他字段略,Ҏ需要添加 表名Qmain_content_info (主题帖信息表)
字段?nbsp; cd ~省?nbsp; 中文含义 U束 备注
id Int 贴编?nbsp; PRI Auto_increment
Title Varchar(200) 发帖标题
Content Text 发帖内容
UserID Int 用户~号 外键
其他字段略,Ҏ需要添?/p>
表名Qsub_content_info (回复贴信息表)
字段?cd ~省?nbsp; 中文含义 U束 备注
id Int 贴编?nbsp; PRI Auto_increment
Title Varchar(200) 发帖标题
Content Text 发帖内容
UserID Int 用户~号 外键
FatherID Int 父编?nbsp;
MainID Int 主题帖编?nbsp; 外键
其他字段略,Ҏ需要添?/p>
6Q符合范式分析:
上述表中每个字段不可再分Q首先满?NF;
然后数据库表中的每个实例或行都是可以被惟一地区?id)Q不存在部分依赖Q因此满?NF;
t_user_info (用户信息?和main_content_info (主题帖信息表)不存在Q何传递依赖,臛_属于BCNF;
但是sub_content_info (回复贴信息表)不满?NF,因ؓ存在如下传递依赖:id-->FatherID,FatherID-->MainID?/p>
范式q不是越高越好,sub_content_info表只满2NF却更有效率,也是当今论坛较主的设计?/p>
W三?/p>
评:
如何Ҏv量数据进行快速检索,q是搜烦引擎的必需考虑的问题。这又涉及到数据l构和算法。 因此Q要惌入百度,必ȝ悉一些基本的法和数据结构。 思\及解x案如下:
1: 设计用TRIE树实现关键词到其对应id的快速词典查?/p>
TRIE树的每一个节点ؓ一个包?56个元素的数组Q同时指针指向其下一U节?/p>
节点定义如下Q?/p>
struct trienode
{
int id;
struct trienode *child[256];
}TRIENODE;
如果TRIE树的某个节点的指针ؓNULLQ说明从跟节点到当前节点的\径构成文件B中的一个关键词Q?/p>
在其节点的id保存该关键词的id;如果指针不ؓNULLQ则id对应?或者一个无I大的整敎ͼ标志从根节点
到当前节点的路径不是一个完整的关键词?/p>
关键词转化Zq制无符号char型数l,卛_于汉字等双字节字W视Z个无W号char型整敎ͼ
每个元素的取D围在0?55之间?/p>
2Q生成文件b的TRIE?/p>
步骤1Q依ơ读取文件b的每一行,Ҏ一行执行步?到步?
步骤2Q读取关键词id和关键词Qo为key
步骤3Q依ơ读取key的每一个字W,Ҏ一个字W,执行步骤4;
步骤4Q如果该字符对应的指针ؓNULLQ则创徏其儿子节?
步骤5Qؓ当前节点的对应字Wid|ؓ关键词id
3Q根据A文g生成C文g
步骤1Q依ơ读取文件A的每一行,Ҏ一行执行步?到步?
步骤2Q分别获取当前行关键词、ip地址和时?/p>
步骤3Qo关键词key=c1c2...cmQ对c1到cm每个字符Q执行步?
步骤4Q获取根节点的第c1个元素指针,转移到节点node1Q?/p>
Ҏnode1的第c2个元素指针,转移到node2...
Ҏnodem的第cm个元素,获取关键词的id
步骤5Q往文gc中写入一行数据,格式为关键词的id、ip地址和时?/p>
4Q复杂度分析
生成文gB的TRIE树过E时间复杂度为O(n*m)Q其中n为文件b行数Qm为文件b关键词的最大长度。TRIE的空间复杂度为O(n*m)Qn和m含义同上Q但׃实际应用中关键词之间可能会有很多前缀相同现象Q所以实际耗费I间q不会很高?/p>
生成C文g的时间复杂度同样为O(n*m)Qn为文件a行数Qm为文件a关键词的最大长度,因ؓ有了TRIE树之后,l定一个关键词获得其id的时?复杂度ؓ关键词长度。生成C文g的过E除了TRIE树空间外基本不需要太多额外的I间Q空间复杂度为O(1)Q由于系l有1G的可用内存,TRIE占用?I间在几十兆?00M之间(与关键词集合有关)Q因此本Ҏ完全可行?/p>
2、八个h乘两只船Q船1和船2Q每只船只能且必d4人,8Z?个大人:F、G、HQ?个小孩:M、N、X、Y、Z。坐船的规则如下Q?
i. 每条船上臛_有一个大人;如果F在船2Q则G也分到船2Q?
ii.如果M分到?Q则N坐船2QX、Z必须分乘不同的船?
aQ下列哪lh员可以坐?Q( Q?
AQ?F、G、H、X BQ?F、H、N、Y
CQ?F、H、Y?Z DQ?F、M、N、X
bQ如果F坐船2Q下列哪一对可以坐在同一条船上?Q?Q?
AQF和Y BQG和Y CQM和N DQY和Z
cQ如果船1上已l坐?个小孩,下列哪一对可以坐到船2Q( Q?
AQF和H BQG和Y CQH和N DQM和N
dQ如果G在船1Q下列哪个说法是正确的?Q?Q?
AQH坐船2 BQM坐船2
CQ船1上有一个大?DQ船2上有2个大?
eQ如果M和N在一船上Q下列哪一对也必须在一条船上?Q?Q?
AQF和H BQF和Y CQG和X DQN和X
fQ如果H与Y乘坐不同的船Q下列哪个必d?上?Q?Q?
AQ?F BQ?G CQ?H DQ?M
gQ如果船1上只?个大人,下列哪个说法是正的Q( Q?
AQF在船1?BQG在船2?
CQH在船2?DQM在船1?br>
from: http://blog.chinaunix.net/u2/76292/showart_1327403.html
1.是不是一个父cd了一个virtual 函数Q如果子c覆盖它的函C加virtual ,也能实现多?
virtual修饰W会被隐形承的?/p>
private 也被集成Q只事派生类没有讉K权限而已
virtual可加可不?/p>
子类的空间里有父cȝ所有变?static除外)
同一个函数只存在一个实?inline除外)
子类覆盖它的函数不加virtual ,也能实现多态?/p>
在子cȝI间里,有父cȝU有变量。私有变量不能直接访问?/p>
--------------------------------------------------------------------------
2.输入一个字W串Q将光序后输出。(使用C++Q不用伪码)
#include <iostream>
using namespace std;
void main()
{
char a[50];memset(a,0,sizeof(a));
int i=0,j;
char t;
cin.getline(a,50,'\n');
for(i=0,j=strlen(a)-1;i<strlen(a)/2;i++,j--)
{
t=a[i];
a[i]=a[j];
a[j]=t;
}
cout<<a<<endl;
}
//W二U?/p>
string str;
cin>>str;
str.replace;
cout<<str;
--------------------------------------------------------------------------
3.L单描qWindows内存理的方法?/p>
内存理是操作系l中的重要部分,两三句话恐怕谁也说不清楚吧~~
我先说个大概Q希望能够抛砖引玉吧
当程序运行时需要从内存中读D늨序的代码。代码的位置必须在物理内存中才能被运行,׃现在的操作系l中有非常多的程序运行着Q内存中不能够完全放下,所以引Z虚拟内存的概c把哪些不常用的E序片断放入虚拟内存,当需要用到它的时候在load入主存(物理内存Q中。这个就是内存管理所要做的事。内存管理还有另外一件事需要做Q计程序片D在d中的物理位置Q以便CPU调度?/p>
内存理有块式管理,式理Q段式和D页式管理。现在常用段式理
块式理Q把d分ؓ一大块、一大块的,当所需的程序片断不在主存时分配一块主存空_把程 序片断load入主存,q所需的程序片度只有几个字节也只能把这一块分配给它。这样会造成很大的浪费,q_费?0Q的内存I间Q但时易于管理?/p>
式理Q把d分ؓ一一늚Q每一늚I间要比一块一块的I间很多,昄q种Ҏ的空间利用率要比块式理高很多?/p>
D式理Q把d分ؓ一D一D늚Q每一D늚I间又要比一一늚I间很多,q种Ҏ在空间利用率上又比页式管理高很多Q但是也有另外一个缺炏V一个程序片断可能会被分为几十段Q这样很多时间就会被费在计每一D늚物理地址上(计算机最耗时间的大家都知道是I/O吧)?/p>
D页式管理:l合了段式管理和式理的优炏V把d分ؓ若干,每一又分ؓ若干Dc好处就很明显,不用我多说了吧?/p>
各种内存理都有它自qҎ来计出E序片断在主存中的物理地址Q其实都很相伹{?/p>
q只是一个大概而已Q不以说明内存理的皮毛。无论哪一本操作系l书上都有详l的讲解
--------------------------------------------------------------------------
4.
#include "stdafx.h"
#define SQR(X) X*X
int main(int argc, char* argv[])
{
int a = 10;
int k = 2;
int m = 1;
a /= SQR(k+m)/SQR(k+m);
printf("%d\n",a);
return 0;
}
q道题目的结果是什么啊?
define 只是定义而已Q在~择时只是简单代换X*X而已Qƈ不经q算术法则的
a /= (k+m)*(k+m)/(k+m)*(k+m);
=>a /= (k+m)*1*(k+m);
=>a = a/9;
=>a = 1;
上面的错了,该是
a=a/(k+m*k+m/k+m*k+m)
a=a/(2+1*2+1/2+1*2+1)
注意Q因为k,m为int型,所?/2=0,即aQa/7=1(都ؓint型)
gcc下检查过Q如果大安为float型的话结果ؓ10/7.5=1.33333
--------------------------------------------------------------------------
5.
const W号帔RQ?br>(1)const char *p
(2)char const *p
(3)char * const p
说明上面三种描述的区别;
如果const位于星号的左侧,则const是用来修饰指针所指向的变量,x针指向ؓ帔RQ?br>如果const位于星号的右侧,const是修饰指针本nQ即指针本n是常量?/p>
(1)const char *p
一个指向charcd的const对象指针Qp不是帔R,我们可以修改p的|使其指向不同的charQ但是不能改变它指向非char对象Q如Q?br>const char *p;
char c1='a';
char c2='b';
p=&c1;//ok
p=&c2;//ok
*p=c1;//error
(2)char const *p
(3)char * const p
q两个好象是一LQ此?p可以修改Q而p不能修改?/p>
(4)const char * const p
q种是地址及指向对象都不能修改?/p>
--------------------------------------------------------------------------
6.下面是C语言中两Uif语句判断方式。请问哪U写法更好?Z么?
int n;
if (n == 10) // W一U判断方?br> if (10 == n) // W二U判断方?/p>
如果了??~译时就会报?减少了出错的可能?可以出是否了=
--------------------------------------------------------------------------
7.下面的代码有什么问题?
void DoSomeThing(...)
{
char* p;
...
p = malloc(1024); // 分配1K的空?br> if (NULL == p)
return;
...
p = realloc(p, 2048); // I间不够Q重新分配到2K
if (NULL == p)
return;
...
}
A:
p = malloc(1024); 应该写成Q?p = (char *) malloc(1024);
没有释放p的空_造成内存泄漏?/p>
--------------------------------------------------------------------------
8.下面的代码有什么问题?q请l出正确的写法?br>void DoSomeThing(char* p)
{
char str[16];
int n;
assert(NULL != p);
sscanf(p, "%s%d", str, n);
if (0 == strcmp(str, "something"))
{
...
}
}
A:
sscanf(p, "%s%d", str, n); q句该写成: sscanf(p, "%s%d", str, &n);
--------------------------------------------------------------------------
9.下面代码有什么错?
Void test1()
{
char string[10];
char *str1="0123456789";
strcpy(string, str1);
}
数组界
--------------------------------------------------------------------------
10.下面代码有什么问?
Void test2()
{
char string[10], str1[10];
for(i=0; i<10;i++)
{
str1[i] ='a';
}
strcpy(string, str1);
}
数组界
--------------------------------------------------------------------------
11.下面代码有什么问?
Void test3(char* str1)
{
char string[10];
if(strlen(str1)<=10)
{
strcpy(string, str1);
}
}
==数组界
==strcpy拯的结束标志是查找字符串中的\0 因此如果字符串中没有遇到\0的话 会一直复Ӟ直到遇到\0,上面?23都因此生越界的情况
使用 strncpy ?memcpy
--------------------------------------------------------------------------
12.下面代码有什么问?
#define MAX_SRM 256
DSN get_SRM_no()
{
static int SRM_no; //是不是这里没赋初|
int I;
for(I=0;I<MAX_SRM;I++,SRM_no++)
{
SRM_no %= MAX_SRM;
if(MY_SRM.state==IDLE)
{
break;
}
}
if(I>=MAX_SRM)
return (NULL_SRM);
else
return SRM_no;
}
pȝ会初始化static int变量?,但该g一直保?所谓的不可重入...
--------------------------------------------------------------------------
13.写出q行l果:
{// test1
char str[] = "world"; cout << sizeof(str) << ": ";
char *p = str; cout << sizeof(p) << ": ";
char i = 10; cout << sizeof(i) << ": ";
void *pp = malloc(10); cout << sizeof(p) << endl;
}
6Q?Q?Q?
--------------------------------------------------------------------------
14.写出q行l果:
{// test2
union V {
struct X {
unsigned char s1:2;
unsigned char s2:3;
unsigned char s3:3;
} x;
unsigned char c;
} v;
v.c = 100;
printf("%d", v.x.s3);
}
3
--------------------------------------------------------------------------
15.用C++写个E序Q如何判断一个操作系l是16位还?2位的Q不能用sizeof()函数
A1:
16位的pȝ下,
int i = 65536;
cout << i; // 输出0Q?br>int i = 65535;
cout << i; // 输出-1Q?/p>
32位的pȝ下,
int i = 65536;
cout << i; // 输出65536Q?br>int i = 65535;
cout << i; // 输出65535Q?/p>
A2:
int a = ~0;
if( a>65536 )
{
cout<<"32 bit"<<endl;
}
else
{
cout<<"16 bit"<<endl;
}
--------------------------------------------------------------------------
16.C和C++有什么不?
从机制上Qc是面向过E的Q但c也可以编写面向对象的E序Q;c++是面向对象的Q提供了cR但是,
c++~写面向对象的程序比cҎ
从适用的方向:c适合要求代码体积的Q效率高的场合,如嵌入式Qc++适合更上层的Q复杂的Q?nbsp; llinux核心大部分是c写的Q因为它是系lYӞ效率要求极高?/p>
从名UC也可以看出,c++比c多了+Q说明c++是c的超集;那ؓ什么不叫c+而叫c++呢,是因为c++?br>c来说扩充的东西太多了Q所以就在c后面放上两个+Q于是就成了c++
C语言是结构化~程语言QC++是面向对象编E语a?br>C++侧重于对象而不是过E,侧重于类的设计而不是逻辑的设计?/p>
--------------------------------------------------------------------------
17.在不用第三方参数的情况下Q交换两个参数的?br>#include <stdio.h>
void main()
{
int i=60;
int j=50;
i=i+j;
j=i-j;
i=i-j;
printf("i=%d\n",i);
printf("j=%d\n",j);
}
Ҏ二:
i^=j;
j^=i;
i^=j;
Ҏ三:
// 用加减实玎ͼ而且不会溢出
a = a+b-(b=a)
--------------------------------------------------------------------------
18.有关位域的面试题Qؓ什么输出的是一个奇怪的字符Q?/p>
a.t = 'b';效果相当?a.t= 'b' & 0xf;
'b' --> 01100010
'b' & 0xf -->>00000010
所以输出Ascii码ؓ2的特D字W?/p>
char t:4;是4bit的字W变量,同样
unsigned short i:8;是8bit的无W号短整形变?/p>
--------------------------------------------------------------------------
19.int i=10, j=10, k=3; k*=i+j; k最后的值是?
60
--------------------------------------------------------------------------
20.q程间通信的方式有?
q程间通信的方式有 ׃n内存Q?道 QSocket Q消息队?, DDE{?/p>
--------------------------------------------------------------------------
21.
struct A
{
char t:4;
char k:4;
unsigned short i:8;
unsigned long m;
}
sizeof(A)=?Q不考虑边界寚wQ?/p>
7
struct CELL // Declare CELL bit field
{
unsigned character : 8; // 00000000 ????????
unsigned foreground : 3; // 00000??? 00000000
unsigned intensity : 1; // 0000?000 00000000
unsigned background : 3; // 0???0000 00000000
unsigned blink : 1; // ?0000000 00000000
} screen[25][80]; // Array of bit fields
二、位l构
位结构是一U特D的l构, 在需按位讉K一个字节或字的多个位时, 位结?
比按位运符更加方便?
位结构定义的一般Ş式ؓ:
struct位结构名{
数据cd 变量? 整型常数;
数据cd 变量? 整型常数;
} 位结构变?
其中: 数据cd必须是int(unsigned或signed)?整型常数必须是非负的?
? 范围?~15, 表示二进制位的个? 卌C有多少位?
变量名是选择? 可以不命? q样规定是ؓ了排列需要?
例如: 下面定义了一个位l构?
struct{
unsigned incon: 8; /*incon占用低字节的0~7??/
unsigned txcolor: 4;/*txcolor占用高字节的0~3位共4?/
unsigned bgcolor: 3;/*bgcolor占用高字节的4~6位共3?/
unsigned blink: 1; /*blink占用高字节的W??/
}ch;
位结构成员的讉K与结构成员的讉K相同?
例如: 讉K上例位结构中的bgcolor成员可写?
ch.bgcolor
注意:
1. 位结构中的成员可以定义ؓunsigned, 也可定义为signed, 但当成员?
度ؓ1? 会被认ؓ是unsignedcd。因为单个位不可能具有符受?
2. 位结构中的成员不能用数l和指针, 但位l构变量可以是数l和指针,
如果是指? 其成员访问方式同l构指针?
3. 位结构总长?位数), 是各个位成员定义的位C? 可以过两个?
节?
4. 位结构成员可以与其它l构成员一起用?
例如:
struct info{
char name[8];
int age;
struct addr address;
float pay;
unsigned state: 1;
unsigned pay: 1;
}workers;
上例的结构定义了关于一个工人的信息。其中有两个位结构成? 每个位结
构成员只有一? 因此只占一个字节但保存了两个信? 该字节中W一位表C工
人的状? W二位表C工资是否已发放。由此可见用位l构可以节省存贮I间?/p>
--------------------------------------------------------------------------
22.下面的函数实现在一个固定的C加上一个数Q有什么错误,Ҏ
int add_n(int n)
{
static int i=100;
i+=n;
return i;
}
{?
因ؓstatic使得i的g保留上次的倹{?br>Lstatic可?/p>
--------------------------------------------------------------------------
23.下面的代码有什么问?
class A
{
public:
A() { p=this; }
~A() { if(p!=NULL) { delete p; p=NULL; } }
A* p;
};
{?
会引h限递归
--------------------------------------------------------------------------
24.
union a {
int a_int1;
double a_double;
int a_int2;
};
typedef struct
{
a a1;
char y;
} b;
class c
{
double c_double;
b b1;
a a2;
};
输出cout<<sizeof(c)<<endl;的结?
{?
VC6环境下得出的l果?2
?
?sun)在VC6.0+win2k下做q试?
short - 2
int-4
float-4
double-8
指针-4
sizeof(union)Q以l构里面size最大的为union的size
解析C语言中的sizeof
一、sizeof的概c
sizeof是C语言的一U单目操作符Q如C语言的其他操作符++?-{。它q不是函数。sizeof操作W以字节形式l出了其操作数的存储大小。操作数可以是一个表辑ּ或括在括号内的类型名。操作数的存储大由操作数的cd军_。
二、sizeof的用方法
1、用于数据类型
sizeof使用形式QsizeofQtypeQ
数据cd必须用括h住。如sizeofQintQ。
2、用于变量
sizeof使用形式QsizeofQvar_nameQ或sizeof var_name
变量名可以不用括h住。如sizeof (var_name)Qsizeof var_name{都是正Ş式。带括号的用法更普遍Q大多数E序员采用这UŞ式。
注意Qsizeof操作W不能用于函数类型,不完全类型或位字Dc不完全cd指具有未知存储大的数据cdQ如未知存储大小的数l类型、未知内容的l构或联合类型、voidcd{。
如sizeof(max)若此时变量max定义为int max(),sizeof(char_v) 若此时char_v定义为char char_v [MAX]且MAX未知Qsizeof(void)都不是正Ş式。
三、sizeof的结果
sizeof操作W的l果cd是size_tQ它在头文g
中typedef为unsigned intcd。该cd保证能容U_现所建立的最大对象的字节大小。
1、若操作数具有类型char、unsigned char或signed charQ其l果{于1。
ANSI C正式规定字符cd?字节。
2、int、unsigned int 、short int、unsigned short 、long int 、unsigned long 、float、double、long doublecd的sizeof 在ANSI C中没有具体规定,大小依赖于实玎ͼ一般可能分别ؓ2????????0。
3、当操作数是指针Ӟsizeof依赖于编译器。例如Microsoft C/C++7.0中,nearcL针字节数?Qfar、hugecL针字节数?。一般Unix的指针字节数?。
4、当操作数具有数l类型时Q其l果是数l的d节数。
5、联合类型操作数的sizeof是其最大字节成员的字节数。结构类型操作数的sizeof是这U类型对象的d节数Q包括Q何垫补在内。
让我们看如下l构Q
struct {char b; double x;} a;
在某些机器上sizeofQaQ?12Q而一般sizeofQcharQ? sizeofQdoubleQ?9。
q是因ؓ~译器在考虑寚w问题Ӟ在结构中插入IZ以控制各成员对象的地址寚w。如doublecd的结构成员x要放在被4整除的地址。
6、如果操作数是函C的数lŞ参或函数cd的Ş参,sizeofl出其指针的大小。
四、sizeof与其他操作符的关pR
sizeof的优先?U,??{?U运符优先U高。它可以与其他操作符一L成表辑ּ。如i*sizeofQintQ;其中i为intcd变量。
五、sizeof的主要用途
1、sizeof操作W的一个主要用途是与存储分配和I/Opȝ那样的例E进行通信。例如:
void *mallocQsize_t sizeQ?
size_t fread(void * ptr,size_t size,size_t nmemb,FILE * stream)。
2、sizeof的另一个的主要用途是计算数组中元素的个数。例如:
void * memsetQvoid * s,int c,sizeof(s)Q。
六、徏议
׃操作数的字节数在实现时可能出现变化,在涉及到操作数字节大时用sizeof来代替常量计?/p>
=============================================================
本文主要包括二个部分Q第一部分重点介绍在VC中,怎么样采用sizeof来求l构的大,以及Ҏ出现的问题,q给决问题的ҎQ第二部分ȝ出VC中sizeof的主要用法?
1?sizeof应用在结构上的情?
L下面的结构:
struct MyStruct
{
double dda1;
char dda;
int type
};
对结构MyStruct采用sizeof会出C么结果呢Qsizeof(MyStruct)为多呢Q也怽会这hQ?
sizeof(MyStruct)=sizeof(double)+sizeof(char)+sizeof(int)=13
但是当在VC中测试上面结构的大小Ӟ你会发现sizeof(MyStruct)?6。你知道Z么在VC中会得出q样一个结果吗Q?
其实Q这是VC对变量存储的一个特D处理。ؓ了提高CPU的存储速度QVC对一些变量的起始地址做了"寚w"处理。在默认情况下,VC规定各成员变量存攄起始地址相对于结构的起始地址的偏U量必须变量的类型所占用的字节数的倍数。下面列出常用类型的寚w方式(vc6.0,32位系l??
cd
寚w方式Q变量存攄起始地址相对于结构的起始地址的偏U量Q?
Char
偏移量必Mؓsizeof(char)?的倍数
int
偏移量必Mؓsizeof(int)?的倍数
float
偏移量必Mؓsizeof(float)?的倍数
double
偏移量必Mؓsizeof(double)?的倍数
Short
偏移量必Mؓsizeof(short)?的倍数
各成员变量在存放的时候根据在l构中出现的序依次甌I间Q同时按照上面的寚w方式调整位置Q空~的字节VC会自动填充。同时VCZ保l构的大ؓl构的字节边界数Q即该结构中占用最大空间的cd所占用的字节数Q的倍数Q所以在为最后一个成员变量申L间后Q还会根据需要自动填充空~的字节?
下面用前面的例子来说明VC到底怎么h存放l构的?
struct MyStruct
{
double dda1;
char dda;
int type
}Q?
Z面的l构分配I间的时候,VCҎ成员变量出现的顺序和寚w方式Q先为第一个成员dda1分配I间Q其起始地址跟结构的起始地址相同Q刚好偏U量0刚好为sizeof(double)的倍数Q,该成员变量占用sizeof(double)=8个字节;接下来ؓW二个成员dda分配I间Q这时下一个可以分配的地址对于l构的v始地址的偏U量?Q是sizeof(char)的倍数Q所以把dda存放在偏U量?的地Ҏ_齐方式,该成员变量占用sizeof(char)=1个字节;接下来ؓW三个成员type分配I间Q这时下一个可以分配的地址对于l构的v始地址的偏U量?Q不是sizeof(int)=4的倍数Qؓ了满_齐方式对偏移量的U束问题QVC自动填充3个字节(q三个字节没有放什么东西)Q这时下一个可以分配的地址对于l构的v始地址的偏U量?2Q刚好是sizeof(int)=4的倍数Q所以把type存放在偏U量?2的地方,该成员变量占用sizeof(int)=4个字节;q时整个l构的成员变量已l都分配了空_ȝ占用的空间大ؓQ?+1+3+4=16Q刚好ؓl构的字节边界数Q即l构中占用最大空间的cd所占用的字节数sizeof(double)=8Q的倍数Q所以没有空~的字节需要填充。所以整个结构的大小为:sizeof(MyStruct)=8+1+3+4=16Q其中有3个字节是VC自动填充的,没有放Q何有意义的东ѝ?
下面再D个例子,交换一下上面的MyStruct的成员变量的位置Q它变成下面的情况Q?
struct MyStruct
{
char dda;
double dda1;
int type
}Q?
q个l构占用的空间ؓ多大呢?在VC6.0环境下,可以得到sizeof(MyStruc)?4。结合上面提到的分配I间的一些原则,分析下VC怎么样ؓ上面的结构分配空间的。(单说明)
struct MyStruct
{
char dda;//偏移量ؓ0Q满_齐方式,dda占用1个字节;
double dda1;//下一个可用的地址的偏U量?Q不是sizeof(double)=8
//的倍数Q需要补?个字节才能偏移量变?Q满_?
//方式Q,因此VC自动填充7个字节,dda1存放在偏U量?
//的地址上,它占?个字节?
int typeQ?/下一个可用的地址的偏U量?6Q是sizeof(int)=4的?
//敎ͼ满int的对齐方式,所以不需要VC自动填充Qtype?
//攑֜偏移量ؓ16的地址上,它占?个字节?
}Q?/所有成员变量都分配了空_I间ȝ大小?+7+8+4=20Q不是结?
//的节边界敎ͼ即结构中占用最大空间的cd所占用的字节数sizeof
//(double)=8Q的倍数Q所以需要填?个字节,以满结构的大小?
//sizeof(double)=8的倍数?
所以该l构ȝ大小为:sizeof(MyStruc)?+7+8+4+4=24。其中ȝ?+4=11个字节是VC自动填充的,没有放Q何有意义的东ѝ?
VC对结构的存储的特D处理确实提高CPU存储变量的速度Q但是有时候也带来了一些麻烦,我们也屏蔽掉变量默认的对齐方式,自己可以讑֮变量的对齐方式?
VC中提供了#pragma pack(n)来设定变量以n字节寚w方式。n字节寚w是说变量存攄起始地址的偏U量有两U情况:W一、如果n大于{于该变量所占用的字节数Q那么偏U量必须满默认的对齐方式,W二、如果n于该变量的cd所占用的字节数Q那么偏U量为n的倍数Q不用满默认的寚w方式。结构的d也有个U束条gQ分下面两种情况Q如果n大于所有成员变量类型所占用的字节数Q那么结构的d必Mؓ占用I间最大的变量占用的空间数的倍数Q?
否则必须为n的倍数。下面D例说明其用法?
#pragma pack(push) //保存寚w状?
#pragma pack(4)//讑֮?字节寚w
struct test
{
char m1;
double m4;
int m3;
};
#pragma pack(pop)//恢复寚w状?
以上l构的大ؓ16Q下面分析其存储情况Q首先ؓm1分配I间Q其偏移量ؓ0Q满x们自p定的寚w方式Q?字节寚wQ,m1占用1个字节。接着开始ؓm4分配I间Q这时其偏移量ؓ1Q需要补?个字节,q样使偏U量满为n=4的倍数Q因为sizeof(double)大于nQ?m4占用8个字节。接着为m3分配I间Q这时其偏移量ؓ12Q满ؓ4的倍数Qm3占用4个字节。这时已lؓ所有成员变量分配了I间Q共分配?6个字节,满为n的倍数。如果把上面?pragma pack(4)改ؓ#pragma pack(16)Q那么我们可以得到结构的大小?4。(误者自己分析)
2?sizeof用法ȝ
在VC中,sizeof有着许多的用法,而且很容易引起一些错误。下面根据sizeof后面的参数对sizeof的用法做个ȝ?
AQ?nbsp; 参数为数据类型或者ؓ一般变量。例如sizeof(int),sizeof(long){等。这U情况要注意的是不同pȝpȝ或者不同编译器得到的结果可能是不同的。例如intcd?6位系l中?个字节,?2位系l中?个字节?
BQ?nbsp; 参数为数l或指针。下面D例说?
int a[50]; //sizeof(a)=4*50=200; 求数l所占的I间大小
int *a=new int[50];// sizeof(a)=4; aZ个指针,sizeof(a)是求指针
//的大??2位系l中Q当然是?个字节?
CQ?nbsp; 参数为结构或cRSizeof应用在类和结构的处理情况是相同的。但有两炚w要注意,W一、结构或者类中的静态成员不对结构或者类的大生媄响,因ؓ静态变量的存储位置与结构或者类的实例地址无关?
W二、没有成员变量的l构或类的大ؓ1Q因为必M证结构或cȝ每一
个实例在内存中都有唯一的地址?
下面举例说明Q?
Class Test{int a;static double c};//sizeof(Test)=4.
Test *s;//sizeof(s)=4,sZ个指针?
Class test1{ };//sizeof(test1)=1;
DQ?nbsp; 参数为其他。下面D例说明?
int func(char s[5]);
{
cout<<sizeof(s);//q里输?Q本来sZ个数l,但由于做为函
//数的参数在传递的时候系l处理ؓ一个指针,所
//以sizeof(s)实际上ؓ求指针的大小?
return 1;
}
sizeof(func("1234"))=4//因ؓfunc的返回类型ؓintQ所以相当于
//求sizeof(int).
以上为sizeof的基本用法,在实际的使用中要注意分析VC的分配变量的分配{略Q这L话可以避免一些错误?
--------------------------------------------------------------------------
25.i最后等于多?
int i = 1;
int j = i++;
if((i>j++) && (i++ == j)) i+=j;
{?
i = 5
--------------------------------------------------------------------------
26.
unsigned short array[]={1,2,3,4,5,6,7};
int i = 3;
*(array + i) = ?
{?
4
--------------------------------------------------------------------------
27.
class A
{
virtual void func1()Q?br> void func2();
}
Class B: class A
{
void func1(){cout << "fun1 in class B" << endl;}
virtual void func2(){cout << "fun2 in class B" << endl;}
}
A, A中的func1和B中的func2都是虚函?
B, A中的func1和B中的func2都不是虚函数.
C, A中的func2是虚函数.QB中的func1不是虚函?
D, A中的func2不是虚函敎ͼB中的func1是虚函数.
{?
A
--------------------------------------------------------------------------
28.
数据库:抽出部门Q^均工资,要求按部门的字符串顺序排序,不能含有"human resource"部门Q?/p>
employeel构如下Qemployee_id, employee_name, depart_id,depart_name,wage
{?
select depart_name, avg(wage)
from employee
where depart_name <> 'human resource'
group by depart_name
order by depart_name
--------------------------------------------------------------------------
29.
l定如下SQL数据库:Test(num INT(4)) L一条SQL语句q回num的最|但不怋用统计功能,如MINQMAX{?/p>
{?
select top 1 num
from Test
order by num desc
--------------------------------------------------------------------------
30.
输出下面E序l果?
#include <iostream.h>
class A
{
public:
virtual void print(void)
{
cout<<"A::print()"<<endl;
}
};
class B:public A
{
public:
virtual void print(void)
{
cout<<"B::print()"<<endl;
};
};
class C:public B
{
public:
virtual void print(void)
{
cout<<"C::print()"<<endl;
}
};
void print(A a)
{
a.print();
}
void main(void)
{
A a, *pa,*pb,*pc;
B b;
C c;
pa=&a;
pb=&b;
pc=&c;
a.print();
b.print();
c.print();
pa->print();
pb->print();
pc->print();
print(a);
print(b);
print(c);
}
A:
A::print()
B::print()
C::print()
A::print()
B::print()
C::print()
A::print()
A::print()
A::print()
--------------------------------------------------------------------------
31.
试编写函数判断计机的字节存储顺序是开?little endian)q是降序(bigendian)
{?
bool IsBigendian()
{
unsigned short usData = 0x1122;
unsigned char *pucData = (unsigned char*)&usData;
return (*pucData == 0x22);
}
--------------------------------------------------------------------------
32.qCritical Section和Mutex的不同点
{?
对几U同步对象的ȝ
1.Critical Section
A.速度?br>B.不能用于不同q程
C.不能q行资源l计(每次只可以有一个线E对׃n资源q行存取)
2.Mutex
A.速度?br>B.可用于不同进E?br>C.不能q行资源l计
3.Semaphore
A.速度?br>B.可用于不同进E?br>C.可进行资源统?可以让一个或过一个线E对׃n资源q行存取)
4.Event
A.速度?br>B.可用于不同进E?br>C.可进行资源统?/p>
--------------------------------------------------------------------------
33.一个数据库中有两个?
一张表为CustomerQ含字段ID,Name;
一张表为OrderQ含字段ID,CustomerIDQ连向Customer中ID的外键),RevenueQ?br>写出求每个Customer的Revenued的SQL语句?/p>
create table customer
(
ID int primary key,Name char(10)
)
go
create table [order]
(
ID int primary key,CustomerID int foreign key references customer(id) , Revenue float
)
go
--查询
select Customer.ID, sum( isnull([Order].Revenue,0) )
from customer full join [order]
on( [order].customerid=customer.id )
group by customer.id
--------------------------------------------------------------------------
34.hZ列程序中的错误ƈ且修?br>void GetMemory(char *p){
p=(char *)malloc(100);
}
void Test(void){
char *str=NULL;
GetMemory=(str);
strcpy(str,"hello world");
printf(str);
}
A:错误--参数的值改变后Q不会传?br>GetMemoryq不能传递动态内存,Test函数中的 str一直都?NULL?br>strcpy(str, "hello world");ɽE序崩溃?/p>
修改如下:
char *GetMemory(){
char *p=(char *)malloc(100);
return p;
}
void Test(void){
char *str=NULL;
str=GetMemory(){
strcpy(str,"hello world");
printf(str);
}
Ҏ?void GetMemory2(char **p)变ؓ二指针.
void GetMemory2(char **p, int num)
{
*p = (char *)malloc(sizeof(char) * num);
}
--------------------------------------------------------------------------
35.E序攚w
class mml
{
private:
static unsigned int x;
public:
mml(){ x++; }
mml(static unsigned int &) {x++;}
~mml{x--;}
pulic:
virtual mon() {} = 0;
static unsigned int mmc(){return x;}
......
};
class nnl:public mml
{
private:
static unsigned int y;
public:
nnl(){ x++; }
nnl(static unsigned int &) {x++;}
~nnl{x--;}
public:
virtual mon() {};
static unsigned int nnc(){return y;}
......
};
代码片断:
mml* pp = new nnl;
..........
delete pp;
A:
基类的析构函数应该ؓ虚函?br>virtual ~mml{x--;}
--------------------------------------------------------------------------
36.101个硬?00真?假,真假区别在于重量。请用无砝码天^UCơ给出真币重q是假币重的l论?/p>
{?
101个先取出2?
33,33
W一ơ称,如果不相{?说明有一堆重或轻
那么把重的那堆拿下来,再放另外35个中?3
如果相等,说明假的?如果不相{?新放上去的还是重的话,说明假的?不可能新放上ȝ?
W一ơ称,如果相等的话Q这66个肯定都是真?从这66个中取出35个来,与剩下的没称q的35个比
下面׃用说?/p>
Ҏ?
W?题也可以拿A(50),B(50)比一下,一L话拿剩下的一个和真的比一下?br>如果不一P拿其中的一堆。比如A(50)再分成两?5比一下,一L话就?br>B(50)中,不一样就在A(50)中,l合W一ơ的l果q道了?/p>
--------------------------------------------------------------------------
37.static变量和static 函数各有什么特点?
{?
static变量Q在E序q行期内一直有效,如果定义在函数外Q则在编译单元内可见Q如果在函数内,在在定义的block内可见;
static函数Q在~译单元内可见;
--------------------------------------------------------------------------
38.用C 写一个输入的整数,倒着输出整数的函?要求用递归Ҏ ;
{?
void fun( int a )
{
printf( "%d", a%10 );
a /= 10;
if( a <=0 )return;
fun( a );
}
--------------------------------------------------------------------------
39.写出E序l果:
void Func(char str[100])
{
printf("%d\n", sizeof(str));
}
{?
4
分析:
指针长度
--------------------------------------------------------------------------
40.int id[sizeof(unsigned long)];
q个对吗Qؓ什??
{?
?br>q个 sizeof是编译时q算W,~译时就定?br>可以看成和机器有关的帔R?/p>
本文主要包括二个部分Q第一部分重点介绍在VC中,怎么样采用sizeof来求l构的大,以及Ҏ出现的问题,q给决问题的ҎQ第二部分ȝ出VC中sizeof的主要用法?
1?sizeof应用在结构上的情?
L下面的结构:
struct MyStruct
{
double dda1;
char dda;
int type
};
对结构MyStruct采用sizeof会出C么结果呢Qsizeof(MyStruct)为多呢Q也怽会这hQ?
sizeof(MyStruct)=sizeof(double)+sizeof(char)+sizeof(int)=13
但是当在VC中测试上面结构的大小Ӟ你会发现sizeof(MyStruct)?6。你知道Z么在VC中会得出q样一个结果吗Q?
其实Q这是VC对变量存储的一个特D处理。ؓ了提高CPU的存储速度QVC对一些变量的起始地址做了"寚w"处理。在默认情况下,VC规定各成员变量存攄起始地址相对于结构的起始地址的偏U量必须变量的类型所占用的字节数的倍数。下面列出常用类型的寚w方式(vc6.0,32位系l??
cd
寚w方式Q变量存攄起始地址相对于结构的起始地址的偏U量Q?
Char
偏移量必Mؓsizeof(char)?的倍数
int
偏移量必Mؓsizeof(int)?的倍数
float
偏移量必Mؓsizeof(float)?的倍数
double
偏移量必Mؓsizeof(double)?的倍数
Short
偏移量必Mؓsizeof(short)?的倍数
各成员变量在存放的时候根据在l构中出现的序依次甌I间Q同时按照上面的寚w方式调整位置Q空~的字节VC会自动填充。同时VCZ保l构的大ؓl构的字节边界数Q即该结构中占用最大空间的cd所占用的字节数Q的?/textarea>
Trackback: http://tb.blog.csdn.net/TrackBack.aspx?PostId=574158