微软Microsoft招聘笔试题及答案

合集下载

招聘笔试题及解答(某世界500强集团)2025年

招聘笔试题及解答(某世界500强集团)2025年

2025年招聘笔试题及解答(某世界500强集团)(答案在后面)一、单项选择题(本大题有10小题,每小题2分,共20分)1、一家世界500强集团在招聘时,通常会设置哪些类型的笔试题目?A. 专业知识测试B. 语言能力测试C. 思维逻辑测试D. 以上都是2、在同样类型的笔试题目中,思维逻辑测试一般会包含哪些类型的问题?A. 逻辑推理题B. 数学应用题C. 案例分析题D. 以上都是3、某世界500强集团在招聘工程师职位时,要求应聘者了解以下哪种集成开发环境(IDE)?A. Microsoft Visual StudioB. IBM Rational RoseC. Oracle Express EditionD. Apple Xcode4、以下哪个软件开发方法是按照功能模块划分开发过程,每个模块独立开发、测试,最终整合成一个完整的系统?A. 水晶球法B. 并行开发模型C.RAD(快速应用开发)方法D. V模型5、某公司计划在未来5年内将员工数量增加50%,为实现这一目标,每年平均需要增加多少员工?(假设当前员工数量为1000人)A. 100人B. 125人C. 150人D. 200人6、一家制造企业正在考虑引进一条新的生产线,该生产线预计将提高生产效率20%,同时增加固定成本200万元。

如果该生产线投入运营后,企业的总利润增加多少?(假设当前年利润为1000万元)A. 200万元B. 220万元C. 240万元D. 260万元7、在软件工程中,模块化设计的主要目的是什么?A、提高代码的可读性B、提高代码的执行效率C、提高代码的复用性和灵活性D、提高代码的可维护性8、软件开发生命周期中的测试阶段主要关注点是什么?A、代码的可读性B、代码的效率C、软件功能的正确性和性能D、软件的易用性9、某世界500强集团今年计划实现销售额增长15%,如果去年集团销售额为10亿元,则今年计划实现的销售额为多少亿元?A. 12亿元B. 11.5亿元C. 11.25亿元D. 10.5亿元 10、以下哪项是指员工在工作中遇到困难时,主动寻求解决办法并持续改进的能力?A. 团队协作能力B. 适应变化能力C. 持续改进能力D. 沟通能力二、多项选择题(本大题有10小题,每小题4分,共40分)1、以下哪些是某世界500强集团在招聘过程中可能考察的核心能力?()A、团队合作能力C、解决问题能力D、学习能力E、领导力2、以下关于某世界500强集团的企业文化的描述,正确的是哪些?()A、强调创新与变革B、注重团队合作与共享C、追求卓越与持续改进D、倡导多元化与包容性E、重视员工个人发展与成长3、以下关于云计算的描述,哪些是正确的?()A、云计算能够提供无处不在的网络接入服务。

行政助理招聘笔试题与参考答案(某世界500强集团)

行政助理招聘笔试题与参考答案(某世界500强集团)

招聘行政助理笔试题与参考答案(某世界500强集团)(答案在后面)一、单项选择题(本大题有10小题,每小题2分,共20分)1、关于行政助理的岗位职责,下列哪一项不属于其日常工作内容?A、文件管理B、接听电话C、财务审计D、会议记录2、在日常办公软件使用方面,对于行政助理而言,掌握以下哪种软件最为基础和重要?A、AutoCADB、PhotoshopC、WordD、Unity3、在Microsoft Office中,用于创建和编辑文档的主要软件是:A、OutlookB、PowerPointC、WordD、Excel4、下列哪种文件格式通常用于存储表格数据?A、.DOCXB、.PPTXC、.XLSXD、.TXT5、在办公自动化中,最常用的电子文档管理软件是:A、Microsoft WordB、Adobe AcrobatC、Google DocsD、Microsoft Excel6、以下哪项不属于行政助理的工作职责?A、日常文件管理B、协助会议安排C、客户服务热线接听D、办公设备维护7、办公用品的库存管理主要是为了确保什么?A、满足日常办公需求且不浪费B、确保有足够的库存以备不时之需C、将库存成本降到最低D、定期进行库存盘点8、在进行固定资产管理时,以下哪项步骤通常不被包括?A、资产的购置或租赁B、资产的报废处理C、设立固定资产管理部门D、定期进行市场销售预测9、在公司行政工作中,负责安排会议、预订会议室及会议室设备的职责归属于:A)财务部门B)人力资源部门C)行政部门D)销售部门 10、关于行政助理的工作职责,以下哪一项通常不包括在内?E)安排文件的打印与复印F)负责公司活动的票务安排G)执行人力资源事务的决策H)维护部门与公司内外部关系二、多项选择题(本大题有10小题,每小题4分,共40分)1、在日常办公中,以下哪些文件需要按照公司的档案管理规定进行归档保存?()A. 会议记录B. 邮件往来C. 个人日记D. 项目报告E. 仅为存储设备的初始化信息的文档2、关于公司内部沟通渠道,下列哪些方式是公司推荐使用的?()A. 内部邮件系统B. 微信群C. 纸质信件D. 企业内部通讯应用E. 电话会议3、关于办公用品采购与管理,下列说法正确的是()。

