您好,欢迎来到保捱科技网。
搜索
您的当前位置:首页习题2

习题2

来源:保捱科技网


第三章 数据类型、运算符与表达式

3.1 选择题

【题3.1】在C语言中(以16位PC机为例),5种基本数据类型的存储空间长度的排列顺序为 A 。

A) charB) char=intC) charD) char=int=long int<=float【题3.2】若x、i、j和k都是int型变量,则执行下面表达式后x的值为 C 。

x=(i=4,j=16,k=32)

A)4 B)16 C)32 D)52

【题3.3】假设所有变量均为整型,则表达式(a=2,b=5,b++,a+b)的值是 B 。

A)7 B)8 C)6 D)2

【题3.4】下列四组选项中,均不是C语言关键字的选项是 A 。

A) define IF type

B) getc char printf

C) include scanf case

D) while go pow

【题3.5】下列四个选项中,均是C语言关键字的选项是 B 。

A) auto enum include

B) switch typedef continue

C) signed union scanf

D) if struct type

【题3.6】下面四个选项中,均不合法的用户标识符的选项是 C 。

A) A P_0 do

B) float la0 _A

C) b-a goto int

D) _123 temp INT

【题3.7】C语言中的标识符只能由字母、数字和下划线三种字符组成,且第一个字符 。

A) 必须为字母

B) 必须为下划线

C) 必须为字母或下划线

D) 可以是字母、数字和下划线中任一种字符

【题3.8】下面四个选项中,均是合法整型常量的选项是 。

A) 160 -0xffff 011

B) -0xcdf 01a 0xe

C) -01 986,012 0668

D) -0x48a 2e5 0x

【题3.9】下面四个选项中,均是不合法的整型常量的选项是 。

A) --0f1 -0xffff 0011

B) -0Xcdf 017 12,456

C) -018 999 5e2

D) -0x48eg -068 03f

【题3.10】下面四个选项中,均是不合法的浮点数的选项是 。

A) 160. 0.12 e3

B) 123 2e4.2 .e5

C) -.18 123e4 0.0

D) -e3 .234 1e3

【题3.11】下面四个选项中,均是合法浮点数的选项是 。

A) +1e+1 5e-9.4 03e2

B) -.60 12e-4 -8e5

C) 123e 1.2e-.4 +2e-1

D) -e3 .234 5.e-0

【题3.12】下面四个选项中,均是合法转义字符的选项是 。

A) ‘\\’’ ‘\\\\’ ‘\\n’

B) ‘\\’ ‘\\017’ ‘\\”’

C) ‘\\018’ ‘\\f’ ‘xab’

D) ‘\\\\0’ ‘\\101’ ‘x1f’

【题3.13】下面四个选项中,均是不合法的转义字符的选项是 。

A) ‘\\”’ ‘\\\\’ ‘\\xf’

B) ‘\\1011’ ‘\\’ ‘\\a’

C) ‘\\011’ ‘\\f’ ‘\\}’

D) ‘\\abc’ ‘\\101’ ‘xlf’

【题3.14】下面正确的字符常量是 。

A)“c” B) ‘\\\\’’ C) ‘W’ D) ‘’

【题3.15】下面四个选项中,均是不正确的八进制数或十六进制数的选项是 。

A) 016 0x8f 018

B) 0abc 017 0xa

C) 010 -0x11 0x16

D) 0a12 7ff -123

【题3.16】下面四个选项中,均是正确的八进制数或十六进制数的选项是 。

A) -10 0x8f -011

B) 0abc -017 0xc

C) 0010 -0x11 0xf1

D) 0a12 -0x123 -0xa

【题3.17】下面四个选项中,均是正确的数值常量或字符常量的选项是 。

A) 0.0 0f 8.9e ‘&’

B) “a” 3.9E-2.5 1e1 ‘\\”’

C) ‘3’ 011 0xFF00 0a

D) +011 0xabcd 2e2 50.

【题3.18】下面不正确的字符串常量是 。

A)‘abc’ B)“12’12” C)“0” D)“ ”

【题3.19】对应以下各代数式中,若变量a和x均为double类型,则不正确的C语言表达式是 。

代数式 C语言表达式

e^(x^2/2)A)

2 exp(x*x/2)/sqrt(2*3.14159)

B)

1axax24a

1.0/2.0*(a*x+(a+x)/(4*a)

C)

(sinx)^2.5

sqrt((pow(sin(x*3.14159/180),2.5))

D) x^2e^5 x*x-exp(5.0)

3ae【题3.20】若有代数式bc,则不正确的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

【题3.21】已知各变量的类型说明如下:

int k,a,b;

