第2章总结范文.doc_第1页
第2章总结范文.doc_第2页
第2章总结范文.doc_第3页
第2章总结范文.doc_第4页
第2章总结范文.doc_第5页
已阅读5页,还剩5页未读 继续免费阅读

下载本文档

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

文档简介

第2章总结范文 第2章运算符和表达式优先级运算符名称计算结果结合性目数1、()、.、-?2-、*、&、?单目(类型)强制类型转换计算结果转换后类型的值。 +、-自增、自减(整型变量)整型变量自身会自增,计算结果前缀?自增后的值;后缀?自增前的值!逻辑非计算结果非0?00?1sizeof长度sizeof(表达式)3*、/、%算术/整数相除,结果是整数。 %用于整数?双目4+、-5左移、右移位运算符6、=、=关系计算结果关系成立?1;不成立?0。 7=、!= 8、 9、10&、|按位与、异或、或位运算符11&逻辑与、逻辑或短路计算0&x?01|x?1x不计算12|13?:条件计算结果判定式非0,?表达式1;判定式0,?表达式2。 ?三目14=、/=、*=、%=、+=、-=、=、&=、=、|=赋值变量名=值或表达式复合赋值a#=b?a=a#b赋值运算会修改变量的值。 左侧必须是变量。 ?双目15,逗号计算结果最右边表达式的值。 ?表达式的计算依据结合性,先计算括号内数据,再根据优先级顺序计算。 算术表达式的书写常用数学库函数#include1.绝对值|i|x|int abs(int i)整数绝对值double fabs(double x)双精度数绝对值2.指数与对数ex logexlog10x xy10p doubleexp(double x)double log(double x)double log10(double x)double pow(double x,double y)double pow10(int p)x doublesqrt(double x)3.反三角函数cos-1(x)sin-1(x)tan-1(x)tan-1(y/x)double acos(double x)double asin(double x)double atan(double x)double atan2(double y,double x)4.三角函数cos(x)sin(x)tan(x)double cos(double x)double sin(double x)double tan(double x)5.随机数void srand(unsigned seed)初始化随机数发生器int rand()产生一个随机数并返回这个数习题 1、若有定义int m=6;则正确的赋值表达式是()。 A.m*7B.m*5=8C.m-=m*6D.double(-m) 2、语句k=(m=5,n=+m);运行之后,变量k、m、n的值依次为()。 A.5,5,6B.5,6,5C.6,6,5D.6,6, 63、语句x=5%4+(4/5);运行之后,整型变量x的值为()。 A.1B.2C.3D. 04、()语句符合C语言语法。 A.float z=28,int x,y=18;B.int x=25,y=25,z=25;C.int x=25:y=25:z=25;D.int x+y=z; 5、若有定义int a,b;float x,则以下不符合C语言语法的表达式是()。 A.x%7B.x/=a-b C.a=b=2D.x=(float)a/b 6、若有定义int m=4,n=5;float k;,则以下符合C语言语法的表达式是()。 A.(m+n)*=k B.m=(n=5)C.k=float(n)/m D.n%2. 57、若有定义int a,x;则语句a=(x=8,x+8);运行后,变量a、x的值依次为()。 A.16,8B.8,8C.16,16D.8, 168、若变量m,n,t已定义且赋予初值,则正确的表达式是()。 A.m=m+1=t-n B.m=6+n+t,m+C.m=m2D.m=int(5.6%4) 9、若有定义int a=6;则语句a*=a-=a/=3;运行后,a的值是()。 A.10B.0C.34D. 2410、若有定义int x=1,y=2,n=3;则()为正确的表达式。 A.x=y*3,y=(x+n)/y B.x=ny C.float(y/n)D.(x+y)(y+n) 11、若有定义int a=5,b=2;则表达式b=(a!=5)的值为()。 A.5B.0C.3D. 212、逗号表达式(a=15,a*4),a+15的值为()。 A.15B.30C.75D. 6013、若有定义int b=-15;则()为正确的赋值表达式。 A.b+=b*3B.b=*5C.*b=6D.b+10=- 514、若有定义int x,a,b;语句x=(a=2,b=3,a+b);运行后,x、a、b的值依次为()。 A.235B.325C.523D. 53215、若有定义int a,b=5;语句a=(b/2)+b%2;运行后,a的值为()。 A.0B.3C.4D. 216、若有定义int a=3;语句a+=a-=a*a;运行后,a的值为()。 A.0B.-3C.-12D.- 617、下列语句中,符合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; 18、()是正确的叙述。 A.(int)5.0/6与5/6等价B.G与G等价C.5/6与5.0/6.0等价D.+3与4等价 19、()是正确的叙述。 A.表达式m+M是合法的B.若变量x,y为整型,则(a+b)+是合法的C.强制类型转换运算的优先级高于算术运算D.表达式m*n是不合法的 20、下面叙述错误的是()。 A.算术运算符中只有*、/优先级高于关系运算符B.模运算符%是C语言基本的算术运算符C.自加和自减运算符只能用于变量,而不能用于常量或表达式D.算术运算符中不包含=运算符 21、下面叙述正确的是()。 A.C语言中整型与字符型变量的混合运算表达式的结果是整型B.(3+9)+是正确表达式C.模运算符%两边运算数的数据类型是任意的D.abc+xxx是正确表达式 22、下面叙述中,错误的是()。 A.C语言中的表达式求值,是按其运算符的优先级先高后低的次序进行B.自增与自减运算符的结合方向为“自右至左”C.关系运算符的优先级低于算术运算符D.C语言算术运算符不包含模运算符“%” 23、若有定义int i=1,j=9;则表达式(+j)*(i-)的值为()。 A.0B.10C.9D. 824、设整型变量x为7,使整型变量y不为2的表达式是()。 A.y=x%3B.y=x/3C.y=(+x)/3D.y=8-(-x) 25、若已定义int a=3,b=2,c=1;则语句+a|+b&+c;运行后b的值为()。 A.0B.3C.1D. 226、若有定义int i=5,j=4;则语句i/=+j;运行后i的值为()。 A.10B.1C.1.25D. 027、若有定义int r,x=245;则语句r=x/100%9;运行后r的值为()。 A.2B.5C.0D. 2728、若有定义int i=3,j=6;则表达式(-i)*(j+)的值为()。 A.18B.15C.12D. 1029、若有定义int x,y,z;语句x=(y=z=3,+y,z+=y);运行后,x的值为()。 A.6B.8C.7D. 330、若已定义int x=5,y=9,z;语句z=x=y;运行后z的值为()。 A.1B.t.C.0D.f. 31、判定逻辑值为“真”的最准确叙述是()。 A.1B.大于0的数C.非0的整数D.非0的数 32、若已定义int x=-16,y=-12,z;语句z=x=100)&(s300)B.100=s=100)&(s=100)and(s=b|b A.变量i的值B.变量j的值C.0D. 136、下列表达式()不能用来判断整型变量x中的值是否为奇数。 A.x%2=1B.!(x%2=0)C.!(x%2)D.x% 237、若有定义int a=3,b=2,c=3;则值为0的表达式是()。 A.(a-b)=(c/b)B.a=c C.c-b|a+b&(b*c-a-c)D.(b*c-a-c)&(b*c-a-b) 38、若已定义int x=4,y=2,z=0;则表达式(x-ybc的值是()。 A.0B.1C.2D. 340、执行以下语句后,b的值是()。 int a=5,b=6,c=1,x=2,y=3,z=4;(a=cx)|(b=yz);A.0B.1C.-1D. 641、x的值在-20至-5之间为“真”,否则为“假”的正确逻辑表达式为()。 A.-20-20&x-20)&!(x-5)D.-5 2042、若有定义int a;则表达式()不能用来判断a值为奇数是“真”,偶数是“假”。 A.a%2=1B.!(a%2)C.a%2D.!(a%2=0) 43、若有定义int a=1,b=2,c=3,d=4,t=2,k=2;语句(t=a A.2B.1C.0D.- 44、若有定义int x=1,y=2,z=3;则表达式()的值为0。 A.!(xy|x 45、若有定义:int a=3,b=5,c=8;则表达式!(a-b)|(c-b)的值为()。 A.1B.0C.2D. 346、若有定义:int a;且表达式!a的值为0,则表达式()的值为1。 A.a!=0B.a=0C.a=0D.!(a0) 47、已定义double k=3.6;则正确的赋值表达式是()。 A.k=double(-3.6)B.k%3C.k=k*(-1.0)=-3.6D.k+=k-=(k=1.2)*(k=3) 48、已定义char c=A;则正确的赋值表达式是()。 A.c=028B.c=(c+)%4C.c+1=66D.c+=127- 49、已定义int m=A;则正确的表达式是()。 A.2*m=m+B.m=int(-3.2)C.m%3D.m=m-m=m- 550、设已定义float a=2.0,b=3.0;使a值为5.0的表达式是()。 A.a+=B.a*=b+2.0C.a/=b+2.0D.a-=b+2. 051、若已定义int m=7;float k=5.5;则表达式k+m%2/4的值为()。 A.6.375B.6.75C.5.75D.5. 552、若已定义int a=3,b=3,x=1,y=2;表达式(a=yx)&(x=ba)的值是()。 A.6B.1C.9D. 053、若有定义int a=2,b=3;float x=5;则表达式x*b/a的值是()。 A.7.5B.7C.6D. 554、若有定义int x=8;float y=130;char z=A;则表达式x+z%(int)y的值是()。 已知A的ASCII码的十进制值为65A.运行时产生错误信息B.8C.73D.8. 555、若已定义int m=7,n=4;float x=3.0,y=8.0,k;则执行语句k=m/2+n*x/y;后,变量k的值是()。 A.3B.4C.4.5D. 556、若有定义float x=2,y=4,h=3;下列表达式中与(x+y)*h/2.0计算结果不相符的是()。 A.(x+y)*h/2B.(x+y)*h*1/2C.(1/2)*(x+y)*h D.h/2*(x+y) 57、表达式2+sqrt(16.0)/4结果的数据类型是()。 A.double B.int C.char D.void 58、若有定义int a=4,b=5,c=6;则表达式(1.0*a+b)/c的值是()。 A.1.5B.1C.4D.4. 559、若有定义float x=3.5,y=3.6;则表达式()的值为6。 A.(int)x+(int)y B.x+y C.(int)(x+y)D.int(x+y) 60、若有定义int x;char c=A;则正确的赋值表达式是()。 (说明A的ASCII码的十进制值为65,a的ASCII码的十进制值为97)A.x=c+32B.x=c+ABCC.x=c+CBAD.x=ABC 61、若有定义float x=2,y;i

温馨提示

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

评论

0/150

提交评论