江苏省高校计算机等级考试二级2013春.doc_第1页
江苏省高校计算机等级考试二级2013春.doc_第2页
江苏省高校计算机等级考试二级2013春.doc_第3页
江苏省高校计算机等级考试二级2013春.doc_第4页
江苏省高校计算机等级考试二级2013春.doc_第5页
已阅读5页,还剩7页未读 继续免费阅读

下载本文档

版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领

文档简介

2013年3月16日江苏省高校C语言二级考试笔试试卷_答案及剖析【2010年江苏省高校计算机考试试卷阅卷评分提醒】经常接到关于江苏省计算机等级考试上机的咨询问题,经过整理,原来是市面上有一些出版社出版的江苏二级上机图书在误导考生(带有上机评分软件的都有这个问题),上机与江苏省计算机真实考试评分严重不符合,它的评分是按照全国计算机的评分标准来处理的,导致很多考生纷纷做错题目!问题分别是:二级VFP的查询试题是通过查询设计器生成出来的代码,而不是直接写出来的,比对通过查询设计器生成的代码是否与标准答案一致(关键拿分点),然后运行一下,看一下查询结果是否与题目要求的符合,比如生成了表文件,那么考生文件夹中就有表文件,。二级vb,c,c+,java,fortran的评分为按步骤给分,即做多少给多少分,机器评分与教师评分相结合,而不是全部做对了才给分!摘自网【本试卷命题欠妥处】基础知识第6题:命题不严谨,没有标明SATA版本(实际分2.0和3.0两个)。若按理论值来评价讲,选B是正确的,但按网上上公布的实测数据,应选D。C语言程序设计填空第1题:命题不不严谨,应改为“已有声明“char c=255;”,执行语句“c+;”后变量c以数值形式输出的值是_(1)_” 。【网上答案错误处】C语言程序设计填空第11题第14个填空:输出语句是,printf(%dn%dn,p,q);所以正确答案是47,不是47 17【试卷点评】C语言程序设计的十道【选择21-30】题、五道填空题【填空1-5】和【阅读填空6-18】共28分比往届的命题难度大幅下降。最后的完善程序12分,难度仍维持原状。本期考试难度有所下降,但对于非计算机专业大学生,完善程序中链表难度仍未降低,比较遗憾。尤其是全国计算机二级C采用无纸化形式考试,采用40道选择题,无填空题,而且采用套题考试。与此比较,江苏省高校计算机二级考试命题,应综合考虑之一因素,否则考生大量流向全国考试,失去了江苏省考试存在的必要。【对江苏省二级C试卷命题建议】为发挥江苏省高校计算机考试的作用与效果,建议完善程序的12分,应结合教科书命题为宜。【评者简介】苏州科技学院天平学院老师张柏雄()。QQ:1035986156网站发布的2013年春江苏省高校计算机二级C考试参考答案一、选择题(1)B (2)A (3)C (4)A (5)D (6)B (7)B (8)C (9)C (10)D(11)A (12)A (13)B (14)B (15)D (16)D (17)B (18)C (19)C (20)A21.B 22.C 23.B 24.D 25.C 26.A 27.D 28.A 29.B 30.D二、填空题(1) 0 (2) 0x23 (3) x0&xnext (29) front-next (30) q-next点评者答案:一、计算机基础知识(1)B (2)A (3)C (4)A (5)D (6)D (7)B (8)C (9)C (10)D(11)A (12)A (13)B (14)B (15)D (16)D (17)B (18)C (19)C (20)A二、C语言程序设计选择21.A 22.D 23.C 24.B 25.C 26.A 27.C 28.B 29.D 30.C填空(1) 0 (2) 0x23 (3) x0&xnext (29) fromt-next (30) q-next第一部份 计算机基础知识一、选择题(用答题卡答题,答案依次填在1-20题号内)1、下列有关信息、信息技术、信息产业与信息化的叙述中,错误的是_(1)_。A 信息是人们认识世界、改造世界的一种基本资源,没有信息则任何事物都没有意义B. 雷达、卫星遥感等感测与识别技术不属于现代信息技术C. 进入21世纪以来,信息产业已经成为全球第一大产业D. 目前我国正处于工业化的中期阶段,因此必须走适合我国国情的信息化道路,既要充分发挥工业化对信息化的基础和推动作用,又要使信息化成为带动工业仳升级的强大动力 第1题注释:选项B是错误的根据是:南大“大学计算机信息技术教程”第5版修订本P24:“信息产业硬件业、软件业和服务业、通讯设备制造业及通讯服务业四部份组成”。雷达、卫星遥感技术属于信息产业第四部份。D选项是正确的在南大“大学计算机信息技术教程”第5版修订本P4关于“我国工业化现状”阐述:。2、下列有关数字技术和微电子技术的叙述中,错误的是_(2)_。A. 数字技术处理对象是“比特”,一个触发器可以存储2个比特B. 在数据通信时,远距离传输或者无线传输时需要用比特对载波进行调制C. 现代集成电路使用的半导体材料主要是硅D. 我国第2代居民身份证中使用了非接触式IC芯片第2题注释:选项A错误的根据是:触发器有两个稳定的输出状态,可用作记忆元件,能储存一个二进制位。3、对二进制数01与01分别进行算术加和逻辑加,其结果的二进制形式分别是_(3)_。A. 01、10 B. 01、01 C. 10、01 D、10、10第3题注释:选项B是正确的根据:南大“大学计算机信息技术教程”第5版修订本P 16阐述:01、01两数算术加为10;两数的逻辑加或者逻辑或运算均为01。4、下列有关PC机CPU的叙述中,错误的是_(4)_。 A. 目前的PC机芯片主频越来越高,主流CPU芯片的主频已达8GHz以上B. AMD公司也是重要的PC机CPU生产厂商,其CPU芯片与Intel保持指令系统兼容 C. 日前Intel公司生Core i7是一种高端CPU芯片,它有4个或6个内核 D. 为了提高CPU性能,日前主流CPU芯片都采用了流水线处理技术和超线程技术第4题注释:选项A错误的根据是,2013年Intel公司发布Intl高端处理器产品为Intel Quad-Core, 3.5 GHz I7-3770K (BX80667i73770K)。采用64位、四核技术,主频为3.5GHz。5、下列关于台式PC机芯片组的叙述中,错误的是_(5)_。A. 芯片组是主板上最为重要的部件之一,存储器控制、I/O控制等功能主要是由芯片组实现B. 芯片组与CPU同步发展, 有什么样功能和速度的CPU,就需要使用什么样的芯片组 C. 芯片组决定了主板上能安装的内存最大容量及可使用的内存条类型 D. 同CPU一样,用户可以很方便、很简单地更换主板上的芯片组第5题注释:选项D错误的根据是,南大“大学计算机信息技术教程”第5版修订本P 48-49阐述,芯片组是由南桥、北桥组成,是主板组成部分,主板型号就是芯片组型号。一般用户无法任意更换芯片组。6、下列四种I/O总线(接口)标准中,数据传输速率最高的是_(6)_。A. PS/2B. USB 3.0C. IEEE-1394D. SATA第6题注释:选项D是实际数据传输速率最高的根据是,南大“大学计算机信息技术教程”第5版修订本P55表2-2 PC机常用I/O接口,SATA速率为150-300MB/s,网上报道实测:硬盘标准SATA3.0接口传输时可高达314MB/s。要使用SATA3.0设备,除了支持SATA3.0的硬盘之外,还要数据线和主板也支持。现在已经有蛮多厂家都推出了SATA3.0主板了。网上报道:从理论上来说,USB 3.0的传输速率为4.8Gb/s,就是600MB/s。实际上移动设备由于种种限制达不到这个理论值,采用传统机械硬盘系统的移动硬盘,目前速度各不相同,而网上介绍的是2.5吋单碟500GB 7200转移动硬盘的速度,实测速度在100MB/s110MB/s持续读写左右的居多,如果是5400转产品,要偏低一些,一般在80MB/s90MB/s。7、下列关于常用I/O设备的叙述中,错误的是_(7)_。A. 目前平板电脑、智能手机的触摸屏大多为“多点触摸屏”,可以同时感知屏幕上的多个触控点B. 扫描仪可以分为手持式、平板式和滚筒式等类型,目前普通家用/办公用扫描仪大多为滚筒式C. 目前一些型号数码相机已具备有拍摄视频和进行录音的功能D. 为了降低成本,目前许多PC机采用集成显卡,其显示控制被集成在芯片组中第7题注释:选项B错误的根据是,南大“大学计算机信息技术教程”第5版修订本P62,平板式扫描仪使用在普通家用/办公自动化领域;滚筒式和胶片扫描仪使用在专业印刷排版领域。8、下列关于PC机外存储器的叙述中,错误的是_(8)_。A. 目前PC机采用的硬盘,其盘片的直径通常为3.5英寸、2.5英寸或1.8英寸B. U盘和存储卡都是采用闪烁存储器制作的,目前其容量大多为几GB至几十GBC. 目前固态硬盘的存储容量大多为数百GB,但其读写速度远不如传统硬盘(硬磁盘)D. 蓝光光盘是目前最先进的大容量光盘,单层盘片的存储容量可达25GB第8题注释:选项C错误的根据是,南大“大学计算机信息技术教程”第5版修订本P74第15行,“固态硬盘的读写速度也超过了传统硬盘,而且还有发展潜力”。选项A是正确的,可参阅南大“大学计算机信息技术教程”第5版修订本P71。选项D是正确的,可参阅南大“大学计算机信息技术教程”第5版修订本P77。9、下列关于软件的叙述中,正确的是_(9)_。A. BIOS是是固化在主板ROM芯片中的程序,它既不属于系统软件,也不属于应用软件B. Microsoft Access等数据库管理系统属于应用软件C. 大多数自由软件为免费软件,但免费软件不全是自由软件D. 所有商品软件均保证百分之百正确,软件厂商对软件使用的正确性、精确性、可靠性做出承诺第9题注释:选项A错误的根据是,南大“大学计算机信息技术教程(第5版修订本)”P109阐述:按照软件权益处置方式,可分为商品软件、共享软件和自由软件。商品软件是用户需要付费才能得到其使用权,它除了受版权保护外,还受到软件许可证(license)的保护。共享软件是一种买前免费使用试用的、具有版权的软件。自由软件是源代码公开的、允许用户共享、随意复制、修改源代码的一种软件,例如TCP/IP、Apache Web和Linux等。此外还有一种纯免费软件,其源代码不一定公开,例如:Adobe Reader、Flash Player和360t杀毒软件等。10、下列有关Windows操作系统功能的叙述中,错误的是_(10)_。A. 对于多任务处理,系统一般采用按时间片轮转的策略进行处理调度B. 系统采用了虚拟存储技术进行存储管理,其页面调度算法为“最近最少使用(LRU)”算法C. 系统支持了多种文件系统(如FAT32、NTFS、CDFS)以管理不同的外存储器D. 系统支持任何I/O设备的“即插即用”和“热插拔”第10题注释:选项D错误的根据是,南大“大学计算机信息技术教程(第5版修订本)”P57论述,I/O设备中,只有USB接口支持“即插即用”和“热插拔”。11、下列关于程序设计语言的叙述中,错误的是_(11)_。A. 虽机器语言不易记忆、机器语言程序难以阅读和理解,但目前还是有很多人使用其编写程序B. 汇编程序与计算机的指令系统密切相关,不同类型的计算机,其汇编语言通常不同C. VBScript语言是VB子集,用其编写的程序可以嵌入在HTML文档中以扩充网页的功能D. Java语言是一种适用于网络环境的程序设计语言,目前许多手机软件就是用Java编写第11题注释:选项A错误的根据是,南大“大学计算机信息技术教程(第5版修订本)”P125论述,机器语言不易记忆和理解,也难于修改和维护,所以现在不用机器语言编写程序了。选项D正确是根据南大“大学计算机信息技术教程(第5版修订本)”P127阐述,很多手机中的软件是用Java编写的。另据网上报道,到2013年,全世界已经有大约2亿部Java手机在使用,除中国大陆外共有53个移动运行商正式推出了基于Java技术的无线数据增值服务。中国移动通信集团已经建立了无线Java增值服务体系,并推出了“百宝箱”等服务品牌。12、下列关于通信技术的叙述中,错误的是_(12)_。A. 调制与解调技术主要用于模拟通信,在数字通信中不需要使用调制与解调技术B. 使用多路复用技术的主要目的是提高传输线路的利用率,降低通信成本C. 在数据通信中采用分组交换技术,可以动态分配信道资源,提高传输的效率与质量D. 数据通信网络大多采用分组交换技术,但不同类型的网络的数据包格式通常不同第12题注释:选项A错误的根据是,南大“大学计算机信息技术教程(第5版修订本)”P155阐述,无论是有线通信还是无线通信,通信距离稍远就需要采用调制与解调技术,例如光纤传输,就需要用数字信号去驱动一个光源发光,并对发出的光信号进行调制。(图4-10)13、下列是我国第2代和第3代移动通信采用的一些技术标准,其中我国自主研发的是_(13)_。A. GSMB. TD-SCDMAC. CDMA2000D. WCDMA第13题注释:选B是我国自主研发的的根据是,根据南大“大学计算机信息技术教程(第5版修订本)”P153,我国的3G通信目前有三种标准:中国移动采用的是我国自主研发的TD-SCDMA技术;中国电信采用的是CDMA2000技术;中国联通采用的是WCDMA技术。14、下列因特网接入技术的叙述中,理论上数据传输速率最高的是_(14)_。A. ADSL接入B. 无线局域网(WLAN)接入C. GPRS移动电话网接入D. 3G移动电话网接入第14题注释:选项B是理论上数据传输速率最高的根据是,根据南大“大学计算机信息技术教程(第5版修订本)”P186表4-2所列,ADSL最大下载速率为8Mbps;WLAN为100Mbps;GPRS为114kbps;3G移动电话网为几百kbps。15、Internet使用TCP/IP协议实现了全球范围的计算机网络的互连,连接在Internet上每一台主机都有一个IP地址,目前使用的是IPv4标准(32位地址),下一代互联网将采用IPv6标准,其IP地址为_(15)_。A. 48位 B. 64位 C. 96位 D. 128位第15题注释:选D的根据是,根据南大“大学计算机信息技术教程(第5版修订本)”P176,新的第6版IP协议(IPv6)已经把IP地址长度扩展到128位。16、下列关于网络信息安全与计算机病毒防范的叙述中,错误的是_(16)_。A. 网络信息安全不仅需要相关技术的支持,更要注重管理B. 目前Windows XP等操作系统内置软件防火墙,在一定程度上可以保护本地计算机免受攻击C. “木马”病毒是一种后门程序(远程监控程序),黑客常用它来盗窃用户账号、密码和关键数据D. 目前所有防病毒软件均为商品软件,例如金山毒霸、360杀毒软件等均需要用户会费才能使用第16题注释:选项D错误的根据是,根据南大“大学计算机信息技术教程(第5版修订本)”P110阐述,杀毒软件属于免费软件,用户可能无修改和分发软件的权利,其源代码也不一定不公开。17、下列关于字符编码标准的叙述中,错误的是_(17)_。A在ASCII标准中,每个字符采用7位二进制编码B. 在绝大多数情况下,GB2312字符集包含的1万多个个汉字足够足够使用C. Unicode字符集既包含简体汉字,也包含了繁体汉字D. 中文版Windows XP及其后的Windows系列操作系统均支持国标GB18030第17题注释:选项B错误的根据是,根据南大“大学计算机信息技术教程(第5版修订本)”P227论述,GB2310只包含6763个常用汉字和682个非汉字字符。1995年推出的GBK包含21003个汉字和883个图形符号18、由于采用的压缩编码方式及数据组织方式的不同,图像文件形成了多种不同的文件格式,在下列四种图像文件中,常用于网页上发布并可具有动画效果的是_(18)_。A. BMP B. JPEG C. GIF D. TIP第18题注释:选项C是常用于网页上发布并可具有动画效果的根据是,根据南大“大学计算机信息技术教程(第5版修订本)”P239阐述,GIF是目前因特网上广泛使用的一种图像文件格式,它的颜色数目较少,文件特别小,它可以将多张图像保存在一个文件中,显示时按事先规定的时间间隔逐一进行显示,从而形成动画效果。19、下列四种声音文件中,不可能用于保存歌曲的是_(19)_。 A. WAV B.MP3 C. MIDI D. WMA第19题注释:选项C是不可能保存歌曲的根据是,根据南大“大学计算机信息技术教程(第5版修订本)”P248表5-4常用波形形声音的文件类型、编码方法及其主要方法,表中没有MIGI文件格式。MIDI(Musical Instrument Digital Interface)是乐器数字接口 ,是20 世纪80 年代初为解决电声乐器之间的通信问题而提出的。MIDI 传输的不是声音信号, 而是音符、控制参数等指令, 它指示MIDI 设备要做什么,怎么做, 如演奏哪个音符、多大音量等。它们被统一表示成MIDI 消息(MIDI Message) 。20、下列关于Microsoft Office软件(2003/2007版本为例)功能的叙述中,错误的是_(20)_。A. Word、Excel、Powerpoint文件均不可能设置打开文件的密码B. Word文档中设置为标题样式的内容可以直接导入到Powerpoint演示文稿中C. 可以将Access表数据直接导入到Excel工作表中D. Powerpoint制作幻灯片时,可以在幻灯片中直接插入“Excel工作表”对象第20题注释:选项A错误的根据是,上述三种文件格式均可以在菜单“工具”中“选项”窗口中都具有设置打开文件和修改文件的密码的功能,详见下面截图所示。第二部份 C语言程序设计一、选择题(用答题卡答题,答案依次填在2130答题号内,共10分)21、以下选项中,不能将字母A的编码保存到变量ch的声明是_(21)_。A. char x=A; B. char =A; C. char =101; D. char =65;第21题注释:选项A不能将字母A的编码保存到变量ch的的根据是,C语言对字符变量赋值其实质是,相当于对半个字节的整型变量赋值。超过127对字符变量赋值,显示时,以补码形式出现!见下图所示。对字符赋值有六种等同格式,例如对字符变量ch赋以A,字符变量最终在内存中以二进制形式0100 0001存放。赋值的六种等同形式是:字符形式ch=A; 八进制字符形式char =101; 十六进制字符形式char =x41;八进制数值形式char =0101; 十六进制数值形式char =0x41; 十进制数值形式char =65;超过半个字符数值对字符变量赋值,则在显示时以补码形式显示:例如char =128; 显示为-128;又例如char =129; 显示为-127;又例如char =255; 显示为-1;见下图此外,需要说明一点,要能识别字符与字符串的赋值和显示的区别:选项A错误的是,A是字符串常量,若要对字符串变量赋值,声明与赋值合并语句 char x=A;或分开为声明与赋值语句:char x10; strcpy(x, A)22、以下关于While语句和do-while语句的描述中,错误的是_(22)_。A. While语句和do-while语句都可以使一段程序重复执行多遍B. While语句和do-while语句都包含了控制循环的表达式C. While语句和do-while语句都包含了循环体D. While语句和do-while语句的循环体至少都会执行一次第22题注释:选项D是错误的根据是,While(逻辑表达式)语句中,若逻辑表达式一开始为0或为“假”,则循环体就不执行,换言之,不能保证While语句的循环体至少都会执行一次的结论。而do-while(逻辑表达式)语句,不管任何情况,都可以执行一次或一次以上。23、已有声明“int a=3,b=4,c=5,d=0;”,则执行语句“printf(%d,d=ab?(ac?a:b):(bc?b:c);”时输出_(23)_。A. 3 B. 4 C. 5 D. 0第23题注释:。选项C的根据是,按照清华大学出版社“C程序设计(第四版)”P378: “=”优先级为14级;“” 优先级为14级;“? :”优先级为13级。执行显示语句printf(%d,d=ab?(ac?a:b):(bc?b:c);,最终是显示变量是c。24、已有声明“int a; char b;”,执行语句“scanf(%d%c,&a,&b);”时,若要求将整数2输入到变量a,将字符u输入到变量b,则以下输入形式中正确的是_(24)_。A. 2 u B. 2u C. 2,u D. 2u第24题注释:选项B是正确输入形式的根据是,按照清华大学出版社“C程序设计(第四版)”P77阐述,“输入数值时,在两个数值之间需要插入空格”。但数值和字符连续输入并无需要当中插入空格,否则将2输给变量a,将空格(相当数值为32)输给字符变量b。详见下图调试结果。25、已有声明“char s=Hello,i;”,以下语句中,与for(i=0;si;i+) putchar(si);的执行效果相同的是_(25)_。A. putchar(s) B. printf(%c, *s);C. printf(%s, s); D. printf(Hello);第25题注释:选项C是与之相当输出的根据是,见清华大学出版社“C程序设计(第四版)”P159阐述。或P161字符串输出形式:puts(s);。前者与后者区别在于,后者输出字符串后紧接着换行,尽管选项D也能输出“Hello”,但与for(i=0;si;i+) putchar(si);题目原意循环输出相悖。26. 已有声明“int a4=2,0,1,2, *pa=a,i;” , 以下语句语法错误的是_(26)_。A. for(i=0;i4;i+) a+; B. for(i=0;i4;i+) (*a)+;C. for(i=0;i4;i+) pa+; D. for(i=0;i4;i+) (*pa)+;第26题注释:选项A是错误的根据是,在编译时产生“error C2105: + needs l-value”错误,即a是数组首地址,但不具备指针特征,不准对数组首址自加。若要对数组所有元素自加,可改为for(i=0;i0) x-n+; 若main函数中已声明“int a6=0;”,则以下main函数调用fun函数的语句中,正确的是_(27)_。A. fun(a); B. fun(a,a); C. fun(a,1); D. fun(1,a);第27题注释:选项C是正确的根据是,清华大学出版社“C程序设计(第四版)”P:174调用函数:规定实参与形参的配合原则。选项C的实参是a(主函数中数组a的首地址与函数fun中形参数组x共地址)、1(传递给函数fun中的形参n)。28. 已知main函数中有声明“int a=3,b=4;”,若在main函数中通过执行语句“swap(&a,&b);”交换a、b变量的值,则swap函数定义中正确的是_(28)_。A. void swap(int x, int y) int t; t=x; x=y; y=t;B. void swap(int *x, int *y) int t; t=*x; *x=*y; *y=t;C. void swap(int *x, int *y) int *p; p=x; x=y; y=p;D. void swap(int *x, int *y) int *p; t=*x; *x=*y; *y=p;第28题注释:选项B是正确的根据是,清华大学出版社“C程序设计(第四版)”P:226指针变量作为函数参数,例8.3。对于要返回被调用函数内的变量,必要格式是:形参用指针变量,实参使用变量地址,符合条件有选项B、C、D。而对于被调函数中交换的中间量,不准声明为指针变量,否则如果定义该指针的位置,处于计算机系统内存区,则会导致死机,就像选项C、D。29. 已有声明“char s14,*s2=character;”,能实现“将s2指向的字符串中最后3个字符组成的子串复制到s1数组”功能的语句是_(29)_。A. s1=s2+strlen(s2)-3; B, s10=s2strlen(s2)-3;C. strcpy(s10,s2strlen(s2)-3); D. strcpy(s1,s2+strlen(s2)-3);第29题注释:选项D是正确的根据是,清华大学出版社“C程序设计(第四版)”P:161使用字符串处理函数。对于字符串处理必须使用字符串处理函数(书P:386),这里要注意两点,首先,选择合适的头文件:string.h还是ctype.h,其次是这调用这些函数的实参都必须使用指针或数组元素所在的地址。符合条件的只有选项D。30已知数据类型定义及数组声明如下:struct person char name20; int age;p10= John,18, Mary,17, Paul,19;以下语句中,能输出字符串John的是_(30)_。A. printf(%s,0); B. printf(%s,);C. printf(%s,); D. printf(%s,0);第30题注释:选项C是正确的根据是,清华大学出版社“C程序设计(第四版)”P:301结构体数组的应用举例。结构体引用结构体成员有两种形式,即结构体数组(P300)和结构体链表(P309)。本题属前者,见书P302程序,即“结构体数组元素。结构体成员”,如选项C:二、填空题(请将答案填写在答题纸的相应答题号内,每个答案只占一行,共30分)l 基本概念1、 已有声明“char c=255;”,执行语句“c+;”后变量c的值是_(1)_。 (答案:0)第1题注释:根据清华大学出版社“C程序设计(第四版)”P:473.2.4字符型数据规定,字符变量在内存中存储单元为一个字节。详见本试卷第21题论述。2、若要在C程序中以十六进制形式表达十进制数35,表示形式是_(2)_。(答案:0x23)第2题注释:这是一道“大学计算机信息基础”课的内容。只记住相关进制的权(weight),就可快速心算:4位二进制数相对于十进制数:8 4 2 1十六进制与十进制数:16101016;32102016;48103016;64104016;80105016;。本题35102316;3、表示数学式“0x0&x5)第3题注释:根据清华大学出版社“C程序设计(第四版)”P:92-93关系运算符和关系表达式、逻辑运算符和逻辑表达式规定。4、已知f函数的定义是“int f(double x) return x+1; ”,若main函数中有声明“double y=f(3.7);”,则变量y的初值为_(4)_。(答案:4.000000)第4题注释:答题时不要只写4,必须要写完整的“4.000000”,请看下图。究其原因是函数f返回是整型量,即舍去小数,以数值4返回。5、用系统库函数fprintf写到磁盘文件中的数据通常应当有系统库函数_(5)_读出。(答案:fscanf)第5题注释:根据清华大学出版社“C程序设计(第四版)”P:387输入与输出函数。l 阅读程序(13分)6、以下程序运行时,输出到屏幕的结果中第一行是_(6)_,第二行是_(7)_。#include #define A(x) x/2int B(int x) return x/2;int main() printf(%dn%d,A(7+3),B(7+3); return 0;(答案:(6) 8 (7) 5)第6题填空注释:程序比较比较简单。显示的第一行(6)是: 表达式7+3/2,其值为8;显示的第二行:表达式是 (7+3)/2,其值为5。7. 以下程序运行时,输出到屏幕的结果中第一行是_(8)_,第二行是_(9)_。#include void fun(int *x, int y) x+,y+; *x=y;int main() int a2=0; fun(a,a0); printf(%dn%d,a0,a1); return 0;(答案:(8) 0 (9) 1 )第7题填空注释:清华大学出版社“C程序设计(第四版)”P:226指针变量作为函数的参数。1、形参是指针变量*x,实参是数组a,则被除数调函数中x起始值是实参数组的首地址,x+;即指针移至第2个元素,此时对此赋值*x=y;即第2个元素a1被赋以1(y+;运算结果)。本题第1个元素不变化,维持原值。2、形参是指针变量,若要返回函数被调后的运算值,则实参必须使用地址,例如:&y。8以下程序运行时,输出到屏幕的结果中第一行是_(10)_,第二行是_(11)_。#include int main() int i,m=1,n=1; for(i=2;i9;i+) n=n+m; m=n-m; if(i%3=0) putchar(n); printf(%4d,n); return 0;(答:(10) 2 (11) 3 5 8)第8题填空注释:此题填空(10)非常容易解答,填空(11)必须用笔记下每次循环的n、m值。9. 以下程序运行时,输出到屏幕的结果是_(12)_。#include int fun(int a, int b) int c; if(b1) c=0; else if(b=1) c=a*a; else c=fun(a,b-1)+a*a; return c;int main() int a=5,b=4; printf(%dn,fun(a,b); return 0;(答案为 (12) 100)第9题填空注释。这是一道简单的清华大学出版社“C程序设计(第四版)”P:184函数递归调用。其简单的理由是:c=fun(a,b-1)+a*a;语句中,变量a始终不变:函数fun第1次以a=5,b=3调用,a*a为25; 第2次以a=5,b=2调用,a*a仍为25; 第3次以a=5,b=1调用,首先由于c=a*a;得25,加上a*a得50。递归两次返回时,连加两个25,最终得100。若将a*a改为b*b,则题目难度加大:见下图。但坚持按上述方法用笔记下每次递归调用结果,也不难获得正确答案。函数fun第1次以a=5,b-1=3调用,b*b为4*4=16; 第2次以a=5,b-1=2调用,b*b仍为3*3=9; 第3次以a=5,b-1=1调用,首先由于c=b*b;得1,加上b*b=4得5。递归两次返回时,加上9、16,最终得30。10. 以下程序运行时,输出到屏幕的结果是_(13)_。#include void fun(char str) int i,j; for(i=j=0;stri;i+) if(stri=a&stri=z) strj+=stri; strj=0;int main() char ss80=Very Good!; fun(ss); printf(%sn,ss); return 0;(答案:(13) eryood )第10题填空注释:此题非常简单!题意是考核考生对被调函数的处理字符串的能力,函数fun是查找字符串中小写英文字母,并以此返回。再重复提一下,单个字符变量操作与数值变量相同(例如赋值可用赋值运算符“=”);但字符串操作应当使用“字符串处理函数”。11以下程序运行时,输出到屏幕的结果中第一行是_(14)_。#include int main() int c4=2,1,3,4,p,q,t,i; p=c3,q=1; for(i=2;i=0;i-) t=ci*p+q; q=p; p=t; printf(%dn%dn,p,q); return 0;(答案:第一行(14) 47 )第11题填空注释:此题简单,可用笔记下三步操作,可容易获得结果。12. 以下程序运行时,输出到屏幕的结果中第三行是_(15)_,第四行是_(16)_。#include #define N 10void setdata(int sN, int n);int main() int i,j,yNN,n=5; setdata(y,n); for(i=0;in;i+) for(j=0;j=i;j+) printf(%dt,yij); printf(n); return 0;void setdata(int sN, int n) int i,j; for(i=0;in;i+) sii=1; si0=1; for(i=2;in;i+) for(j=1;ji;j+) sij=si-1j-1+si-1j;(答案:第三行是(15) 1 2 1 第四行是(16) 1 3 3 1 )第12题填空注释:参考清华大学出版社“C程序设计(第四版)”P:168习题第6题“杨辉三角形”。函数setdata()对55的矩阵初始化,第一个循环,设置向右下斜的对角线上和0列所有元素置“1”第二个双重循环,填充55的矩阵对角线左下部份,按杨辉三角形方法赋值。13、以下程序运行时,输出到屏幕的结果中第一行是_(17)_,第二行是_(18)_。#include int main() char *s=Apple,Pear,Banana,Orange,0, *p; int i,j,n; for(n=0;sn;n+); j=n-1; for(i=0;ij;i+,j-) p=si,si=sj,sj=p; for(i=0;in;i+) puts(si); return 0;(答案: (17) Orange (18) Banana)第13题填空注释:这是一道利用指针方法的字符串交换处理程序,见左图,此时,si表示字符串数组的某串字符串首地址,所以交换时可按数值变量那样操作,即可用赋值运算符“=”。除此以外,也可以利用字符串库函数来进行交换处理,见右图。此时,对于二维字符串数组而言,si表示第 i串字符串,例如s1代表字符串“Pear”,在此情况下,字符串交换要用字符串库函数。l 完善程序(12分)14 以下程序输出3-000000范围内的全部梅森素数,并统计输出梅森素数的个数。梅森数是指值为2p-1的正整数(记为Mp),其中指数p是素数。若Mp是素数,则称Mp为梅森素数。例如,7=23-1,3和7均是素数,因此7是梅森素数。#include int prime(long n) /判断n是否是素数 long i; for(_(19)_;in;i+) if(n%i=0) return 0; return 1;int isMersenneprime(long n) long m=n,k=0; while(m) if(m%2=0) return 0; _(20)_; k+; if(_(21)_&prime(n) return 1; else return 0;int main() long n,k=0,M=3000000; for(n=3;nM;n+

温馨提示

  • 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
  • 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
  • 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
  • 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
  • 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
  • 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
  • 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。

最新文档

评论

0/150

提交评论