资源描述:
《二级c语言习题答案及解析 第二章》由会员上传分享,免费在线阅读,更多相关内容在教育资源-天天文库。
1、第二章顺序结构一选择题1,答案是C考点:空语句空语句表示程序在执行时不产生任何动作,但是随意使用空语句会导致逻辑上出现错误,慎重使用。2,答案是B考点:语句语句必须以分号结尾,A,C,D表达式后面均没有分号,所以不能构成语句。3,答案是C考点:输出语句和算术表达式intx=13,y=4;说明x,y均为整型,所以x/y只取整数部分(舍去法),值为3,把3赋值给x,整个x=x/y表达式的值为左边变量x的值,所以x为3输出时以%d,带符号的十进制输出数据。注意:整数除以整数,结果仍然为整数。4,答案是Aa,b均
2、为整型,a/b是取a÷b所得商的整数部分,所以是0,再把0赋值给c,所以是c的值是0。注意:整数除以整数,结果仍然为整数。5,答案是D考点:注释、变量、数据输入和输出注释部分必须用“/*”开头和用“*/”结束,其中“/”、“*”之间不能有其他符号,也不能是空格键。计算机不对注释部分进行编译,即注释不对C语言程序产生任何影响,可以在任何能插入空格符的地方插入注释。但是注释不能嵌套使用,例如:/*12212/*1221*/22*/变量要先定义后使用。并且要满足用户标识符的命名规则。A本题中没有“/*”和“*/
3、”,所以没有注释。故A答案错误。B将r定义为整型不会在编译时出错,会自动进行类型转换,自动将表达式的值计算后转换成赋值号左边的类型的值后再赋值。所以变量r是整型是正确的。C变量s为浮点型,即小数,输出时以%f输出是正确的。Dπ是非法的变量D本选项中出现了p,p是一个变量,那么变量要先定义后使用,这里是先使用,后定义。6,答案是D考点:逗号运算符格式为:表达式1,表达式2,表达式3………,表达式n逗号运算符也称为顺序求值表达式,整个都好运算表达式的值为表达式n的值,(最后一个表达式的值),计算方法是先算左边
4、表达式的值,再算后的,从左至右依次计算。逗号运算符是优先级别最低的运算符。(x,y)是逗号表达式,它的值只有一个,所以格式说明符的个数和输出项的个数是相等的。并且逗号表达式的值为最后一个表达式的值,最后一个表达式是y=2003,所以整个表达式的值是2003,因此输出值为2003。注意:逗号表达式在计算时必须是从左至右一次计算。7,答案是A考点:数据输出格式字符说明控制以带符号(即有正数和负数)的十进制形式输入输出一个整数,其中不输出正号。i格式在输入时也可以是带前导符的八进制整数或十六进制整数。u控制以无
5、符号(即只有正数)的十进制形式输入输出一个整数。控制以无符号的八进制形式输入输出一个整数,输出时无前导符0,输入时前导符0可有可无。x或X控制以无符号的十六进制形式输入输出整数,输入时无前导符0x(或0X),并且小写x对应小写a,b,c,d,e,f,大写X对应大写A,B,C,D,E,F。输入时前导符0x(或0X)可有可无,并且不区分大小写。控制以字符形式输入输出一个字符,输出时无字符定界符(即无单引号),输入时字符不能加定界符。控制以字符串形式输入输出一个字符串,输出时不输出字符串定界符(即无双引号),输
6、入时从第一个非空白字符开始接收,并以接收过程中碰到的第一个空白字符(包括空格、回车符)结束,输入时字符串不能加定界符。输出时可以输出空白字符。m是十进制整数以十进制有符号的形式输出,即照原样输32767,n=032767,032767以0开始,是一个八进制数字,输出时不输出前导符0;故输出的结果为32767.8,答案是C考点:数据输出m,n的值都是十六进制数0xabc,m-=n即:m=m-n,把m-n的值赋给m,即把0x0赋给m,再把m值以十六进制无符号的形式输出,输出的十六进制数不用在前面0x或者0X。
7、故输出的结果为0;9,答案是B考点:变量的自加自检运算和输出语句变量的自加自减:变量在原来的基础上加一或者是减一。表达式:如果运算符在变量的后面,则表达式的值为变量原来的值;如果运算符在变量的前面,则表达式的值为变量后来的值。表达式i--,变量的值为9,表达式的值为变量原来的值,即为10,++j结果计算之后,变量的值为2,运算符在变量的前面,所以表达式的值是变量后来的值,即为2,最后将这两个变大时的值输出,即为10,2,注意两个%d之间有一个逗号,这个逗号为普通字符,在输出时要原样输出。10,答案是C考点
8、:数值的转换和数据输出%d:输出的是带符号的十进制整数。printf函数在输出的时候,如果数据的类型不相同的时候,将自动将数据转换成相同类型之后再输出。m=0256,即m是八进制的数0256,要以八进制无符号的形式输出,即输出256;n=256,即n是十进制的数256,也要以八进制无符号的形式输出,首先要把十进制数转化为八进制数,256转化为八进制为0400,不输出数据的前导符0,即输出400。11,答案是B考点:printf