unsigned long w=5;

double x=1.42;

则以下不符合C语言语法的表达式是 。

A)x%(-3) B)w+=-2 C)k=(a=2,b=3,a+b) 【题3.22】已知各变量的类型说明如下:

int i=8,k,a,b;

unsigned long w=5;

double x=1.42,y=5.2;

则以下符合C语言语法的表达式是 。

D)a+=a-=(b=4)*(a=3)

A)a+=a-=(b=4)*(a=3) B)a=a*3=2 C)x%(-3) D)y=float(i)

【题3.23】以下不正确的叙述是 。

A) 在C程序中,逗号运算符的优先级最低

B) 在C程序中,APH和aph是两个不同的变量

C) 中的值不变

若a和b类型相同,在执行了赋值表达式a=b后b中的值将放入a中而b

D) 当从键盘输入数据时,对于整型变量只能输入整型数值,对于实型变量只能

输入实型数值

【题3.24】以下正确的叙述是 。

A) 在C程序中,每行中只能写一条语句

B) 数

若a是实型变量,C程序中允许赋值a=10,因此实型变量中允许存放整型

C) 在C程序中,无论是整数还是实数,都能被准确无误地表示

D) 在C程序中,%是只能用于整数运算的运算符

【题3.25】以下符合C语言语法的赋值表达式是 。

A)d=9+e+f=d+9 B)d=9+e,f=d+9 C)d=9+e,e++,d+9 D)d=9+e++=d+7

【题3.26】已知字母A的ASCII码为十进制数65,且c2为字符型,则执行语句c2=‘A’+‘6’-‘3’;后,c2中的值为 。

A)D B)68 C)不确定的值 D)C

【题3.27】在C语言中,要求运算数必须是整型的运算符是 。

A)/ B)++ C)!= D)%

【题3.28】若以下变量均是整型,且num=sum=7;则执行表达式sUM=num++,sUM++,++num 后sum的值为 。

A)7 B)8 C)9 D)10

【题3.29】在C语言中,int、char和short三种类型数据在内存中所占用的字节数 。

A)由用户自己定义 B)均为2个字节

C)是任意的 D)由所用机器的机器字长决定

【题3.30】若有说明语句:char c=‘\\72’;则变量c 。

A)包含1个字节 B)包含2个字节

C)包含3个字节 D)说明不合法,c的值不确定

【题3.31】若有定义:int a=7; float x=2.5,y=4.7;则表达式x+a%3*(int)(x+y)%2/4的值是 。

A)2.500000 B)2.750000 C)3.500000 D)0.000000

【题3.32】sizeof(float)是 。

A)一个双精度型表达式 B)一个整型表达式

C)一种函数调用 D)一个不合法的表达式

【题3.33】设变量a是整型,f是实型,i是双精度型,则表达式10+数据类型为 。

A)int B)float C)double D)不确定

【题3.34】下面四个选项中,均是非法常量的选项是 。

A) ‘as’ -0fff ‘\\0xa’

B) ‘\\\\’ ‘\\01’ 12,456

C) -0x18 01177 0xf

a’+i*f值的‘

D) 0xabc ‘\\0’ “a”

【题3.35】若有代数式

yxlog10y,则正确的C语言表达式是 。

A) sqrt(fabs(pow(y,x)+log(y)))

B) sqrt(abs(pow(y,x)+log(y)))

C) sqrt(fabs(pow(x,y)+log(y)))

D) sqrt(abs(pow(x,y)+log(y)))

【题3.36】若有代数式

x3log10x,则正确的C语言表达式是 。

A) fabs(x*3+log(x))

B) abs(pow(x,3)+log(x))

C) abs(pow(x,3.0)+log(x))

D) fabs(pow(x,3.0)+log(x))

【题3.37】在C语言中,char型数据在内存中的存储形式是 。

A)补码 B)反码 C)原码 D)ASCII码

【题3.38】设变量n为float类型,m为int类型,则以下能实现将n中的数值保留小数点后两位,第三位进行四舍五入运算的表达式是 。

A)n=(n*100+0.5)/100.0 B)m=n*100+0.5,n=m/100.0

C)n=n*100+0.5/100.0 D)n=(n/100+0.5)*100.0

【题3.39】表达式18/4*sqrt(4.0)/8值的数据类型为 。

A)int B)float C)double D)不确定

【题3.40】设C语言中,一个int型数据在内存中占2个字节,则unsigned int型数据的取值范围为 。

A)0~255 B)0~32767 C)0~65535 D)0~21474837

【题3.41】设有说明:char w; int x; float y; double z;则表达式w*x+z-y值的数据类型为 。

