C语言-数据类型习习题及答案_第1页
C语言-数据类型习习题及答案_第2页
C语言-数据类型习习题及答案_第3页
C语言-数据类型习习题及答案_第4页
全文预览已结束

下载本文档

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

文档简介

PAGE4第二章数据类型,运算符与表达式一.选择题1.不合法的字符常量是(B)。A)‘\t’B)“A”C)‘a’D)’\x322、合法的字符常量是(D)。A)‘\084’B)‘\84’C)‘ab’D)’2.(B)是C语言提供的合法的数据类型关键字。A)FloatB)signedC)integerD)Char3.在以下各组标识符中,合法的标识符是(4)。(1)A)B01B)table_1C)0_t(2)A)Fast_B)voidC)pblD)<book>(3)A)xy_B)longdoubleC)*pD)CHAR(4)A)sjB)IntC)_xyD)w_y234.属于合法的C语言长整型常量的是(B)。A)5876273B)0LC)2E10D)(long)58762735.下面选项中,不是合法整型常量的是(B)。A)160B)-0xcdgC)-01D)-0x48a6.判断intx=0xaffbc;x的结果是(B)(turboc版本)。A)赋值非法B)溢出C)为affbD)为ffbc7.下面选项中,均是合法浮点数的是(B)。A)+1e+1B)-.60CA)5e-B)12e-4C)-.4A)03e2B)-8e5C)+2e-1D)8.在C语言中,要求参加运算的数必须是整数的运算符是(C)。A)/B)*C)%D)=9.在C语言中,字符型数据在内存中以(D)形式存放。A)原码B)BCD码C)反码D)ASCII码10.下列语句中,符合语法的赋值语句是(C)。A)a=7+b+c=a+7;B)a=7+b++=a+7;C)a=(7+b,b++,a+7);D)a=7+b,c=a+7;11.(B)是非法的C语言转义字符。A)‘\b’B)‘\0xf’C)‘\037’D)‘\’’12.对于语句:f=,,,,,;的判断中(B),是正确的。A)语法错误B)f为5.0C)f为13.与代数式(x*y)/(u*v)不等价的C语言表达式是(A)。A)x*y/u*vB)x*y/u/vC)x*y/(u*v)D)x/(u*v)*y14.在C语言中,数字029是一个(D)。A)八进制数B)十六进制数C)十进制数D)非法数15.C语言中(TurboC环境)整数-8在内存中的存储形式为(A)。A)000B)00C)000000000001000D)11116.对于charcx=’\039’;语句,正确的是(A)。A)不合法B)cx的ASCII值是33C)cx的值为四个字符D)cx的值为三个字符17.若intk=7,x=12;则能使值为3的表达式是(D)。A)=(x%=(k%=5)B)x%=(k-k%5)C)x%=k-k%5D)(x%=k)-(k%=5)18.为了计算s=10!(即10的阶乘(24320)),则s变量应定义为(D)。A)intB)unsignedC)longD)以上三种类型均可19.以下所列的C语言常量中,错误的是(B)。A)0xFFB)0.5C)2L20.假定x和y为double型,则表达式x=2,y=x+3/2的值是(D)。A)B)3C)21.以下合法的赋值语句是(A)。A)x=y=100B)d――C)x+yD)c=int(a+b)22.以下选项中不属于C语言的类型是(D)。A)signedshortintB)unsignedlongintB)unsignedintD)longshort23.设以下变量均为int类型,则值不等于7的表达式是(C)。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)24.在16位C编译系统上,若定义longa;,则能给a赋40000的正确语句是(D)。A)a=20000+20000;B)a=4000*10;C)30000+10000;D)a=4000L*10L;二.填空题1.在C语言中(以16位PC机为例),一个char数据在内存中所占字节数为1,其数值范围为-128~127;一个int数据在内存中所占字节数为2,其数值范围为-32768~32767;一个long数据在内存中所占字节数为4,其数值范围为-48~47

;一个float数据在内存中所占字节数为4,其数值范围为~

。语言的标识符只能由大小写字母,数字和下划线三种字符组成,而且第一个字符必须为字母或下画线

。3.字符常量使用一对引号界定单个字符,而字符串常量使用一对双引号来界定若干个字符的序列。4.设x,i,j,k都是int型变量,表达式x=(i=4,j=16,k=32)计算后,x的值为32。5.设x=,a=7,y=,则x+a%3*(int)(x+y)%2/4为。6.设a=2,b=3,x=,y=,则(float)(a+b)/2+(int)x%(int)y为。7.已知:chara=’a’,b=’b’,c=’c’,i;则表达式i=a+b+c的值为38。8.已知inta=12,n=5;则:表达式运算后a的值各为0。a+=aa-=2a*=2+3a/=a+an%=(n%=2)a+=a-=a*=a9.设inta;floatf;doublei;则表达式10+’a’+i*f值的数据类型是double。10.若a为int型变量,则表达式(a=4*5,a*2),a+6的值为26。11.假设所有变量均为整型,则表达式(a=2,b=5,a++,b++,a+b)的值为9。12.已知a,b,c是一个十进制数的百位,十位,个位,则该数的表达式是a*100+b*10+c。13.定义:doublex=,y=;则表达式(int)x*的值是,表达式y+=x++的值是。14.定义:intm=5,n=3;则表达式m/=n+4的值是0,表达式m=(m=1,n=2,n-m)的值是1,表达式m+=m-=(m=1)*(n=2)的值是-2。15.表达式5%(-3)的值是2,表达式-5%(-3)的值是-2。16.若a是int变量,则执行表达式a=25/3%3后,a的值是2。三.判断题1.在C程序中对用到的所有数据都必须指定其数据类型。【√】2.一个变量在内存中占据一定的存储单元。【√】3.一个实型变量的值肯定是精确的。【×】4.对几个变量在定义时赋初值可以写成:inta=b=c=3;【×】5.自增运算符(++)或自减运算符(--)只能用于变量,不能用于常量或表达式。【√】6.在C程序的表达式中,为了明确表达式的运算次序,常使用括号“()”。【√】7.%运算符要求运算数必须是整数。【√】8.若a是实型变量,C程序中允许赋值a=10,因此实型变量中允许存放整型数。【×】语言不允许混合类型数据间进行运算。【×】四.简答题1.为什么C语言的字符型可以进行数值运算2.简述‘a’和“a”的区别。3.程序:intm=12;m=15;为什么整型变量m的值在运算后不是当初的12,而是15五.程序阅读题1.写出以下程序运行的结果。main(){

charc1=’a’,c2=’b’,c3=’c’,c4=’\101’,c5=’116’;

printf(“a%cb%c\tc%c\tabc\n”,c1,c2,c3);

printf(“\t\b%c%c”,c4,c5);}2.写出以下程序运行的结果。main(){

温馨提示

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

评论

0/150

提交评论