校园网新视野C语言笔试习题集答案及解析——第二章.doc_第1页
校园网新视野C语言笔试习题集答案及解析——第二章.doc_第2页
校园网新视野C语言笔试习题集答案及解析——第二章.doc_第3页
校园网新视野C语言笔试习题集答案及解析——第二章.doc_第4页
校园网新视野C语言笔试习题集答案及解析——第二章.doc_第5页
全文预览已结束

下载本文档

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

文档简介

校园网.新视野教育全国计算机等级考试二级C语言笔试习题集答案及解析第二章 顺序结构一 选择题1, 答案是 C 随意使用空语句会导致逻辑上出现错误,不要随便使用。2, 答案是 B 语句必须以分号结尾,A,C,D表达式后面均没有分号。3, 答案是 Cint x=13,y=4;说明x,y均为整型,所以x/y只取整数部分(舍去法),值为3,把3赋值给x,整个x=x/y表达式的值为左边变量x的值,所以输出为3。4, 答案是 Aa,b均为整型,a/b是取ab所得商的整数部分,所以是0,再把0赋值给 c,所以是c的值是0。5, 答案是 DA 注释语句可以放在代码的任何位置B 将r定义为整型不会在编译时出错,会自动进行类型转换C 变量s为浮点型,格式描述符f时正确的D 是非法的变量6, 答案是 D(x,y)是逗号表达式,它的值只有一个,所以格式说明符的个数和输出项的个数是相等的。并且逗号表达式的值为最后一个表达式的值,最后一个表达式是y=2003,所以整个表达式的值是2003,因此输出值为2003。7, 答案是 Am是十进制整数以十进制有符号的形式输出,即照原样输32767,n=032767,032767是八进制的整数以八进制无符号形式输出,去掉前面的0。见教材P348, 答案是 C m,n的值都是十六进制数0xabc,m-=n即是m=m-n, 把m-n的值赋给m, 即把0赋给m,再把m值以十六进制无符号的形式输出,输出的十六进制 数不用在前面0x或者0X。见教材P359, 答案是 B表达式i的值是在变量自减之前的值,i的初值为10,所以该表达式的值也为10;表达式j+的值是变量自加之后的值,j初值为1,所以该表达 式在值是2。10, 答案是 C m=0256,即m是八进制的数0256,要以八进制无符号的形式输出,即输出 256;n=256,即n是十进制的数256,也要以八进制无符号的形式输出,首 先要把十进制数转化为八进制数,256转化为八进制为0400,以无符号形 式输出,即输出400。11, 答案是 B在printf语句中,格式控制的个数只有一个,即d,而输出项有两项,即a和b。而得到的结果应该只有一个,所以应该输出第一个变量的值,即变量a的值。12, 答案是 C第一个数据的输出控制宽度是2位,但是x的值是102,占3位,要输出的数据宽度大于规定的输出宽度,所以按数据的实际宽度输出,输出102。第二个数据要求以十进制形式输出,输出控制宽度是2,y的值为012,是八进制数,所以要转换成十进制数10后再输出。13, 答案是 B表达式af/=c*=(x=6.5),按从右到左结合,先把6.5赋值给x,再执行cc*6.5,c的值变为65,再执行ff/65,为浮点数的除法,f的值为1.53,再把f的值赋给a,a为整型数据,执行强制类型转换,a的值为1。a对应的输出格式为d,即输出1;c对应的输出格式为d,输出65,f对应的输出格式3.1f,即输出控制宽度为3位,保留小数点后一位小数,即输出1.5,x对应的输出格式也为3.1f,输出6.5。14, 答案是 Dfloat x=-123.456;说明x为单精度浮点数据,单精度浮点数据对应的输出格式应该为%f。15, 答案是 Cm=(k+=i*=k);按从右到左结合,先执行i=i*k;即i被赋值为4,再执行kk4;k被赋值为6,最后把6赋给m,输出m和i的值。16, 答案是 C 略(参考12题)17, 答案是 Dm遵循从右向左结合的原则;m的值为m自增之前的值,所以执行完xm以后,x被赋值为3;表达式xx8/+n中有加号除号,先算8/+n,+n的值为自增之后的值为5,8/5取整为1,即xx8/+n转化为xx1,即把x1的值赋给x,x的值变为2。18, 答案是 D A 输入函数应为scanf(); B,C 输入数据列表必须是地址表达式;19, 答案是 A 从键盘输入数据的格式必须与输入控制要求的格式一样 B答案三个之间不要有空格;C答案用逗号分开是多余的;D答案格式不匹配。20, 答案是 A格式控制要求输入的两个数据之间要用逗号隔开,A没有逗号所以错误,D两个输入数之间的回车换行可以忽略。21, 答案是 Cx乘以100是为了把x小数点后的两位小数变为整数,再加上0.5,如果小数点后一位大于等于5则会进一位,如果小数点后一位小于5则不会出现进位的情况,再对其进行强制类型转换,采用舍去法丢掉小数部分,即对x乘上100后的数实现了小数位到整数位的四舍五入。最后再除以100.0,把数字变回原来的大小,整数与浮点数相除结果为浮点数,即实现了要求。22, 答案是 C 从键盘输入数据的格式必须与输入控制要求的格式一样。 23, 答案是 B输入控制中第一个数要求以“2d”形式输入,即要求输入一个两位的数,而从键盘输入的数为876,所以从左到右取两位数字87,即把87赋值给整型变量a,余下的6再赋值给浮点型变量b,自动进行类型转换,b的值为6.000000,后面输入的543则没有赋值给变量。24, 答案是 D“”会输出一个“”,“d”会照原样输出,因为没有格式说明,m,n无法输出到屏幕。25, 答案是 D第1个输出语句要求ch以%c(字符)形式输出所以为输出“a”,以%d(整数)形式输出为,字符转换为整型要使用ASCII码所以为“97”,k没有对应的输出符所以没有输出,第2个输出语句要求以整型方式输出k得到“12”。结果为“a,97,k=12”26, 答案是 Ba+b的结果为30,按照“a+b=%dn”的输出格式得到输出结果“a+b=30”B27, 答案是 Bprintf可以没有输出项,没有输出项的printf只是没有输出内容;整数不能以十二进制输出,getchar()只能读入字符。28, 答案是 Agetchar()可以读入空格符合回车符。二 填空题1, 一条语句 分号 2, 88首先将八进制数0210转化为十六进制的数0X88,输出格式说明要以十六进制无符号的形式输出,所以省略0X,直接输出88。3, 11把十进制数转化为八进制数,以无符号的形式输出4, 25 21 37 b为八进制数025,c为十六进制数0X25,首先把b、c都转化为十进制的整数,分别为21、37,按照输出格式要求a、b、c以十进制整数形式输出,中间以空格分开,所以输出为25 21 37。5, n1%dnn2=%d除了n1,n2的值之外,还必须加入“n1”“n2”照原样输出的字符,很明显在两个数据之间还加了换行符。6, i=10,j=20格式控制中加入了格式说明以外的其他字符,则在输入数据时这些字符也要同样输入。输入格式控制为i=%d,j=%d,所以则应该从键盘输入i=10,j=207, 261a为十进制数177转化为八进制的数为0261,以无符号的形式输出为2618, 16a的初值为0,在表达式a+=(a=8)中,a首先被赋值为8,再执行操作a=aa,所以a最后被赋值为16,即输出a的值为169, printf(“a=%d,b=%d”, a, b);10, B 66B在ASCII码中派在A的后面A为65,那么B为66。11, 10 012为八进制数,转换为十进制为10。12, 12 34 在scanf函数中指定了宽度为2,输入123456,a

温馨提示

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

评论

0/150

提交评论