计算机等级考试二级MS Office高级应用与设计试题与参考答案

计算机等级考试二级MS Office高级应用与设计试题与参考答案

计算机等级考试二级MS Office高级应用与设计自测试题(答案在后面)一、单项选择题(本大题有20小题,每小题1分,共20分)1.以下关于Microsoft Word中段落格式化的描述,正确的是:A. 可以为文档中的每个段落设置不同的字体和字号B. 设置段落对齐方式会影响段落的缩进C. 调整段落间距只能通过增加或减少段前或段后的空白来实现D. 段落缩进只能通过拖动水平标尺上的缩进标记来完成2.在Excel中,关于数据透视表的说法正确的是:A. 数据透视表只用于数据的求和汇总操作B. 数据透视表中的字段无法移动位置C. 数据透视表是Excel的一种分析工具,能够方便地进行数据的筛选、分类、汇总等操作D. 创建数据透视表后,原始数据不能再被修改3.在Word文档中,若要插入图片作为背景,以下哪种操作是正确的?A. 插入图片后,使用“图片工具-格式”选项卡中的“裁剪”工具去除图片边缘的空白部分。

B. 插入图片后,直接双击图片以设置其大小和位置。

C. 插入图片后,右键点击图片并选择“设置图片格式”,然后在弹出的对话框中调整图片的大小和位置。

D. 插入图片后,使用“布局”选项卡中的“图片位置”工具将图片设置为背景。

4.在Excel工作表中,若要在一个单元格中输入公式,以下哪种操作是正确的?A. 在单元格中输入“=1+1”,然后按下回车键。

B. 在单元格中输入“=1+1”,然后按Enter键。

C. 在单元格中输入“=1+1”,然后按Ctrl键和Enter键。

D. 在单元格中输入“=1+1”,然后按Shift键和Enter键。

5、下列哪个不是Word中常用的排版命令?A. 字体B. 段落C. 对齐D. 分栏6、在Excel中,下列哪个函数可以返回一个数的绝对值?A. ABSB. ROUNDC. MAXD. MIN7、(二)以下哪个函数可以用来修复损坏的电子表格文档?A、Repair()B、Recover()C、Undo()D、FixSheet()8、(三)在使用PowerPoint制作幻灯片时,以下哪个快捷键可以快速添加一个空白幻灯片?A、Ctrl加MB、Ctrl加NC、Ctrl加LD、Ctrl加W9、以下哪种方式可以创建新的Word文档模板?A. 在打开全新文档的对话框中点击“模板”按钮B. 右键单击现有的Word文档,选择“另存为模板”C. 菜单栏“文件”—“新建”—“模板”D. 打开Word文档,点击“页面设置”—“模板” 10、在PowerPoint演示文稿中,想要添加一个背景音乐文件,可以使用以下哪个功能?A. “插入”—“音频”B. “视图”—“幻灯片放映”C. “动画”—“音频”D. “幻灯片”—“背景”11.在Word的页面中,若要对页面的边距、字体、行距等进行修改,应该使用哪一项操作?A. 页眉页脚B. 视图C. 段落D. 页面布局12.在Excel中,如果要在不改变公式引用的情况下,改变B列的数值,应该首先将公式所在单元格向右复制。

