第三章 数据类型、运算符与表达式.doc_第1页
第三章 数据类型、运算符与表达式.doc_第2页
第三章 数据类型、运算符与表达式.doc_第3页
第三章 数据类型、运算符与表达式.doc_第4页
第三章 数据类型、运算符与表达式.doc_第5页
免费预览已结束,剩余1页可下载查看

下载本文档

版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领

文档简介

第三章数据类型、运算符与表达式一、选择题1.以下选项中合法的c语言标识符是。A) long B) _2Test C)3Dmax D)A.dat2.以下不能定义为C语言标识符的是。A) scanf B) Void C)int D)_3com_3.在以下各组标识符中,合法的c语言标识符是;。A)B0l B) table_l C) 0_t D) k% int t*.1 W10 pointA)Fast_ B) void C)pb1 D) Fast+Big Abs fabs beepA)xy_ B) longdouble C)*p D)CHAR 变量l signed history Flaut4.在以下各组标识符中,合法的c语言标识是;。A)print B) iam C)Pxg D)Cpp oodb one-half line# pow aBc 3pai His.age whileA)_maln B)If C)txt D)int enclude _max REAL k_2 sln turbo 3COM _0015.以下不能定义为c语言标识符的是。A)_1234_ B)2_int_ C)int_2_ D)_1_26.以下不能定义为c语言标识符的是。A) Main B) _0 C)_int D)sizeof7.以下叙述中错误的是。A) c语言的标识符允许使用保留字B) c语言的标识符应尽量做到“见其名知其意”c) c语言的标识符必须以字母或下划线开头D) c语言的标识符中,大、小写字母代表不同标识8.以下叙述中正确的是。A) 可以把define和if定义为C语言标识符B) 可以把define定义为C语言标识符,但不能把if定义为c语言标识符C) 可以把if定义为c语言标识符,但不能把define定义为c语言标识符D) define和if都不能定义为c语言标识符9.下面不属于c语言保留字的是。A) char B) while C)typedef D)look10.下面属于c语言保留字的是 。A) define B) include C)main D)enum11. 是c语言的数据类型说明保留字。A) Float B) signed C)integer D)Char12.不合法的C语言字符常量是 。A) 2 B) C) D) 48313.合法的c语言长整型常量是 。A) 5876 B) 0LC)2.0E10 D)(long)5876214.下列选项中,均是合法的c语言整型常量的是。A) 160 B) -0xcdf C)-01 D) -0x48a -0xffff 0la 986,012 2e5 0011 0xe 0668 0x15.十进制数8的C语言八进制数常量是。A) 10 B) 010 C)8 D) 0816.在C语言中,029是一个。A) 八进制数 B) 十六进制数 C)十进制数 D) 非法数17.以下选项中可作为c语言整数的是。A) 10110B B) 0386 C)0xffaa D) x2a218.c语言中将-8赋值给无符号字符型,则它的内存数据形式为。A) 11111000 B) 10001000 C) 00001000 D) 1111011119. 下列选项中,均是合法的c语言实型常量的是 。A) +1le+1 B) -.60 C) l 23e D)-e3 5e-9.4 12e-4 1.2e-.4 .8e-4 03e2 -8e5 +2e-l 5.e-020.以下选项中正确的c语言实型常量是 。A) 0 B) -10 C)1.9102 D)0.1921.以下选项中正确的c语言实型常量是 。A) 1.2e0.5 B) 3.14159E C).5E-3 D)E1522.以下选项中可作为c语言数值常量的是 。A) -80. B) -080 C)-8e1.0 D)-80.0e23.在c语言中,以下不合法的数值常量是 。A) 011 B) 1e1 C)8.0e0.5 D)00024. 是非法的c语言转义字符。A) b B) 0xf C) 037 D) 25.下面转义字符中错误的是 。A) 000 D) 14 C) x111 D) 226.下面转义字符中错误的是 。A) D) C) 86 D) 027以下选项中不是c语言常量。 A) e-2 B) 012 C) a D) n28.以下选项中 不是合法c语言数据类型。 A) signed short int B) unsigned long int C) unsigned int D) long short 29.设char a=70;则变量a 。 A) 包含1个字符 B) 包含2个字符 c) 包含3个字符 D)说明不合法30对于char cx=039;正确的判断是 。 A) 不合法 B) cx的值是03 c) cx的值为四个字符 D) cx的值为三个字符31. 已知short x=0xabcde; 则x的结果是 。 A) 赋值非法 B) 不确定 C) abcd D) bcde 32下列变量定义及赋初值中,合法的是 。A) short _a=1-.1e-1; B) double b=1+5e2.5;C) long do=0xfdaL; D) float 2_and=l-e-3;33.假设某表达式中包含int,long,unsigned,char类型的数据,则表达式最后的运算结果是_类型。A) int B) long C) uns igned D) char34.在c语言中,要求参加运算的数必须是整数的运算符是。A) B) * C) D) =35.下列运算符中,优先级最高的是。A) ( ) B) C)+ D) ,36.若int k=7, x12;则值为3的表达式是。A) x=(k=5) B) x=(k-k5) C) x=k-k5 D) (x=k)-(k=5)37.设有int x=11;则表达式(x+*1/3)的值是。A) 3 B)4 C) 11 D)1238.对于语句:f=(3.0,4.0,5.0),(2.0,1.0,0.0);的判断中,是正确的。A) 语法错误 B) f为5.0 C) f为0.0 D) f为2.039.设变量n为float类型,m为int型,则以下表达式能实现将n中的数值保留小数点后两位,第三位进行四舍五入运算。A) n=(n*100+0.5)/l00.0 B) m=n*100+0.5, n=m/100.0C) n=n*100+0.5/100.0 D) n=(n/100+0.5)*100.040.设以下变量均为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)41.假定有变量定义:int k6, x=12;则能使x、k值为5、6的表达式是 。A) x=+kl0 B) x=k+k5 C) x-=+k5 D) x-=k+542.在Turbo C 2.0中,若定义long a;则能给变量a赋值40000的正确语句是 。A) a=20000+20000; B) a=4000*10; C) a=30000+10000; D) a=4000L*10;43.设float m=4.0,n=4.0;使变量m值为10.0的表达式是 。A ) m-=n*2.5 B) m/=n+9 C) m*=n-6 D)m+=n+244.设int i=0,j=0;以下使变量i值为4的表达式是 。A) i=3, (j+)+i, i=j+1 B) j=i=(i=2)*2 C) i*=j=(j=6)+(i=4) D)j+=i+=j+=245.若变量a为int类型,且其值为3,则执行表达式a+=a-=a*a后,a的值是 。A) -3 B) 9 C) -12 D) 646.表达式3.6-5/241.2+52的值是 。A) 4.3 B) 4.8 C) 3.3 D) 3.847.若已定义x和y为double类型,则表达式x=l, y=x+3/2的值是 。A) l B) 2 C) 2.0 D) 2.548.有以下程序段: int c1=1, c2=2, c3; c3=1/c2*c1;执行后c3的值是 。A) 0 B) 0.5 C) l D) 249.设int n=20, i=4; 则赋值运算n=i+l执行后,n的值是 。A) 0 B) l C) 2 D) 350.有以下程序段: int m=3, n=4, x; x=-m+; x=x+8/+n;执行后x的值是 。A) 3 B) 5 C) -1 D) -251. sizeof(long)的值 。A) 1 B) 2 C) 3 D)452.设char c=20;则sizeof (c)的结果是 。A) 1 B) 12 C) l 20 D)2053.表达式x*=y+2还可以写为 。A) x=x*y+2 B) x=2+y*x C) x=x*(y+2 ) D) x=y+2*x54.若变量已正确定义并贼值,下面符合c语言语法的表达式是 。A) a:=b+l B) a=b=c+2 C) int(18.53) D) a=a+7=c+b55.以下变量定义和赋初值错误的是 。A) int n1=n2=l 0; B) char c=32;C) float f=3*100+2.2; D) double x=12.3E2;56.已定义ch为字符型变量,以下赋值表达式中错误的是 。A) ch= B) ch=62+3 C) ch=NULL D) ch=xaa57.已定义c为字符型变量,以下赋值表达式中正确的是 。A) c=97 B) c=97 C) c=97 D) c=9758.以下选项中,与k=n+完全等价的表达式是 。A) k=n, n=n+1 B) n=n+1, k=n C) k=+n D) k+=n+l59.若有以下定义;int a=0; double b=1.25; char c=A;#define d 2则下面表达式中错误的是 。A) a+ B) b+ C) c+ D) d+60.若变量a,b己经正确定义井赋值,符合c语言语法的表达式是 。A) a 2+b B) a*a+b C) aa+b D) aa+b61.已知double a, b; int w; 1ong c;且各变量己赋值,则下列表达式中正确的是 。A) a=a+b=b+ B) (int)w(a+b) C) (c+w)(int)a D) w=a=b62.以下为非法c语言表达式的是 。A) n=(i=2, +i) B) +(i+1) C) j+ D) x=+j63.若定义了int a, x, y;则下列表达式中不正确的是 。 A) x=3, y=5 B) +x C) x=y?+=x*30 D) a=y+x=3064.设x, y, u, v均为浮点型,与数学公式不等价的c语言表达式是 。 A)x*y/u*v B)x*y/u/v C) x*y/(u*v) D) x/(u*v)*y65.设float c, f;将数学公式能正确表示成c语言表达式的是 。A)c=5*(f-32)/9 B)c=5/9(f-32) C)c=5/9*(f-32) D)c=5/(9*(f-32)66.以下变量x, y, z均为double类型且已正确赋值,以下不能正确表示数学公式的c语言表达式是 。A) x/y*z B)x*(1/(y*z) C)x/y*1/z D)x/y/z67.与数学公式3xn/(2x-1)对应的C语言表达式是 。A) 3*xn/(2*x-1) B) 3*x*n/(2*x-1)C) 3*pow(x,n)/(2*x-1) D) 3*pow(n, x)/(2*x-1)68.以下不能正确计算数学公式值的c语言表达式是 。A) 1/3*sin(1/2)*sin(1/2) B) sin(0.5)*sin(0.5)/3C) pow(sin(0.5), 2)/3 D) 1/3.0*pow(sin(1.0/2),2)69.以下c语言表达式与数学公式计算结果不相符的是 。A) (a+b)*h/2 B) (1/2)*(a+b)*h C) (a+b)*h*1/2 D) h/2*(a+b)70.不用第三个变量,将变量a和b的值进行互换的操作是 。A) a+=b; b-=a; a-=b; B) b-=a; a-=b; a-=b; C) a+=b; b=a-b; a-=b; D) b-=a; a=b-a; a+=b;二、填空题1. C语言的标识符只能由大小写字母、数字和下划线三种字符组成,而且一个字符必须为_。2.字符常量使用一对_界定单个字符,而字符串常量使用一对_来界定若干个字符的序列。3.一个char数据在内存中所占字节数为_,其数值范围为_;一个short数据在内存中所占字节数为_,其数值范围为_;一个long数据在内存中所占字节数为_,其数值范围为_;一个float数据在内存中所占字节数为_,其数值范围为_。4.设int a; float f; double i;则表达式10+a+i*f值的数据类型是_。5.在c语言中,不同运算符之间运算次序存在_的区别,同一运算符之间运算次序存在_的规则。6.c语言表达式的运算对象可以是常量、函数调用和_。7.设x, i, j, k都是int型变量,表达式x=(i=4, j=16, k=32)运算后,x的值为_。8. 设x=5, a=l 7, y=2.7,则x+a5*(int)(x+y)2/7的值为_。9.设x=8.3, y=3.8,则(float)(x+y)/2+(int)x%(int)y的值为_。l0. 己知:char a=a, b=b, c=c, i; 则表达式i=a+b+c的值为_。11.已知:int a=9,n=7;则a+=a表达式运算后a的值为_。a-=2表达式运算后a的值为_。a*=7+a*3表达式运算后a的值为_。a/=a+a表达式运算后a的值为_。a%=(n%=4)表达式运算后a的值为_。a+=a-=a*=a表达式运算后a的值为_。12.若a为int型变量,则表达式(a=4*5,a*2), a+6的值为_。13.假设所有变量均为整型,则表达式(a=9, b=4, a+, b+, a+b)的值为_。14.有定义:double x=3.5, y=3.2;则表达式(int)x*0.5的值是_,表达式y+=x+的值是_。15.有定义: int m=5,n=3;则表达式m/=n+4的值是_,表达式m=(m=1,n=2,n-m)的值是_,表达式m+=m-=(m=1)*(n=2)的值是_。16.设int a=0,b=0,c; 则执行c=(a-=b-5), (a=b, b=3);后变量c的值是_。17.表达式53的值是_,表达式5-3的值是_,表达式-53的值是_,表达式-5-3的值是_。(提示:mn与m-m/n*n等价。)18.设int j=5;则执行j+=j-=j*j;后j的值是_。19.已知int x=17,y=5; 执行xx+/-y;后x,y的值分别为_。20设int x;则将x强制转换为双精度类型应写成_。21.数学公式的c语言表达式为_。22.数学公式的c语言表达式为_。23.已知a, b, c是一个十进制数的百位数、十位数、个位数,则该数的表达式为_。24.

温馨提示

  • 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
  • 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
  • 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
  • 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
  • 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
  • 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
  • 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。

评论

0/150

提交评论