A)float B)char C)int D)double

【题3.42】若有以下定义,则能使值为3的表达式是 。

int k=7,x=12;

A)x%=(k%=5) B)x%=(k-k%5) C)x%=k-k%5 D)(x%=k)-(k%=5)

【题3.43】设以下变量均为int类型,则值不等于7的表达式是 。

A)(x=y=6,x+y,x+1) B)(x=y=6,x+y,y+1)

C)(x=6,x+1,y=6,x+y) D)(y=6,y+1,x=y,x+1)

3.2填空题

【题3.44】在C语言中(以16位PC机为例),一个char型数据在内存中所占的字节数为【1】;一个int型数据在内存中所占的字节数为【2】。

【题3.45】在C语言中(以16位PC机为例),一个float型数据在内存中所占的字节数为【1】;一个double型数据在内存中所占的字节数为【2】。

【题3.46】若有以下定义,则执行表达式y+=y-=m*=y后的y值是【 】。

int m=5,y=2;

【题3.47】设C语言中,一个int型数据在内存中占2个字节,则int型数据的取值范围为【 】。

【题3.48】在C语言中的实型变量分为两种类型,它们是【1】和【2】。

【题3.49】C语言所提供的基本数据类型包括:单精度型、双精度型、【1】、【2】和【3】。

【题3.50】若s是int型变量,且s=6,则下面表达式的值为【 】。

s%2+(s+1)%2

【题3.51】若a是int型变量,则下面表达式的值为【 】。

(a=4*5,a*2),a+6

【题3.52】若x和a均是int型变量,则执行表达式(1)后的x值为【1】,执行表达式(2)后的x值为【2】。

(1)x=(a=4,6*2)

(2)x=a=4,6*2

【题3.53】若a、b和c均是int型变量,则执行下面表达式后,a值为【1】,b值为【2】,c值为【3】。

a=(b=4)+(c=2)

【题3.54】若a是int型变量,且a的初值为6,则执行下面表达式后a的值为【 】。

a+=a-=a*a

【题3.55】若a是int型变量,则执行下面表达式后a的值为【 】。

a=25/3%3

【题3.56】若x和n均是int型变量,且x和n的初值均为5,则执行下面表达式后x的值为【1】,n的值为【2】。

x+=n++

【题3.57】若有定义:int b=7; float a=2.5,c=4.7;则下面表达式的值为【 】。

a+(int)(b/3*(int)(a+c)/2)%4

【题3.58】若有定义:int a=2,b=3; float x=3.5,y=2.5;则下面表达式的值为【 】。

(float)(a+b)/2+(int)x%(int)y

【题3.59】若有定义:char c=‘\\010’;则变量c中包含的字符个数为【 】。

【题3.60】若有定义:int x=3,y=2; float a=2.5,b=3.5;则下面表达式的值为【 】。

(x+y)%2+(int)a/(int)b

【题3.61】若x和n均是int型变量,且x的初值为12,n的初值为5,则执行下面表达式后x的值为【 】。

x%=(n%=2)

【题3.62】假设所有变量均为整型,则表达式(a=2,b=5,a++,b++,a+b)的值为【 】。

【题3.63】C语言中的标识符只能由三种字符组成,它们是【1】、【2】和【3】。

【题3.】已知字母a的ASCII码为十进制数97,且设ch为字符型变量,则表达式ch=‘a’+‘8’-‘3’的值为【 】。

【题3.65】把以下多项式写成只含七次乘法运算,其余皆为减运算的表达式为【 】。

5X^7+3X^6-4X^5+2X^4+X^3-6X^2+X+10

【题3.66】若x和y都是double型变量,且x的初值为3.0,y的初值为2.0,则表达式pow(y,fabs(x))的值为【 】。

【题3.67】若有定义:int e=1,f=4,g=2; float m=10.5,n=4.0,k;则执行赋值表达式k=(e+f)/g+sqrt((double)n)*1.2/g+m后k的值是【 】。

【题3.68】表达式8/4*(int)2.5/(int)(1.25*(3.7+2.3))值的数据类型为【 】。

【题3.69】表达式pow(2.8,sqrt(double)(x)))值的数据类型为【 】。

【题3.70】假设m是一个三位数,从左到右用a、b、c表示各位的数字,则从左到右各个数字是bac的三位数的表达式是【 】。

因篇幅问题不能全部显示,请点此查看更多更全内容

Copyright © 2019- baoaiwan.cn 版权所有 赣ICP备2024042794号-3

违法及侵权请联系:TEL:199 18 7713 E-MAIL:2724546146@qq.com

本站由北京市万商天勤律师事务所王兴未律师提供法律服务