微软办公软件国际认证-Word+2010(五)

微软办公软件国际认证-Word+2010(五)

微软办公软件国际认证-Word 2010(五)(总分:140.00,做题时间:90分钟)一、(总题数:7,分数:140.00)1.将“文本域(窗体控件)”替换为“文本框(ActiveX控件)”。

打开练习文档(Word练习题组/w21.docx)。

(分数:20.00)__________________________________________________________________________________________ 正确答案:(01 选中文档中的“文本域(窗体控件)”,然后按[Delete]键删除该控件;02 单击“开发工具”选项卡;(若没有显示“开发工具”选项卡,可参考题目7的NOTE部分)03 单击“控件”组“旧式工具”下拉列表中的“文本框(ActiveX控件)”按钮。

完成后效果如下图所示。

)解析:2.将[标题]的“文档属性”添加至页脚。

打开练习文档(Word练习题组/w22.docx)(分数:20.00)__________________________________________________________________________________________ 正确答案:(01 在页脚位置处双击,打开页脚编辑区;02 单击“插入”选项卡;03 单击“文本”组“文档部件”下拉列表中的“文档属性”/“标题”;04 在正文空白区域双击,关闭页脚编辑区。

完成后效果如下图所示。

)解析:3.在“个人信息”一节中的所有字段旁,添加“文本型窗体域”。

打开练习文档(Word练习题组/w23.docx)。

