xa3 c语言表达式是,C语言试题:数据类型、运算符与表达式.doc

C语言试题:数据类型、运算符与表达式.doc

3 数据类型、运算符与表达式一、单项选择题 1、以下选项中,不正确的 C 语言浮点型常量是( C )。 A. 160. B. 0.12 C. 2e4.2 D. 0.0分析e后面的指数必须为整数。2、以下选项中,( D )是不正确的 C 语言字符型常量。 A. a B. x41 C. 101 D. a分析在C语言中,a表示字符常量,”a”表示字符串。3、在 C 语言中,字符型数据在计算机内存中,以字符的(C )形式存储。 A.原码 B.反码 C. ASCII 码 D. BCD码分析将一个字符常量放入一个字符变量中,实际上并不是将字符本身放到内存单元中,而是将字符的对应的ASCII码放到储存单元中。4、若x、i、j和k都是int型变量,则计算下面表达式后,x的值是( C )。x(i4,j16,k32) A. 4 B. 16 C.32 D.52 分析(i4,j16,k32)的值为最后一个表达式的值,即为32,所以x32.5、算术运算符、赋值运算符和关系运算符的运算优先级按从高到低依次为(B )。 A.算术运算、赋值运算、关系运算 B. 算术运算、关系运算、赋值运算 C.关系运算、赋值运算、算术运算 D. 关系运算、算术运算、赋值运算 分析算术运算符包括加法运算“”符减法运算“-”符乘法运算符“*”以及除法运算符“/”,赋值运算符包括“、、-、*、/、”,关系运算符包括“、、、”。6、若有代数式 ,则不正确的C语言表达式是( C )。A.a/b/c*e*3 B. 3*a*e/b/c C.3*a*e/b*c D. a*e/c/b*3 分析C选项表达的是3ace/b。7、表达式xab 等效于( D )。 A. xab B. xyb C. xab D. xab 分析由符优先级先后顺序在xab中应先算“”再算“”,最后算“”。选项B不影响运算顺序。8、设整型变量 m,n,a,b,c,d 均为1,执行 mabncd后, m,n 的值是( A )。 A. 0,0 B. 0,1 C. 1,0 D. 1,1 分析先算括号里面的,a不大于b,则m0,c不大于d,则n0.9、 设有语句 int a3;,则执行了语句 aa-a*a;后,变量 a 的值是 B 。 A. 3 B. 0 C. 9 D. -12 分析从后往前算,a*a即aa*a,a9;然后a-a9,aa-9,0;a0,aaa0.10、在以下一组运算符中,优先级最低的运算符是 D 。 A. * B. C. D. 分析在上述选项中,运算符优先级从低到高为、、、*。11、设整型变量 i 值为2,表达式iii的结果是 B 。 A. 6 B. 12 C. 15 D. 表达式出错 分析i表示在将i运算前先加上1再进行运算。12、若已定义 x 和 y为double 类型,则表达式 x1,yx3/2 的值是 C 。 A. 1 B. 2 C. 2.0 D. 2.5 分析double类型下,3/21,y为double类型,故y112.0。13、sizeof double的结果值是 A 。 A. 8 B. 4 C. 2 D. 出错 分析SIZEOF的作用是判断数据类型长度,double在C里用8个字节来存储数据。14、设a1,b2,c3,d4,则表达式ab a cd a d的结果为( A )。 A. 4 B. 3 C. 2 D. 1 分析ab a cd a d的意思是ab吗,如果是的话就执行 a,不是的话就执行 cd,cd 执行吗,如果执行的话就执行a,不是的话就执行 d。15、设a 为整型变量,不能正确表达数学关系10a15的 C 语言表达式是 A 。 A. 10a15 B. a 11 a 12 a 13 a 14 C. a10 a15 D. a10 a15 分析a 为整型变量表示a为整数,10a15表示a可取值11、12、13、14。B表示a 11或 a 12 或 a 13 或 a 14,符合题意。C表示a10并且a15。D表示a不小于等于10并且a不大于等于15.均符合题意。16、设 f是实型变量,下列表达式中不是逗号表达式的是( A )。 A. f 3.2, 1.0 B. f0, f10 C. f2.0, f0 D. f3.2, 1.0 分析逗号的优先级低于等号的优先级。A表示将3.2赋值给f,1.0无法识别。17、 表达式18/4*sqrt4.0/8值的数据类型是( B )。A. int B. float C. double D. 不确定 分析int表示整形, float表示单精度型, double表示双精度型。18、已知字母A的ASCII码为十进制数65,且c2为字符型,则执行语句C2A6-3;后c2中的值是( A )。 A. D B. 68 C. 不确定的值 D. C 分析字符型常量A为65,加上6减去3为68,对应D的ASCII码。19、以下用户标识符中,合法的是( B )。 A. int B. nit C. 123 D. ab 分析C语言规定标识符只能由字母、数字、下划线组成,并且只能由字母、下划线开头。一些标识符被赋于特定的含义就叫做保留字,不用于标识符。20、C 语言中,要求运算对象只能为整数的运算符是( A )。 A. B. / C. D. * 分析表示求余,运算对象只能为整数。21、若有说明语句char c72;则变量c在内存占用的字节数是( A )。 A. 1 B. 2 C. 3 D. 4 分析char 是字符型,它定义的字符,在内存中只占一个字节,定义的char c72,系统只会将它做一个字符处理。22、字符串ABC在内存占用的字节数是( B )。 A. 3 B. 4 C. 6 D. 8 分析C规定在每一个字符常量的结尾加上一个字符串结束标志/0,在内存单元中ABC表示6个字符。23、要为字符型变量 a赋初值,下列语句中哪一个是正确的( B )。 A. char a3 C. char a; D. char a*; 分析字符用单引号,字符串用双引号。24、下列不正确的转义字符是( C )。 A. B. C. 074 D. 0 分析所有的ASCII码都可以用“”加数字(一般是8进制数字)来表示。而C中定义了一些字母前加来表示常见的那些不能显示的ASCII字符,如0,t,n等,就称为转义字符,因为它后面的字符都不是它本来的ASCII字符意思了。二、填空题 1、C 语言中的逻辑值“真”是用 1 表示的,逻辑值“假”是用 0 表示的。 2、若x和n都是int型变量,且x的初值为12,n的初值为5,则计算表达式xn2后x的值为 0 。 3、设 cw,a1,b2,d-5, 则表达式 x1c, yc2, -a-5*bd1, ba2的值分别为 1 、 0 、 1 、 1 。 4、设 float x2.5,y4.7; int a7;,表达式 xa3*intxy2/4的值为 2.75 。5、判断变量 a、b 的值均不为 0 的逻辑表达式为 a0b0 。 6、求解赋值表达式 ab10c6,表达式值、a、b、c 的值依次为 4、10、10、6 。 7、求解逗号表达式 xa3,6*a 后,表达式值、x、a 的值依次为 18、3、3 。逗号运算符应先求解逗号前面的,求出后变量经重新赋值,在计算逗号后面的。8、数学式a/b*c的 C 语言表达式 a/b/c 。三、判断题( Y )1、C语言中,非0值作为true,0作为false;若表达式取得true值时,结果为1, 取得false值时,为0。( N )2、为了确保表达式n/2的值为float型,可写成floatn/2。( N )3、若有(float)x,则x变成float型变量。( N )4、若a3,b4,c5,则dab的值是0。( Y )5、a是实型变量,进行赋值a10,因此实型变量中允许存放整型值(N )6、在赋值表达式中,赋值号左边既可以是变量也可以是任意表达式( N )7、执行表达式ab后,在内存中a和b存储单元中的原值都将被改变,a的值已由原来的改变为b的值,b的值由原来改变为0( N )8、有a3,b5。执行ab,ba后,使a的值为5,b的值为3。( N)9、getchar 和scanf()均为输入函数,它们之间可通用,没有任何区别。(N )10、执行语句scanf6.3f ,a后,输入123456可使a的值为123.456 。( Y )11、putchar()函数的作用是输出一串字符 。( Y )12、使用scanf()函数,在输入数据时,若遇非法输入则认为该数据输入结束。( Y )13、在C中所用的变量必须先定义后使用。( Y )14、在 C 程序中,运算符仅能用于整型数的运算。( Y )15、APH与aph 分别表示不同的变量。( Y )16、设x和y都是int型变量,则以下语句xy;yx-y;x-y;的功能是交换x和y的值。( N )17、设a5,b6,c7,d8,m2,n2,执行(mab)ncd后n的值为0。( Y )18、C语言中无逻辑变量,也无逻辑表达式。四、编程题1、设长方形的高为 1.5,宽为 2.3,编程求该长方形的周长和面积。includestdio.hvoid mainfloat a,b,C,S;a1.5,b2.3;C2*ab;Sa*b;printf“f,fn”,C,S;2、编写一个程序,将大写字母 A转换为小写字母 a。includestdio.hvoid mainchar c;cA;cc32;printf“c”,c

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值