版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领
文档简介
1、基本数据类型与数值表达式一、知识要点计算机的基本功能是进行数据处理。在C+语言中,数据处理的基本对象是常量和变量。运算是对各种形式的数据进行处理。数据在内存中存放的情况由数据类型所决定。数据的操作要通过运算符实现,而数据和运算符共同组成了表达式。本章是对C+语言中的数据类型、运算符、表达式等内容的全面介绍,要正确理解其特点,并灵活运用,主要掌握以下的知识要点:.掌握常量和变量的概念。.掌握整型数据和实型数据、字符型数据和字符串型数据的概念和区别。3掌握各种类型的变量说明及其初始化。.掌握算术运算、关系运算、逻辑运算、赋值运算、逗号运算、条件运算等概念。.掌握运算符的优先级、左结合和右结合规则。
2、.掌握表达式求值时的自动转换和强制类型转换。.掌握自加、自减运算的规则。.掌握常用数学函数的功能。二、例题分析与解答1.选择题 TOC o 1-5 h z 例题1:运算符+、=、*、=中,优先级最高的运算符是()。A.+B=C*D.=答案:C分析:根据C+语言对运算符优先级的规则,以上运算符优先级从低到高的次序为=、=、*。例题2:下列说法正确的是()。Acouta+&cd)?+d:a=y&chvB&!y)的值是()。A.0B.语法错ClD.“假”分析:根据C+语言中运算符优先级的高低,“!”运算符最高,关系运算符高于逻辑运算符。则上面的表达式转换为:1&1&1结果为1。答案:C。.填空题例题
3、8:如果s是int型变量,且s=6,则下面s%2+(s+1)%2表达式的值为。答案:1分析:%!算符是求余运算,得到的结果是相除后的余数。表达式转换为6%2+(6+1)%2=0+7%2=1。例题9:如果定义inta=2,b=3;f1oatx=5.5,y=3.5;则表达式(float)(a+b)/2+(int)x%(int)y的值为。答案:4.5分析:不同类型的数据混合运算时,可以使用强制类型转换符,强制将一种数据类型转换为另一种数据类型后再进行运算。对表达式,先求表达式的值,再转换值的类型,本题的运算结果为4.5。例题10:设所有变量均为整型,则表达式(e=2,f=5,e+,f+,e+f)的值
4、为。答案:9分析:逗号运算符是是将两个或多个表达式组合成一个表达式的运算符。求解时从左至右依次计算每个表达式的值,整个表达式的值就是最右边的表达式的值。本题的答案为9。例题11:已知字母a的ASCII码为十进制数97,且设ch为字符型变量,则表达式ch=a8-4的值为。答案:e分析:C+语言中,对字符数据进行算术运算,实际上就是对字符的ASCII码进行运算。以字符形式输出时,再将ASCII码转换为相应的字符输出。本题表达式为ch=97+8-4=101,101相应的ASCII为字符e。编程题例题12:编写一个程序,从键盘输入半径和高,输出圆柱体的底面积和体积。解:程序如下:#includevoi
5、dmain()doub1er,h,area,volume;coutr;couth;area=3.14*r*r;vo1ume=area*h;cout“底面积是:areaendl;cout“体积是:vvolumeendl;三、习题分析与解答C+语言中有哪些数据类型?分别说明它们的类型关键字、取值范围、类型长度。答:C+语言中的数据类型有:整型(短整型,整型,长整型);字符型;逻辑型;枚举型;实型(单精度,双精度,长双精度);引用型(指针,引用);复合型(结构,联合);空类型。字符常量与字符串常量的区别是什么?答:字符常量与字符串常量的主要区别在于:(1)定界符不同。字符常量使用单引号,而字符串常量
6、使用双引号。(2)长度不同。字符常量的长度固定为1,而字符串常量的长度,可以是0,也可以是某个整数。(3)存储要求不同。字符常量存储的是字符的ASCII码值,而字符串常量除了要存储有效的字符外,还要存储一个Z束标志0。说明下面的每个数据各属于哪一种(数值常量、字符常量、字符串、标识符、保留字、运算符、标点、非法数据)?2518-3.6712.8x1“x2”“1949.10cinK_name3ab“floatx,y“;if+“n?;“sy1.cpp32答:数值常量有:25,18,-3.67,12.8字符常量有:4,32字符串有:“4”,“x2”,“1949.10,“syl.cpp”保留字:cin
7、,int,endl,if运算符:+标点:?非法数据:“floatx,y;,3ab变量:x1,Kname4选择题(1)下列数据类型不是C+语言基本数据类型的是()。A.字符型B.整型C.实型D.数组答案:D(2)在C+语言中,080是()。A.八进制数B.十进制数C.十六进制数D.非法数答案:B(3)下列字符列中,可作为C+语言程序自定义标识符是()。A.switchB.D.do答案:B运算符+、=、=、中,优先级最低的运算符是()。C.= D. A.+B.=下列字符列中,可以作为“字符串常量”的是()。A.ABCB.xyzC.uvwD.a答案:B设变量m,n,a,b,c,d均为0,执行(m=a
8、=b)|(n=c=d)后,m,n的值是()。A.0,0B.0,1C.1,0D.1,1答案:C(7)字符串vmx432np102q”的长度是()。A.8B.10c.17D.16答案:A(8)在CH语言中,自定义的标识符()。A.能使用关键字并且不区分大小写B.不能使用关键字并且不区分大小写C.能使用关键字并且区分大小写D.不能使用关键字并且区分大小写答案:D(9)设有代码“inta=5;,则执行了语句a+=a-=a*a;后,变量a的值是()。A.3B.0C.-40D.-12答案:C(10)设a为5,执行下列代码后,b的值不为2的是()。A.b=a/2B.b=6-(-a)C.b=a%2D.b=a3
9、?3:2答案:C(11)下面的()均是C语言的整型常量。A.0 xffff和611B.01b和0 xa1C.986.012和0667D.2e4和0 x(12)数学公式W+三1写成C表达式,下面的()是正确的。A.sqrt(abs(pow(x,y)+exp(y)B.sqrt(abs(pow(y,x)+exp(y)C.sqrt(fabs(pow(x,y)+exp(y)D.sqrt(fabs(pow(y,x)+exp(y)答案:D.x为int类型,y为d。uble类型,指出下列各表达式值的类型。(1)1/3int(2)48Llong(3)5%3int(4)x*3/ydoublex+20int(6)(
10、int)yinty!=10bool(8)x10boolx10?x:sqrt(x)int或f1oat(10)x&ybool(11)truebool(12)(char)(x+10)char1.0/3f1oat(14)sizeof(float)intx,y,x+y,doub1e说明:(9)题,如果xl0成立,表达式值的类型为int,如果x10不成立,表达式值的类型为float。(15)题,为逗号表达式,x+y的值即为整个表达式的值,因而值的类型为double。bool型在C+用int代替,true值为1false值为0。.写出下列算术表达式的值:(1)x+a%3*(int)(x+y)%2/4x=2.
11、5,a=7,y=4.7答:上述表达式=2.5+1*(int)7.2%4=2.5+1*7%2/4=2.5(float)(a+b)/2+(int)x%(int)ya=2,b=3,x=3.5,y=2.5答:上述表达式=(float)5/2+3%2=2.5+1=3.5.设程序中有说明语句inta=20;doub1ex=4.7;charr=试求出下列每个表达式的值(假定各表达式互不影响)。答案答案?(1)a+20?(2)+r98 TOC o 1-5 h z 1+a/3%43?(4)10*sizeof(int)40char(a+20)(6)a=r|a=floor(x)0(7)a/9.02.222222(8
12、)x=pow(3,5)273.000000(9)x=(a+,r+)97.000000(10)cei1(x-0.5)5.000000(11)a=abs(a)%810-6712)x=fabs(-27.2)+633.200000(13)floor(x+0.5)5.000000?(14)ceil(x-=0.5)-0.5)4.000000floor(x*1000+0.5)/10004.70000016(?)floor(x+0.5)5.000000(17)f1oor(x*1000)/10004.700000718)a+rand()%40某一个随机整数a%=n%=2),n=55?此题运行时要给n赋初值,n必
13、须是整型奇数,n为整型偶数出错。a+=a-=a*=a0说明:函数ceil(x),返回大于等于x的最小整数;floor(x),返回小于等于x的最大整数;rand(),返回032767之间的整数。8.设程序中有说明语句intx=20;f1oaty=4.7;charch=k;试求出下列每个表达式的值(假定各表达式互不影响)答案答案 TOC o 1-5 h z x=0072)x!=y1(3)x+210(4)a=A0(5)ch!=016(?)x0&y01(7)x0&11?(8)y0&00(9) !(x|y)=!x&!y 0X+!=20|y1!ch=ch0(12)!(x&y)=!x|!y1说明:C+语言提
14、供了三种逻辑运算符:!,&,|,其中!逻辑非的优先级最高,&逻辑与次之,|逻辑或最低。!逻辑非是右结合性,&逻辑与和|逻辑或是左结合性。四、习题选择题(1)C+语言中的标识符只能右字母、数字和下划线三种字符组成,且第一个字符()。A必须为字母B,必须为下划线C.必须为字母或下划线D.可以是字母、数字和下划线中任一中字符)下面正确的字符常量是()。A.CB.C.WD.(3)如果说明语句:charc=72;则变量c()。A包含1个字符B.包含2个字符C.包含3个字符D.说明不合法,c的值不确定(4)表达式18/4*sqrt(4.0)/8值的数据类型为()。A.intB.floatC.doub1eD
15、.不确定(5)关于逻辑运算符的说法正确的是()。A.它们都是双目运算符,优先级相同B.语句inta=0,c=1,b;b=a&c+;”执行后,c的值为2C.语句inta=0,c=1,b;b=a|c+;执行后,c的值为2D.语句inta=1,c=1,b;b=a&c+;”执行后,c的值为2(6)设intm=7n=12;则表达式为3的是()。An%=(m%=5B.n%=(m-m%5C.n%=m-m%5D.(n%=m)-(m%=5)(7)数学公式yx+lny,正确的CH语言的表达式是()。A.sqrt(fabs(pow(y,x)+log(y)B.sqrt(fabs(pow(x,y)+1og(y)C.sq
16、rt(abs(pow(y,x)+log(y)D.sqrt(abs(pow(x,y)+1og(y)(8)有如下程序段:inta=14,b=15,x;charc=A;x=(a&b)&(cb)&(n=cd)后n的值为()。A.1B.2C.3D.4(18)用C+的语言表达式表布|x3+log10 x|的正确是()。A.fabs(x*3+log(x)B.abs(pow(x,3)+log(x)C.fabs(pow(x,3.0)+log(x)D.abs(pow(x,3.0)+log(x)(19)设intk=7,x=12;则能使值为3的表达式是。Ax%=(k%=5B.x%=(k-k%9C.x%=k-k%5D.
17、(x%=k-(k%=5(20)设有语句:inta=7;floatx=2.5,y=4.7;则表达式x+a%3*(int)(x+y)%2/4的值是()。A.2.500000B.2.750000C.3.500000D.0.000000(21)设有语句intx=3,y=4,z=5;则下面表达式中值为0的是()。A.x&yB.x=yC.x|y+z&y-zD.!(xy)&!z|1)(22)表达式18/4*sqrt(4.0)/8值的数据类型为()。A.intB.floatC.doubleD.不确定(23)判断char型变量n是否为小写字母的正确表达式为()。Aav=n=a)&(n=n)|(z=a)&(n=z
18、)填空题“A与A的区别是:前者表示的是,占用个内存空间,后者表示的是,占用个内存空间。表达式8/4*(int)2.5/(int)(1.25*(3.7+2.3)值的数据类型为。(3)已知c的ASCII码为十进制数99,设k为字符型变量,则表达式卜=c+9-8的值为。(4)设有说明语句inta=6;,则运算表达式a+=a-=a*a后,a的值为。(5)C+M达式表达:y=ax2+bx+c,5x3+9xy/5-xyo(6)设a、b、c都是int型变量,则运算表达式a=(b=4)+(c=2)后,a值为_,b值为,c值为。C+语言中的标识符只能由三种字符组成,它们是,和_。(8)有语句:chark=010;则变量k中包含的字符个数是。(9)在C+诩言中,表示逻辑“真值用。(10)表达式pow(2.8,sqrt(doub1e(x)值的数据类型为。(11)设m是一个三位数,从左到右用a、b、c表示各位是数字,则从左到右各个数字是cba的三位数的表达式是中中。(12)设有语句inta=3,b=4,c=5;则表达式:!(a+b)+c1&b+c/2的值为,表达式a|b+c&b=c的值为。(13)请
温馨提示
- 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
- 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
- 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
- 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
- 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
- 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
- 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。
最新文档
- 汽车旧车销售区域市场开发考核试卷
- 硅冶炼厂的工艺流程再造考核试卷
- 托班关于排队的课程设计
- 电子智能手表表盘材质发展趋势分析考核试卷
- 生活服务OO平台用户增长策略研究考核试卷
- 玉石文化在珠宝设计中的创新实践考核试卷
- 物料搬运设备在智能制造趋势下的挑战考核试卷
- 2024年特定信托受益权转让与回购担保合同
- 物理系课程设计范文
- 特殊数据输出课程设计
- (完整版)自动感应门施工方案
- _ 基本粒子与宏观物体内在联系
- 象棋比赛积分编排表
- 工会新闻的写作培训讲义(共36页).ppt
- 小学赣美版六年级美术上册第二十课向往和平课件(16张)ppt课件
- 中药饮片购进验收记录表格模板
- TCM远红外发展初析
- 房地产开发企业土地增值税清算政策与实务操作(成都市)解读
- 房地产估计第九章假设开发法练习题参考答案
- [爆笑小品校园剧本7人]爆笑小品校园剧本
- 第五章 逆向选择
评论
0/150
提交评论