自考地区
全国 北京 上海 天津 重庆 河北 山西 辽宁 吉林 黑龙江 江苏 浙江 安徽 福建 江西 山东 河南 湖北 湖南 广东 海南 四川 贵州 云南 陕西 甘肃 青海 内蒙古 广西 宁夏 新疆 西藏
您所在的位置 桃李自考网 > 自考模拟题 >

2021年浙江自考《高级语言程序设计》章节试题及答案(6)

2021-01-11 16:16 来源:桃李自考网 成人自考

18.若有以下定义: char a;int b;float c; double d;则表达式a*b+d-c值的类型为( )

①float ② int ③ char ④ double

「解」基本类型的数据可以混合运算,但运算时,对要求运算分量类型相同的运算来说,如运算分量的类型不是全相同,则会有自动类型转换发生。类型自动转换规则规定类型低(简单)的向类型高(复杂)的转换。各类型由高到低的排列顺序是:long double、float、unsigned long、long、unsigned int、int这样,若有定义: char a; int b;float c;double d;则表达式a*b+d-c的值的类型是double的。首先计算 a*b,得到int类型的值,接着计算a*b+d,得到double类型的值,最后计算a*b+d-c,得到double类型的值。所以解答是④。


19.表达式“9!=7”的值是( )

①true ②非0值 ③0 ④1

「解」关系运算的结果只有0和1,若关系成立,则结果为1;若关系不成立,则结果为0.因关系式9!=7成立,所以表达式的结果为1.虽然1也是非0值,在供选择的答案中有1,所以最确切的解答是④。


20.用十进制数表示表达式“12|012”的运算结果是( )

①1 ②0 ③ 14 ④ 16

「解」按位运算将运算分量视作二进位的位申信息,对两运算分量的对应位进行运算,产生H进位的位串信息结果。整数12最低8位二进位是00001100,整数012是八进制数,它的最低8位二进位是00001010.这两个二进位位串信息按位或运算,得到结果是00001110,对应十进制数14,八进制数是016.所以解答是③。


21.设字符型变量 a=3,b=6,计算表达式 C=(a^b)<< 2后C的二进制值是( )

① 00011100 ②00000111 ③ 00000001 ④ 00010100

「解」a的值为3,写成8位二进制数形式是00000011,b的值为6,写成8位二进制数形式是00000110.表达式c=(a^b)<<2,先计算a与b的按位加,得到结果00000101,将这结果向左移2位,得到二进位的位串信息是00010100.所以解答是④。


22.设 a,b和 c都是int型变量,且a=3,b=4,c=5,则下面的表达式中值为 0的是( )

①‘a’&&b‘ ②a<=b ③a||b+c&&b-c ④!((a

「解」对于表达式‘a’&&‘b,两个非O运算分量的逻辑与结果为1.对于表达式a<=b,由于关系式成立,结果也为此又由于变量 a为非 0,表达式a||b+c&&b-c的结果也为1.对于表达式!((a


23.设Ch是Char型变量,其值为‘A’,则下面表达式的值是( )

ch=(ch>=‘A’&&ch<=‘Z’)?(ch+32):ch

①‘A’ ②‘a’ ③‘Z’ ④‘z’

「解」由于字符型变量ch的值为‘ A’,计算表达式ch=h>=‘ A’&&ch<=‘ Z’)?(ch+32):ch,先计算其中条件表达式,由于条件(ch>=‘A&&h<=’Z‘)成立,该条件表达式以 ch+32=97为结果,将该值赋给变量 ch,以字符表达这个值为’a‘。所以解答是②。


24. 设有无符号短整型变量i、j、k,i值为013,j值为 OX13.计算表达式“k=~i|j>> 3”后,k的值是( )

① 06 ② 0177776 ③ 066 ④ 0177766

「解」将变量 i的八进制数值 013写成二进制形式为00001011,将变量j的十六进制值 oxl3写成二进制数形式为00010011.表达式k=~i|j>>3的计算过程是先求~i,结果用八进制代码表示为0177764;接着计算j>>3,结果为02.对它们进行按位或运算结果为0177766.所以解答是④。