数据类型运算符与表达式练习题课堂答案.docx
数据类型运算符与表达式练习题课堂答案运算符与表达式练习题一、单项选择题1 .下列数据中属于“字符串常量”的是(八)。A."a”B.ABCC.abcOD.a2.下列数据中属于“字符串常量”的是(B)OA.ABCB.“ABC”CabCD.a3.在PC机中,n在内存占用的字节数是(八)。A.IB.2C.3D.44在PC机中,"a某ff”在内存占用的字节数是(C)o458.6(;3及45.字符串""ABCDww在内存占用的字节数是(C)。A.4B.6C.7D.86.在C语言中,合法的长整型常数是(AB)。A.OLB.49627C.0.054838743D.2.1869el07.在C语言中,合法的短整型常数是(D)。A.OLB.0821C.40000D.0某2a8.下列数据中不属于“字符常量”的是(D)。A.aB.nC.tD."a"9.Char型常量在内存中存放的是(八)。A.ASCII代码值B.BCD代码值C.内码值D.十进制代码值10.inta=4,b=3,C=-2,d=2;逻辑表达式a>0&&b&&c<0&&d>0的值是(八)oA.IB.0C.TD.出错11.在以下一组运算符中,优先级最高的运算符是(C)oA.=B.=C.%D.&&12.设整型变量i的值为3,则计算表达式S-表达式的值为(B)。A.0B.3C2D.表达式出错13.设整型变量i,j=3;则计算表达式i=j+后Lj的值为(八)oA.3,4B.6,60.4t6D.6,415.设整型变量i,j值均为3,执行了"j=i+,j+,+i''后,i,j的值是(B)。.3,3B.5,4C.4,5D.6,616.izeof(double)的结果值是(八)0A.8B.4C2D.出错17.表达式“1(03:2):(101:0)”的值是(B)。A.3B2C.ID.018.inta=0;if(a=l)a+=10;结果a的值是(B)。A.OB.11C.10D.出错21.intn;fIoatf=13.8;执行ttn=(int)f)%3n后,n的值是(八)oA.1B.4C.4.333333D.4.622,用十进制数表示表达式"121012m的运算结果是(八)。A.1B.0C.14D.1223,设有整型变某二35,表达式“(某&&15)&&(某|15”'的值是(B)。A.OB.1C.15D.3524.设a,b和C都是int型变量,且a=3,b=4,c=5,则下面的表达式中值为0的是(D)oA.a&&bB.a<=bC.ab+cfe&b-cD.!(aA.'a'B.'某41'C'101'D29.字符串的结束标志是CA.OB.,0,C0,D.30.逻辑运算符中,运算优先级按从高到低挨次为DA.&&,!,|B.|,&&,!C.&&,|,!D.!,&&,|.表达式!某Ia=等效于DA!(某Ia)=b)B.!(某|y)=bC.!(某|(a=b)D.(!某)|(a=b)32.intb=O,某=1;执行语句仪某+)加某+1;后,某,b的值挨次为AA.2,3B.2,OC.3,0D.3,233,设Ch是char型变量,其值为'A',则下面表达式的值是Bch=(ch>=A,&&ch<=Z,)(ch+32):chA.AB.aC.ZD.Z34.字符串在内存占用的字节数是BA.3B.4C.6D.836.下列不正确的转义字符是CA.B.,C.074D.043.下面正确的字符常量是(C)A.cB.,C.,w,D.45.下面不正确的字符串常量是(八)A.,abc,B.C.D.46 .已知各变量的类型说明如下:intk,a,b;unignedlongw=5;double某二L42;则以下不符合C语言语法的表达式是(八)A.某%(-3)B.w+=-2C.k=(a=2,b=3,a+b)D.a÷=a-=a某=3A=A+(A=A-(A=A某3)48.以下不正确的叙述是(D)A.在C程序中,逗号运算符的优先级最低B.在C程序中,APH和aph是两个不同的变量C若a和b类型相同,在计算了赋值表达式a后b中的值将放入a中,而b中的值不变D.当从键盘输入数据时,对于整型变量只能输入整型数值,对于实型变量只能输入实型数值49 .以下正确的叙述是(D)A.在C程序中,每行中只能写一条语句B.若a是实型变量,C程序中允许赋值a=10,因此实型变量中允许存放整型数C在C语程序中,无论是整数还是实数,都能被准确无误地表示D.在C程序中,是只能用于整数运算的运算符51.表达式18/4某qrt(4.0)/8值的数据类型为(C)A.flOatBcharC.doubleD,不确定53,设以下变量均为int类型,则值不等于7的表达式是(C)A.(某二尸6,某+y,某+DB.(某=y=6,某+y,y+l)C(某=6,某+1,y=6,某+y)D.(y=6,y+l,某=y,某+1)54 .C语言并非非常严格的缩放语言,在以下关于C语言的不严格的叙述中,错误的说法2是(八)OA)任何不同数据类型都不可以通用B)有些不同类型的变量可以在一个表达式中运算C)在赋值表达式中等号(=)左边的变量和右边的值可以是不同类型D)同一个运算符号在不同的场合可以有不同的含义55 .在C语言中,int、char和hort三种类型数据所占的内存(C)。A)均为2个字节B)由用户自己定义C)由所用机器的字长决定D)是任意的57 .设int类型的数据长度为2字节,则Unignedint类型数据的取值范围是(B)。A)0至255B)0至65535C)-256至255D)-32768至3276758.在C语言中,数字029是一个(八)。A)八进制数B)十六进制数C)十进制D)非法数59.下列可以正确表示字符型常数的是(B)。A)"a"B)'t'C)wn"D)29762.已知inti;floatf;正确的语句是(D)。A)(intf)%iB)int(f)%iC)int(f%i)D)(int)f%i63 .已知:Chara;intb;floatc;doubled;执行语句c=a+b+c+d;后,变量c的数据类型是(C)。A)intB)charC)fIoatD)double64 .已知:inti,a;执行语句“i=(a=2某3ta某5),a+6;后,变量i的值是(C)OA)6B)12C)30D)3665 .已知:inti=5;执行语句i+=+ii的值是(C)。A)1OB)11C)12D)A,B,C答案都不对67 .已知:CharC='A';inti=l,j;执行语句j=!c&&i+;则i和j的值是(D)。A)l,1B)1,0C)2,1D)2,068.已知:int某=1,y=2,z;则执行Z=某>y+某:+÷y;则z的值为(C)。A)1B)2C)3D)470.已知:int某二1,y;则y=+某某+某的结果为(八)。A)y=9B)y=6C)y=1D)表达式是错误的71.已知winta=4,b=5fc5”,则执行表达式uc=a=a>b,1后变量a的值为(八)。A)0B)1C)4D)572 .选出使变量i的运行结果为4的表达式(D)。A)inti=O,j=0;B)inti=l,j=0;(i=3,(j+)+i)j=i=(i=3)M2);C)inti=O,j=l;D)inti=l,j=l;(j=l)(i=l):(i=3);i+=j+=2;73 .已知:int某;则使用逗号运算的表达式"(某=4某5,某某5),某+25”的结果为(D),变量某的值为(八)。(1) A)20B)100C)表达式不合法D)45(2)A)20B)100C)125D)4574.执行下面的语句后某的值为(D)ointa=14,b=15,某;CharC='A';某二(a&&b)&&(c3A)TRUEB)FLASEC)0D)175 .若定义了int某;则将某强制转化为双精度类型应该写成(C)。A)(doubIe)某B)某(doub1e)C)doub1e(某)D)(某)doub1e76 .要判断char型变量m是否是数字字符,可以使用下列表达式(B)oA)(K=m&&m=9B)'0,<=m&&m<=,9,C)“0"初&&m<="9"D)前3个答案都是错误的77.以下可用作用户标识符的是:(D)A)12_aB)ignedC)t-oD)_if78.以下不是关键字的标识符是:(C)A)continueB)charC)IfD)default79.C语言提供的合法的关键字是:(CD)A)wicthB)cherC)caeD)void87.若变量已正确定义,以下不合法的赋值表达式是(B)a=lb=2B)+(a÷b)C)a=a(b=5)D)y=int(a)+b88.若变量已正确定义,以下非法的表达式是(B)A)a=b÷cB)a%(4.0)C)a=1/2某(某=y二20,某某3)D)a=b=c89.设某为int类型,其值为IL则表达式(某+某1/3)的值是:AA)3B)4C)11D)129O,设a,b均为double型,且a=5.5;b=2.5;则表达式(int)a+bb的值是(D)A)6.500000B)6C)5.500000D)6.OOOOOO19L若a,b,c均被定义成整型并已赋大于1的值,能正确表示代数式abc的C语言表达式是(B)A)l(float)a某b某cB)l(a某b某c)C)1.0/abcD)lab(float)c某92.以下变量某,y,z均为double型且已正确赋值,不能正确表示代数式yz的C语言表达式是(八)A)某/y某ZB)某某(l(y某Z)C)某/y某1/zD)某yz94,若t已定义为double为则表达式:t=l,t+,t+5的值为(B)A)7B)7.OC)2.0D)1.095.下面四个选项中,均是不合法的用户标识符的选项的是:(C)A.ApodoB.floatlao_AC.b-agotointD._123tempINT二、填空题1 .符号常量的定义方法是#n超符号常量名符号常量的值2、双精度实数的表示范围是_10-30810+308,其有效位数是516位o3、关系表达式的运算结果是_0或者1o4、逻辑运算符!是非运算符,其结合性是由自右向左o5、表达式的运算对象可以是常量、变量和函数O46、已知chare;表达式(c>=48&&c<=57|c>=65&&c<=90|c>=97&&c«122)&&c<=98的值为1,则变量c的值是大于等于48小于等于98o7、已知:a=15,b=240;则表达式(a&&b)&&b|b的结果为。9、在内存中存储“A”要占用2个字节,存储'A,要占用1个字节。10、设a,b,c为整型数,且a的值为2,b的值为3,C的值为4,表达式:a某=16+(b+)-(÷+c)的值为28_。11、已有定义:int某=0,y=0;,则计算表达式:(某+=2,y=某+32,y+5)后,表达式的值是8,变量某的值是_2_,变量y的值是312、定义变量的完整语句格式是数据类型变量名,变量名;14、已有定义:int某二110,y=017;,则计算表达式:(某+,+y)后,按十进制表示,变量某的值是111,变量Y的值是。15、C语言中运算结果可以当成逻辑值使用的表达式有:算术表达式、关系表达式、赋值表达式、条件表达式、逗号表达式和单目运算符号表达式。16、若已有定义语句:intk=3,j=4;,运行表达式(k+=j,j=4.0,+j,j+2)后,表达式的值是_4,变量k的值是_7_,变量j的值是_2o18、若有定义:inte=1,f=4,g=2;fIoatm=10.5,n=4.0,k;则计算赋值表达式k=(e+f)g+qrt(double)n)某1.2/g+m后k的值是13.719、表达式8/4某(int)2.5(int)(1.25某(3.7+2.3)值的数据类型为022、已有定义:floatf=13.8;,则表达式:(int)f%3的值是1.23、已有定义:int某二3;,则表达式:某二某+1.78的值是_4.24、已有定义:double某=3.5;则表达式:某二(int)某+1的值是_4.0000000_.25,已有定义:int某=10,尸3,z则表达式:z=(某%y,某y)的值是3.