(分数:20.00)__________________________________________________________________________________________ 正确答案:(01 单击文档中“个人信息”一节中“姓名”处;02 单击“开发工具”选项卡;03 单击“控件”组“旧式工具”下拉列表中的“文本域(窗体控件)”按钮;04 重复上述步骤,对“个人信息”一节中其他字段:“电话”“地址”“电子邮件地址”都添加“文本型窗体域”。

后期制作岗位招聘笔试题及解答2025年

后期制作岗位招聘笔试题及解答2025年

2025年招聘后期制作岗位笔试题及解答一、单项选择题(本大题有10小题,每小题2分,共20分)1、在视频编辑软件中,哪个功能用于调整素材的播放速度?A. 裁剪工具B. 旋转工具C. 时间重映射/速率伸缩D. 颜色校正答案:C. 时间重映射/速率伸缩解析:时间重映射或速率伸缩是视频编辑软件中用来改变片段播放速度的功能。

通过这个功能,用户可以创建慢动作或快动作效果。

选项A裁剪工具主要用于修剪视频的开头或结尾;选项B旋转工具用来旋转视频画面;选项D颜色校正则是用来调整视频的颜色平衡等视觉属性。

因此,正确答案是C。

2、下列哪种格式最常用于网络视频传输,并且具有良好的压缩比和质量?A. AVIB. WMVC. MOVD. MP4答案:D. MP4解析:MP4(MPEG-4 Part 14)是一种广泛使用的多媒体容器格式,特别适合于在线视频流媒体和下载。

它能够提供较高的压缩效率同时保持较好的音视频质量,因此非常适合网络视频传输。

相比之下,AVI(选项A)虽然兼容性好但文件较大,WMV(选项B)是微软专有的格式,MOV(选项C)是苹果公司开发的格式,这两种格式在网络上的通用性和压缩效率通常不如MP4。

所以,正确答案是D。

3、以下哪项不是后期制作中常用的软件?()A. Adobe Premiere ProB. Apple Final Cut ProC. Microsoft PowerPointD. Avid Media Composer答案:C解析:Microsoft PowerPoint是一款演示文稿软件,主要用于制作和展示演示文稿,不是后期制作中常用的视频编辑软件。

而Adobe Premiere Pro、Apple Final Cut Pro和Avid Media Composer都是专业的视频编辑软件,广泛应用于后期制作领域。

4、在视频剪辑中,以下哪种技巧用于增加画面的动态效果?()A. 快节奏剪辑B. 慢动作C. 黑白转换D. 色彩校正答案:A解析:快节奏剪辑是一种常见的视频剪辑技巧,通过快速切换画面来增加画面的动态效果,使视频节奏更加紧凑。

.NET开发工程师招聘笔试题与参考答案2024年

.NET开发工程师招聘笔试题与参考答案2024年

2024年招聘.NET开发工程师笔试题与参考答案(答案在后面)一、单项选择题(本大题有10小题,每小题2分,共20分)1、以下哪个选项不是.NET Framework的组成部分?A、System.DataB、System.DrawingC、System.Windows.FormsD、.Mail2、以下哪个属性可以用来获取一个字符串对象的长度?A、LengthB、SizeC、CountD、Capacity3、在C中,关于继承与多态,下列说法错误的是哪一个选项?A. 在C中,类可以实现多个接口,从而获得多重特性。

B. 类声明为 sealed 后,该类不能被继承。

C. C中的类默认是 public 的,可以被其他任何类继承。

D. 多态可以通过方法重载(overload)或者方法覆盖(override)来实现。

4、关于 Core中的依赖注入(Dependency Injection,DI),下列描述正确的是哪一个选项?A. DI容器是 Core中唯一支持的服务定位器模式实现。

B. DI服务注册应在ConfigureServices方法中完成。

C. 依赖注入要求所有的类都必须通过构造函数来注入依赖项。

D. 使用依赖注入时,服务生命周期可以配置为Singleton、Transient和Scoped 三种模式。

5、以下哪个选项是.NET Framework的核心组件?A. Windows FormsB. C. .NET Compact FrameworkD. 6、在C中,以下哪个关键字用于声明一个静态成员?A. staticB. readonlyC. constD. volatile7、以下哪个不是.NET Framework的核心组件?A. B. C. Windows FormsD. XML8、在.NET中,以下哪个类用于处理文件系统的操作?A. FileStreamB. StreamWriterC. DirectoryInfoD. Directory9、以下哪个不是.NET框架中用于处理XML的类库?A. System.XmlB. System.Data.XmlC. System.Windows.Forms.XmlD. System.Web.Services.Xml 10、在.NET中,以下哪个方法可以用来创建一个空的ArrayList实例?A. ArrayList()B. New ArrayList()C. ArrayList.Create()D. ArrayList.Instance()二、多项选择题(本大题有10小题,每小题4分,共40分)1、以下哪些是.NET平台的核心组件?()A、B、C、Windows FormsD、WCFE、LINQ2、在.NET中,以下哪些是常用的数据访问技术?()A、ADOB、C、Entity FrameworkD、DapperE、LINQ to SQL3、以下哪些技术是.NET Framework 4.0引入或改进的?A. MVC 3B. Entity Framework 4.0C. WCF 4.0D. LINQ to SQL4、以下哪些是.NET中常用的数据访问技术?A. B. LINQC. NHibernateD. Entity Framework5、以下哪些技术或框架是.NET开发工程师在项目开发中常用的?A. MVCB. Entity FrameworkC. WCFD. AngularJSE. LINQ6、以下关于.NET平台特性的描述,正确的是:A. .NET支持多种编程语言,如C、V等。

计算机等级考试一级计算机基础及MS Office应用试卷及解答参考(2024年)

计算机等级考试一级计算机基础及MS Office应用试卷及解答参考(2024年)

2024年计算机等级考试一级计算机基础及MS Office应用复习试卷(答案在后面)一、单项选择题(本大题有20小题,每小题1分,共20分)1、在Windows操作系统中,若想快速查找某个文件或文件夹,应该使用哪种方法?A. 鼠标右击文件或文件夹B. 打开“开始”菜单并输入关键词进行搜索C. 打开控制面板进行查找D. 打开任务管理器进行搜索3、关于计算机网络,下列说法错误的是:A. 计算机网络可以实现不同地理位置的计算机之间的资源共享B. 光纤是计算机网络传输介质的一种C. 无线网络和有线网络在数据传输速度上没有明显差异D. 局域网和广域网是计算机网络的两种基本类型4、在Excel中,关于数据排序,以下说法正确的是:A. 只能按单一列进行排序B. 排序规则只能是升序,不能降序C. 可以根据自定义的规则排序D. 在排序时,只能使用鼠标手动操作,不能自动完成5.在Word中,以下哪种操作可以用来在文档中插入图片?A. 插入表格B. 插入图片C. 插入图表D. 插入日期6.在Excel中,以下哪种函数是用来计算平均值的?A. SUMB. AVERAGEC. COUNTD. MAX7、计算机内存中存储的数据突然全部消失的情况最有可能发生在什么时候?A. 电脑关机后重启B. CPU温度过高C. 硬盘损坏D. 断电时程序未保存8、关于Microsoft Word的表述,下列哪项是不正确的?A. 可以插入和编辑图形B. 只能以文本形式进行编辑文档C. 可以插入和编辑表格D. 可以自动检查拼写和语法错误9.在Word中,以下哪种操作可以用来在文档中插入分页符?A. 插入表格B. 插入图片C. 插入分节符D. 插入页码 10. 在Excel中,以下哪种函数可以用来计算一列数据的平均值?A. SUMB. AVERAGEC. COUNTD. MAX11.计算机中存储信息的最小单位是______ 。

A. 字节B. 位C. 字D. 单元12.在计算机网络中,IP地址用于标识______ 。

微软面试问题及答案

微软面试问题及答案

微软面试问题及答案著名的微软题:一到十楼每层电梯口都放颗大小不一的钻石。

你乘电梯从一到十楼,每层电梯门会开一次,并且你只能拿一次钻石。

请问你如何能拿到最大的一颗?如果你没有做个这个题目的话,也可以用几分钟思考一下,别着急往下看。

1、随便拿一颗,反正在我心里是最大的就好。

其他的管他呢。

(好自我的答复)2、电梯先走到10层,之前一次都不拿,然后从10层出来,记住最大的那颗,走下去,去拿就可以了。

(我不能说这个答复错了,也算一种方法吧,不过......)3、从第一层就开始拿,每到一层就比拟一下,如果比手里的小就过,如果大就用手里的这颗替换掉一直到第十层。

(这个完全忽略了只能拿一次的那个条件)4、就拿第一颗,我认为它是最大的,它就是,不再去看其他的。

节约时间,防止被其他人拿走所有,我一颗都没有。

(用这种思路去炒股多好)5、进什么微软?为什么不从一楼走上去,把所有的都拿走?(能说这是强盗逻辑吗?)6、找9个人一起,就算是10个面试者一起合作,每人看一个楼层,联系比照出一个最大的。

(这个答案很有团队精神)7、前三层一律不拿,心理大致测算平均大小和方差;第四到第六层里面,假设有非常显著大的就拿,如果没有,继续大致测算平均大小和方差;第7到第10层,根据前两组平均大小和方差估算一个可能最大水平,拿近似此水平的钻石。

(这个好赞,好缜密的逻辑和算法)8、叫上九个兄弟一人拿一颗不就完了吗?(兄弟多就是好)9、答案就是第十楼的,因为微软要发布wndows 10了,当然在第十楼。

(这个有想象力)10、说说我的想法,把前九层的钻石碾碎,最后第十层最大。

(这个网友的答案还有其他网友评论:请问要用什么每天携带的物品才能把钻石碾碎呢?)各种答案好多!看完大家所有的评论,我需要静静!其实答案是:前四层不动手,从第5层开始只要发现有大于前四层的钻石就拿。

这就是著名的【37%法那么】拒人问题数学模型。

这题没有百分百拿到最大钻石的方法,主要考察面试者的思维逻辑。

  1. 1、下载文档前请自行甄别文档内容的完整性,平台不提供额外的编辑、内容补充、找答案等附加服务。
  2. 2、"仅部分预览"的文档,不可在线预览部分如存在完整性等问题,可反馈申请退款(可完整预览的文档不适用该条件!)。
  3. 3、如文档侵犯您的权益,请联系客服反馈,我们会尽快为您处理(人工客服工作时间:9:00-18:30)。

微软Microsoft招聘笔试题及答案1.求下面函数的返回值int func(x){int countx = 0;while(x){countx ++;x = x&(x-1);}return countx;}假定x = 9999。

答案:8思路:将x转化为2进制,看含有的1的个数。

2. 什么是“引用〞?申明和使用“引用〞要注意哪些问题?答:引用就是某个目标变量的“别名〞(alias),对应用的操作与对变量直接操作效果完全一样。

申明一个引用的时候,切记要对其进展初始化。

引用声明完毕后,相当于目标变量名有两个名称,即该目标原名称和引用名,不能再把该引用名作为其他变量名的别名。

声明一个引用,不是新定义了一个变量,它只表示该引用名是目标变量名的一个别名,它本身不是一种数据类型,因此引用本身不占存储单元,系统也不给引用分配存储单元。

不能建立数组的引用。

3. 将“引用〞作为函数参数有哪些特点?〔1〕传递引用给函数与传递指针的效果是一样的。

这时,被调函数的形参就成为原来主调函数中的实参变量或对象的一个别名来使用,所以在被调函数中对形参变量的操作就是对其相应的目标对象〔在主调函数中〕的操作。

〔2〕使用引用传递函数的参数,在内存中并没有产生实参的副本,它是直接对实参操作;而使用一般变量传递函数的参数,当发生函数调用时,需要给形参分配存储单元,形参变量是实参变量的副本;如果传递的是对象,还将调用拷贝构造函数。

因此,当参数传递的数据较大时,用引用比用一般变量传递参数的效率和所占空间都好。

〔3〕使用指针作为函数的参数虽然也能到达与使用引用的效果,但是,在被调函数中同样要给形参分配存储单元,且需要重复使用"*指针变量名"的形式进展运算,这很容易产生错误且程序的阅读性较差;另一方面,在主调函数的调用点处,必须用变量的地址作为实参。

而引用更容易使用,更清晰。

4. 在什么时候需要使用“常引用〞?如果既要利用引用提高程序的效率,又要保护传递给函数的数据不在函数中被改变,就应使用常引用。

常引用声明方式:const 类型标识符&引用名=目标变量名;例1int a ;const int &ra=a;ra=1; //错误a=1; //正确例2string foo( );void bar(string & s);那么下面的表达式将是非法的:bar(foo( ));bar("hello world");原因在于foo( )和"hello world"串都会产生一个临时对象,而在C++中,这些临时对象都是const类型的。

因此上面的表达式就是试图将一个const类型的对象转换为非const类型,这是非法的。

引用型参数应该在能被定义为const的情况下,尽量定义为const 。

5. 将“引用〞作为函数返回值类型的格式、好处和需要遵守的规那么?格式:类型标识符&函数名〔形参列表及类型说明〕{ //函数体}好处:在内存中不产生被返回值的副本;〔注意:正是因为这点原因,所以返回一个局部变量的引用是不可取的。

因为随着该局部变量生存期的完毕,相应的引用也会失效,产生runtime error!考前须知:〔1〕不能返回局部变量的引用。

这条可以参照Effective C++[1]的Item 31。

主要原因是局部变量会在函数返回后被销毁,因此被返回的引用就成为了"无所指"的引用,程序会进入未知状态。

〔2〕不能返回函数内部new分配的内存的引用。

这条可以参照Effective C++[1]的Item 31。

虽然不存在局部变量的被动销毁问题,可对于这种情况〔返回函数内部new分配内存的引用〕,又面临其它为难局面。

例如,被函数返回的引用只是作为一个临时变量出现,而没有被赋予一个实际的变量,那么这个引用所指向的空间〔由new分配〕就无法释放,造成memory leak。

〔3〕可以返回类成员的引用,但最好是const。

这条原那么可以参照Effective C++[1]的Item 30。

主要原因是当对象的属性是与某种业务规那么〔business rule〕相关联的时候,其赋值常常与某些其它属性或者对象的状态有关,因此有必要将赋值操作封装在一个业务规那么当中。

如果其它对象可以获得该属性的非常量引用〔或指针〕,那么对该属性的单纯赋值就会破坏业务规那么的完整性。

〔4〕流操作符重载返回值申明为“引用〞的作用:流操作符<<和>>,这两个操作符常常希望被连续使用,例如:cout << "hello" << endl;因此这两个操作符的返回值应该是一个仍然支持这两个操作符的流引用。

可选的其它方案包括:返回一个流对象和返回一个流对象指针。

但是对于返回一个流对象,程序必须重新〔拷贝〕构造一个新的流对象,也就是说,连续的两个<<操作符实际上是针对不同对象的!这无法让人承受。

对于返回一个流指针那么不能连续使用<<操作符。

因此,返回一个流对象引用是惟一选择。

这个唯一选择很关键,它说明了引用的重要性以及无可替代性,也许这就是C++语言中引入引用这个概念的原因吧。

赋值操作符=。

这个操作符象流操作符一样,是可以连续使用的,例如:x = j = 10;或者(x=10)=100;赋值操作符的返回值必须是一个左值,以便可以被继续赋值。

因此引用成了这个操作符的惟一返回值选择。

例3#i nclude <iostream.h>int &put(int n);int vals[10];int error=-1;void main(){put(0)=10; //以put(0)函数值作为左值,等价于vals[0]=10;put(9)=20; //以put(9)函数值作为左值,等价于vals[9]=20;cout<<vals[0];cout<<vals[9];}int &put(int n){if (n>=0 && n<=9 ) return vals[n];else { cout<<"subscript error"; return error; }}〔5〕在另外的一些操作符中,却千万不能返回引用:+-*/ 四那么运算符。

它们不能返回引用,Effective C++[1]的Item23详细的讨论了这个问题。

主要原因是这四个操作符没有side effect,因此,它们必须构造一个对象作为返回值,可选的方案包括:返回一个对象、返回一个局部变量的引用,返回一个new分配的对象的引用、返回一个静态对象引用。

根据前面提到的引用作为返回值的三个规那么,第2、3两个方案都被否决了。

静态对象的引用又因为((a+b) == (c+d))会永远为true而导致错误。

所以可选的只剩下返回一个对象了。

6. “引用〞与多态的关系?引用是除指针外另一个可以产生多态效果的手段。

这意味着,一个基类的引用可以指向它的派生类实例。

例4Class A; Class B : Class A{...}; B b; A& ref = b;7. “引用〞与指针的区别是什么?指针通过某个指针变量指向一个对象后,对它所指向的变量间接操作。

程序中使用指针,程序的可读性差;而引用本身就是目标变量的别名,对引用的操作就是对目标变量的操作。

此外,就是上面提到的对函数传ref和pointer的区别。

8. 什么时候需要“引用〞?流操作符<<和>>、赋值操作符=的返回值、拷贝构造函数的参数、赋值操作符=的参数、其它情况都推荐使用引用。

以上2-8 参考: :///wfwd/archive/2006/05/30/763551.aspx9. 构造与联合有和区别?1. 构造和联合都是由多个不同的数据类型成员组成, 但在任何同一时刻, 联合中只存放了一个被选中的成员〔所有成员共用一块地址空间〕, 而构造的所有成员都存在〔不同成员的存放地址不同〕。

2. 对于联合的不同成员赋值, 将会对其它成员重写, 原来成员的值就不存在了, 而对于构造的不同成员赋值是互不影响的。

10. 下面关于“联合〞的题目的输出?a)#i nclude <stdio.h>union{int i;char x[2];}a;void main(){a.x[0] = 10;a.x[1] = 1;printf("%d",a.i);}答案:266 (低位低地址,高位高地址,内存占用情况是Ox010A〕b)main(){union{ /*定义一个联合*/int i;struct{ /*在联合中定义一个构造*/char first;char second;}half;}number;number.i=0x4241; /*联合成员赋值*/printf("%c%c\n", number.half.first, mumber.half.second);number.half.first='a'; /*联合中构造成员赋值*/number.half.second='b';printf("%x\n", number.i);getch();}答案:AB (0x41对应'A',是低位;Ox42对应'B',是高位〕6261 (number.i和number.half共用一块地址空间〕11. strcpy的函数原型:char *strcpy(char *strDest, const char *strSrc)其中strDest 是目的字符串,strSrc 是源字符串。

不调用C++/C 的字符串库函数,请编写函数strcpy。

答案:char *strcpy(char *strDest, const char *strSrc){if ( strDest == NULL || strSrc == NULL)return NULL ;if ( strDest == strSrc)return strDest ;char *tempptr = strDest ;while( (*strDest++ = *strSrc++) != ‘\0’);return tempptr ;}12. String类定义如下:class String{public:String(const char *str = NULL); // 通用构造函数String(const String &another); // 拷贝构造函数~ String(); // 析构函数String & operater =(const String &rhs); // 赋值函数private:char *m_data; // 用于保存字符串};尝试写出类的成员函数实现。

相关文档
最新文档