欢迎来到课桌文档! | 帮助中心 课桌文档-建筑工程资料库
课桌文档
全部分类
  • 党建之窗>
  • 感悟体会>
  • 百家争鸣>
  • 教育整顿>
  • 文笔提升>
  • 热门分类>
  • 计划总结>
  • 致辞演讲>
  • 在线阅读>
  • ImageVerifierCode 换一换
    首页 课桌文档 > 资源分类 > DOCX文档下载  

    浙江大学C语言总复习题—基本数据类型和运算.docx

    • 资源ID:1305204       资源大小:77.33KB        全文页数:6页
    • 资源格式: DOCX        下载积分:5金币
    快捷下载 游客一键下载
    会员登录下载
    三方登录下载: 微信开放平台登录 QQ登录  
    下载资源需要5金币
    邮箱/手机:
    温馨提示:
    用户名和密码都是您填写的邮箱或者手机号,方便查询和重复下载(系统自动生成)
    支付方式: 支付宝    微信支付   
    验证码:   换一换

    加入VIP免费专享
     
    账号:
    密码:
    验证码:   换一换
      忘记密码?
        
    友情提示
    2、PDF文件下载后,可能会被浏览器默认打开,此种情况可以点击浏览器菜单,保存网页到桌面,就可以正常下载了。
    3、本站不支持迅雷下载,请使用电脑自带的IE浏览器,或者360浏览器、谷歌浏览器下载即可。
    4、本站资源下载后的文档和图纸-无水印,预览文档经过压缩,下载后原文更清晰。
    5、试题试卷类文档,如果标题没有明确说明有答案则都视为没有答案,请知晓。

    浙江大学C语言总复习题—基本数据类型和运算.docx

    第2章根本数据类型和运算学习和解题要点1 .数据手型C语画迎西皿匕别的语言丰富。要学好这局部内容,首先要掌握C语言的数据在内存中的表ZjSo整型数据:以二进制的形式表示(1) int类型正数:如123(+123)用16位二进制(二个字节)表示原码t符号位0表示正补码(原码同)最大正整数215-i=214+213+212+211 如-123负数:原码反码(原码同)反码(符号位不动,昌同取应-IIOIoIOIoIOIOIoIClIIIIllM补码(补码加D标嬴1表示负补码求原负数符号鹿藩群醉区1取反最大负整数II一I一-215=32768因为-ffiEIl而不用-(215-l)(2) unsigned(int)类型称为无符号整数,它不是指不IIOlQMQMQIddIIllIl皿I混指HIIOIdQHQIdoIoHIHIIOH血16位二进制都用来表示数,因此最大数215+214+213+212+211+21+29+2827+26+25+24+23+22+21+20=65535最小数0(3) long(int)类型用32位二进制(四个字节亚皿皿皿血臼(4) short类型有的计算机(小型、中型、大4ooooooooIdQlQMQMdobhort用16位二进制(二个字节)表示。因此C语言中,short一定是短整型,long一定是长整型,而int因不同的系统而不同。PC586机int即Short,所以一般不用short。(5)在C语言中,整型常量有三种形式的写法:十进制整数(0-9)表示。通常整数的写法。八进制整数(0-7)表示。在整数的前面加数字0。十六进制整数(0-f)表示。在整数的前面加Ox。长整型常量表示方法:在整数的后面加L或Io字符型数据:以二进制的形式表示char型用8位二进制(一个字节)表示如匕,在程序中要用单引号表示,输出时无单引号,内存中表示为26+25+20=97即ASCn码97实型数据:以二进制的形式表示(1)float类型如123.45(+123.45)用32位二进制(四个字节)表示为0.12345X103不同的系统,n的位数有不同,n长,精度高,但可表示的指数小,能表示的数的范围小。反之,那么能表示的数的范围大,但精度低。float类型又称为“浮点”类型,把实数的小数点都看成在第一位,而用指数位“浮动”小数点。(2)double类型与float同只不过用64位二进制(八个字节)表示。因此精度高,称双精度。2.变量C语数据类西区)还天的概念孑一个名字(标识符),可放什么样的辛在内存的一般数据区(又称静态数据卜用static或auto(可缺省)来规定。争个变量都有地址,这在指针类型时要生变化,因此称之为变量。后的余数,也是整数,注意2%5得2ZU定表.时而Ihn位11、float、I-LlUJ,余W32-n位龙病12345的二进制表示03的二进制表示同时,7用到。型3.运算本也XI而不是Oo尸量用它的布效的使用范围,称之那作用域个最后,1小数局部指数符指数发I0.12345+口出舁付1-TE.足殳歪姒,6舁中木TE罡除(2)双目运算符/的两边如果是整数,那么结果也是整数,5/2结果为2而不是2.5,即使是floatx;x=l2;X中也只有0.0,要人为的写成x=l2.0或x=1.0/2,X中才是0.5。(3)单目运算符+-放在运算对象的前面时,称为“先加(减)1,后使用”,这一般不会搞错。当放在运算对象的后面时,称为“先使用,后加(减),这时要注意什么时候“使用”。如i=3;(i+)+(i+)+(i+)结果是9而不是12,这里,三个i相加是“使用”,使用后才三次加1,i成为6,“使用”是以整个表达式为准。而i=3;(+i)+(+i)+(+i)结果是18而不是15,这里,三个i依次加1成为6,然后再“使用”。也是以整个表达式为准。又如i=l;if(i-)Printfe输出是0而不是1。这是因为if()中i-是整个表达式,先用i为1,用于“判断”成立,这算“使用”了,然后i减1成为0,输出时i已为0。同理charc=W;switch(c+)case'A':printfC*%c,c);break;,输出为B。(4) .算术自反赋值运算符中,注意二赋值号右边是一个整体,如c%=a-3是C=C%(a-3)而不是c=c%a_3o(5) .关系运算符中,注意等于比拟运算符“二="与赋值运算符“二”容易疏忽,二者是绝然不同的,不然会引起很大的错误。如:i=0;if(i=D判断得结果应该是不成立,假设写成:if(i'l)那么变成给i赋予1,赋值表达式的结果也是L判断结果是成立的。(6) .应该熟记运算符及其优先级汇总表,熟记运算符之间的运算次序及结合方向。4.表达式注意的问题(1) .在算术表达式中应注意各类数值型数据间的混合运算问题,如下:doublefloatfloat型一定先转换成double型参加运算。long运算对象不同时转换方向。unsignedintchar,shortchar,short型一定先转换成int型参加运算。(2) .C语言无“真假值”,判断成立那么结果为1,不成立那么结果为0。而当表达式的值为非0那么认为“真”,当表达式的值为。那么认为“假”。(3) .关系表达式中,数学上的0<x<10不能写成0<x<10而应写成0<x&&x<10,不然会引起很大的错误。如:当x=20时,数学上(KXGO是不符合的,但在C程序中认为成立。这是因为C程序从左向右判别,0<x成立,那么结果为1,1<10也成立。(4) .在“&&”连接的逻辑表达式中,当左边表达式的值为0,那么C语言不再计算右边表达式,因为无论右边表达式的值为什么,整个逻辑表达式的值都为0。同样,在“II”连接的逻辑表达式中,当左边表达式的值为非0,那么C语言不再计算右边表达式,因为无论右边表达式的值为什么,整个逻辑表达式的值都为1。如:inta=b=m=n=l;(m=a!=b)&&(n=a!=b)a!=b不成立为0,In得0,n仍为1inta=b=m=n=0;(m=a=b)|(n=a=b)a=b成立为Lm得1,n仍为0(5) .C语言中,赋值号“二”,逗号“,”都是运算符。a=10是赋值表达式,a=10;是赋值语句,sum=O,i=0是逗号表达式,它是由二个赋值表达式用逗号运算符连起来的逗号表达式。练习题一、单项选择题1.以下数据中属于“字符串常量”的是OOA."a"B.ABCC.'abcO'D.'a'2.以下数据中属于“字符串常量”的是()。A.ABCB."ABC"C.'abc'D.,a,3.在PC机中,d在内存占用的字节数是()。A.1B.2C.3D.44.在PC机中,,axfr在内存占用的字节数是()oA.5B.6C.3D.45.字符串“ABC”在内存占用的字节数是()。A.3B.4C.6D.86.字符串""ABCD”在内存占用的字节数是()。A.4B.6C.7D.87.在C语言中,合法的长整型常数是()。A.OLB.4962710C.0.054838743D.2.1869el08.在C语言中,合法的短整型常数是()。A.OLB.0821C.40000D.0x2a9.以下数据中不属于“字符常量”的是()。A.'a'B.'160'C.'070'D.07010. Char型常量在内存中存放的是()oA.ASCIl代码值B.BCD代码值C.内码值D.十进制代码值11 .设整型变量叫n,a,b,c,d均为0,执行(m=a=b)(n=c=d)后,m,n的值是()。A.O,OB.0,1C.1,OD.1,112 .设整型变量m,n,a,b,c,d均为L执行“(m=a>b)fefc(n=a>b)”后,m,n的值是()。A.O,OB.O,1C.1,0D.1,113 .设a为2,执行以下语句后,b的值不为0.5的是()。A.b=1.0aB.b=(float)(la)C.b=l(float)aD.b=l(a*1.0)14 .设a为5,执行以下语句后,b的值不为2的是()。A.b=a2B.b=6-(-a)C.b=a%2D.b=a>3?2:215 .执行语句“x=(a=3,b=a一)”后,x,a,b的值依次为()。A.3,3,2B.3,2,2C.3,2,3D.2,3,216 .intb=0,x=l;执行语句rtif(x+)b=x+l,后,x,b的值依次为()。A.2,3B.2,0C.3,0D.3,217 .设有语句int a=3;A. 3B. 0 C. 918 .设有语句int a=3;A. 3B. 0 C. 9那么执行了语句a+=a-=a*a;后,变量a的值是D.-12那么执行了语句a+=a-=a*=a;后,变量a的值是D.-1219 .inta=4,b=3,c=-2,d=2;逻辑表达式a>0&&b&&c<0&&d>0的值是()。A.1B.OC.-1D.出错20 .在以下一组运算符中,优先级最高的运算符是()。A.<=B.=C.%D.&&21 .设整型变量i的值为3,那么计算表达式ii后表达式的值为()oA.0B.1C.2D.表达式出错22 .设整型变量i,j=3;那么计算表达式i=j+j后i,j的值为()。A.4,4B.6,6C.4,6D.6,423 .设整型变量a,b,c均为2,表达式a+b+c+的结果是()。A.6B.9C.8D.表达式出错24 .设整型变量i值为2,表达式(+i)+(+i)+(+i)的结果是()oA.6B.12C.15D.表达式出错25 .设整型变量i,j值均为3,执行了“j=i+,j+,+i”后,i,j的值是()。A.3,3B.5,4C.4,5D.6,626 .假设已定义X和y为ClOUble类型,那么表达式;X=Ly=X+3/2的值是()。A.1B.2C.2.OD.2.527 .sizeof(double)的结果值是()。A.8B.4C.2D.出错28.表达式“1?(0?3:2):(10?1:0)"的值是()«A.3B.2C.1D.029.设a=l,b=2,c=3,d=4,那么表达式:a<b?a:c<d?a:d的结果为()。A.4B.3C.2D.130.设a为整型变量,不能正确表达数学关系:10<a<15的C语言表达式是()。A.10<a<15B.a=lla=12a=13a14C.a>10fea<15D.!(a<=10)&&!(a>=15)31 .inta=0;if(a=l)a+=10;结果的值是。D.出错D. a=7+b, c=a+7D. f=(3. 2, 1.0)D. i+A.OB.11C.1032 .以下表达式中符合C语言语法的赋值表达式是()。A.a=7+b+c=a+7B.a=7+b+=a+7C.a=(7+b,b+,a+7)33 .设f是实型变量,以下表达式中不是逗号表达式的是()。A.f=3.2,1.0B.f>0,f<10C.f=2.0,f>034 .以下表达式中,不正确的表达式是()。A.a=l,b=lB.y=int(x)C.a=b=535.假设有以下定义:char a、int b、floatc、doubled,那么表达式a*b+d-c值的类型是(A. floatB. intC. charD. double36.intn;floatf=13.8;执行n=(int)f)%3w后,n的值是O。A.1B.4C.4.333333D.4.637.用十进制数表示表达式“12012”的运算结果是()。A.1B.0C.14D.1238.设有整型变量a:35,表达式“(x&15)&&(x|15)”的值是()。A.0B.1C.15D.3539.设字符型变量a=3,b=6,计算表达式c=(a%)«2后C的二进制值是()。A. 00011100B. 00000111 C. 00000001D. 0001010040 .设a,b和C都是int型变量,且a=3,b=4,c=5,那么下面的表达式中值为0的是()。A.B.a<=bC.ab+c&feb-cD.!(a<b)&&!c|1)41 .设a是Char型变量,其值字符为I那么把其值变成整数1的表达式是()。A.(int)aB.int(a)C.a=a_48D.a/(int)a42 .设a是int型变量,其值为3,那么把其值变成字符3,的表达式是()。A.(char)aB.a=3C.a=a_48D.a=a+4843 .设Ch是Char型变量,其值为*,那么下面表达式的值是()。ch=(ch>='A'Mch<='Z')?(ch+32):ChA.AB.aC.ZD.z44 .设有整型变量i、j、k,i值为3,j值为6。计算表达式“k=i13;”后,k的值是()。A.56B.51C.40D.2745 .设有无符号短整型变量i、j、k,i值为013,j值为0x13。计算表达式“k=iIj>>3;”后,k的值是()。A.06B.0177776C.066D.017776646 .设有无符号短整型变量a值为331,计算表达式“2=3>4)&(0«4)”后,2的值是()。A.0B.15C.015D.017二、填充题1 .在内存中存储“A”要占用个字节,存储'A'要占用个字节。2 .C语言中的逻辑值“真”是用表示的,逻辑值“假”是用表示。逻辑表达式值为“真”是用表示的,逻辑表达式值为“假”是用表示的。3 .符号常量的定义方法是。4 .说明变量时,假设省略存储类型符,系统默认其为存储类别,该存储类别的类型符为:。5 .无符号根本整型的数据类型符为,双精度实型数据类型符为,字符型数据类型符为。6 .定义变量的完整语句格式是。7 .变量的作用域主要取启变量,变量的生存期既取决于变量,又取决于变量。8 .从变量的存储类型9XC变量不允许初始化。变量、变量和变量可以初始化。其中变量如果不进行初始化,那么变量和变量的初值不确定,而变量初值为0。9 .设以下运算符:<<、+、+、&&、<=,其中优先级最高的是,优先级最低的是。10 .设二进制数A是OOlOlI01,假设想通过异或运算AAB使A的高4位取反,低4位不变,那么二进制数B应是。11 .设a=3,b=2,c=l,那么a>b的值为,a>b>c的值为。12 .假设a=10,b=20,那么表达式!a<b的是值为。13 .设X和y均为血型变量,且X=Ly=2,那么表达式1.0+x/y的值为。14 .设整型变量X,y,z均为5:执行"X-=y-z”后X二,执行"x%=y+zw后X=,执行"x=(y>z)?x+2:x-2,3,2”后x=。15 .能表述"20<X<30或X<-100”的C语言表达式是。16 .请写出数学式的C语言表达式。17 .C语言中运算结果可以当成逻辑值使用的表达式有:表达式、表达式、表达式、表达式、表达式和表达式。第2章根本数据类型和运算练习题答案一、单项选择题12345678910BACBCDCA11121314151617181920CBBCCADBAC21222324252627282930ADACBCABDA31323334353637383940BCDBDACBDD414243444546CDBBDC二、填充题1. 212. 非OO1O3. #define符号常量常量4. 动态auto5. UnSigneddoubleChar6. 存储类型符数据类型符变量名1二初值1变量名n二初值n;7. 内部变量或是外部变量内部变量或外部变量存储类型8. 外部参照型自动型存放器型静态型自动型存放器型静态型9. +&&10. IIllooOO11. 10(a>b>ca>b为1l>c假为0)12. 1_(先求!a为00<b为真1)13. 1.0(xy为0整除)14. (1)5(2)5(3)315. (20<xx<30)II(x<T00)16. a/(b*c)17. 关系算术条件赋值逗号

    注意事项

    本文(浙江大学C语言总复习题—基本数据类型和运算.docx)为本站会员(夺命阿水)主动上传,课桌文档仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对上载内容本身不做任何修改或编辑。 若此文所含内容侵犯了您的版权或隐私,请立即通知课桌文档(点击联系客服),我们立即给予删除!

    温馨提示:如果因为网速或其他原因下载失败请重新下载,重复下载不扣分。




    备案号:宁ICP备20000045号-1

    经营许可证:宁B2-20210002

    宁公网安备 64010402000986号

    课桌文档
    收起
    展开