




已阅读5页,还剩27页未读, 继续免费阅读
版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领
文档简介
关于变量的讨论(二),字符类型变量与ASCII码(附录C),1位二进制数可以表示2种状态:0、1;而2位二进制数可以表示4种状态:00、01、10、11;依次类推,7位二进制数可以表示128种状态,每种状态都唯一地编为一个7位的二进制码(数),对应一个字符(或控制码),这些码可以排列成一个十进制序号0127。ASCII码用7位二进制数进行编码,可表示128个字符。第032号及第127号(共34个)是控制字符或通讯专用字符,如控制符:LF(换行)、CR(回车)、FF(换页)、DEL(删除)、BS(退格)、BEL(振铃)等;第33126号(共94个)是字符,其中,第4857号为09十个阿拉伯数字;6590号为26个大写英文字母,97122号为26个小写英文字母,其余为一些标点符号、运算符号等。,关于变量的讨论(7),2,为加深理解,试完成如下任务,输出所有ASCII码对应的“字符”及其内存中的二进制表示(由0和1组成的串)。一行输出4个字符在输出各字符时,格式要求如下:ASCII码的十进制值二进制串字符表示输出空格。例如:7501001011K其中,十进制数要求占三个字符宽,不够宽时在数值后面补上空格(如)。,3,算法实现(STEPBYSTEP),#includeusingnamespacestd;intmain()return0;,V1.0,4,#includeusingnamespacestd;intmain()for(inti=0;i128;i+)couti;coutchar(i);return0;,V2.0,5,#includeusingnamespacestd;intmain()for(inti=0;i128;i+)out_int_with_sp(i);coutchar(i);return0;,V3.0,6,voidout_int_with_sp(inti)if(i10)cout;/双引号是字符串elseif(i100)cout;/单引号是字符couti;,V3.0(PART2),此处i是哪些值?,此处i是哪些值?,此处i是哪些值?,7,#includeusingnamespacestd;intmain()for(inti=0;i128;i+)out_int_with_sp(i);coutchar(i);if(i%4=3)coutendl;elsecout;return0;,V4.0,8,#includeusingnamespacestd;intmain()for(inti=0;i128;i+)out_int_with_sp(i);cout;out_char_bin(i);coutchar(i);if(i%4=3)coutendl;elsecout=0;i-)output_bit(n,i);,V5.0(PART2),10,voidoutput_bit(intn,inti)intbit=get_bit(n,i);coutbit;,V5.0(PART3),11,voidoutput_bit(intn,inti)intbit=get_bit(n,i);coutpos);returnbit;,V5.0(PART4),12,13,boolIsEven(intn)if(n%2=0)returntrue;elsereturnfalse;,布尔变量:真真假假?孰为真?孰为假?,关于变量的讨论(8),14,boolIsEven(intn)if(n%2=0)returntrue;elsereturnfalse;,boolIsEven(intn)return(n%2=0);,boolIsOdd(intn)return(n%2!=0);/ver1.0,布尔变量:真真假假?孰为真?孰为假?,关于变量的讨论(8),15,boolIsEven(intn)if(n%2=0)returntrue;elsereturnfalse;,boolIsEven(intn)return(n%2=0);,boolIsOdd(intn)return(n%2!=0);/ver1.0,boolIsOdd(intn)return(n%2);/ver2.0,布尔变量:真真假假?孰为真?孰为假?,关于变量的讨论(8),16,intIsOdd(intn)if(n%2)return29;elsereturn77;/ver3.0,charIsOdd(intn)if(n%2)returnX;elsereturnM;/ver4.0,任务:请输出中所有的奇数,?,这样写行不行?,17,intIsOdd(intn)if(n%2)return29;elsereturn77;/ver3.0,charIsOdd(intn)if(n%2)returnX;elsereturnM;/ver4.0,for(inti=1;i=100;i+)if(IsOdd(i)=x)/ver4.0couti:oddnumendl;elsecouti:NOToddnumendl;,18,intIsOdd(intn)if(n%2)return29;elsereturn77;/ver3.0,charIsOdd(intn)if(n%2)returnX;elsereturnM;/ver4.0,for(inti=1;i=100;i+)/if(IsOdd(i)=x)/ver4.0if(IsOdd(i)=29)/ver3.0couti:oddnumendl;elsecouti:NOToddnumendl;,19,intIsOdd(intn)if(n%2)return29;elsereturn77;/ver3.0,charIsOdd(intn)if(n%2)returnX;elsereturnM;/ver4.0,for(inti=1;i=100;i+)/if(IsOdd(i)=x)/ver4.0/if(IsOdd(i)=29)/ver3.0if(IsOdd(i)=true)/ver2.0,1.0couti:oddnumendl;elsecouti:NOToddnumendl;,20,intIsOdd(intn)if(n%2)return29;elsereturn77;/ver3.0,charIsOdd(intn)if(n%2)returnX;elsereturnM;/ver4.0,for(inti=1;i=100;i+)/if(IsOdd(i)=x)/ver4.0/if(IsOdd(i)=29)/ver3.0/if(IsOdd(i)=true)/ver2.0,1.0if(IsOdd(i)/ver2.0,1.0couti:oddnumendl;elsecouti:NOToddnumendl;,21,intIsOdd(intn)if(n%2)return29;elsereturn77;/ver3.0,charIsOdd(intn)if(n%2)returnX;elsereturnM;/ver4.0,什么是“是”,什么是“不是”?,22,intIsOdd(intn)if(n%2)return29;elsereturn77;/ver3.0,charIsOdd(intn)if(n%2)returnX;elsereturnM;/ver4.0,你说它是,它就是,不是也是。你说它不是,它就不是,是也不是。,什么是“是”,什么是“不是”?,关于变量的讨论(9*),浮点值是如何保存在内存单元中的?,23,任务91:(1)定义一个浮点类型的变量,将浮点值114.25赋给它。试编程输出这个浮点类型的变量的内存单元的内容。(2)求以下几个16进制数对应的浮点数值:0X42E48000、0XC0200000、0XBE000000、0X49E48E68。,24,/此处为dec2bin()函数定义代码/详细内容见后续页intmain()floatf=114.25f;int*pn=(int*)(,task-9,将浮点单元的地址值cout=0;i-)cout(E-127),d=(-1)S*(M+1)(E-1023),说明:在二进制的科学计数法中,小数点前的整数部分总是1。为节省空间,不为整数位的1分配二进制位,把这个高位1隐藏掉。因此,实际尾部是(M+1)。2.为计算方便,指数也分别加上了127(对float类型)或1023(对double类型),然后再存储。因此,实际的指数应该是(E-127)或(E-1023)。,S:浮点数的符号位E:浮点数的指数M:浮点数的尾数,任务92*:根据IEEE对浮点格式的规定,编程输出浮点数值114.25的二进制表示形式中“指数部分”E和“尾数部分”M的具体内容,即由0和1组成的二进制串。再用M和E“计算”出对应浮点值。,floatf;/sizeof(float)=4,S:1,E:8,M:23,f=(-1)S*(M+1)(E-127),课后思考题,28,s:1,e:8,m:23,F=(-1)S*(M+1)(E-127),S,E,M,Input(031bits),第一步,第二步,31,30.,0,22.,29,intmain()floatf=114.25;int*pf=(int*)(/task-9.2,参考主程序实现,30,整数部分38414,直接转为二进制,得960E(因为01串太长,这里写成十六进制形式)小数部分0.4,转换过程如下:0.4=0.5*0+0.25*1+0.125*1+0.0625*0+得0110101010101010101010101010101010101于是,38414.4(dec)=1001011000001110.0110101010101010101010101010101010101(bin)用科学计数法表示为1.001011000001110011010101010(其余位略)乘以2的15次方。然后去掉最高位的整数1,纯小数部分则对应浮点数的尾数部分。指数部分15+1023=1038;二进制表示为
温馨提示
- 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
- 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
- 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
- 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
- 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
- 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
- 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。
最新文档
- 绵阳市盐亭县医疗卫生辅助岗招募考试真题2024
- 测绘考试题及答案
- 果实考试题及答案
- 中级微观经济学(对外经济贸易大学)知到智慧树答案
- 中外设计艺术史知到智慧树答案
- 药品召回管理办法试题附答案
- 药品GMP厂房与设施、设备培训考试题(附答案)
- 2025年度船舶租赁与船舶改造升级合同
- 2025年新型手机合约机抵押租赁服务合同
- 2025版智能化工厂临时保洁服务合同
- 湖北省圆创高中名校联盟2026届高三第一次联合测评 语文试卷(含答案)
- 2025秋苏教版(2024)小学科学二年级上册(全册)课时练习及答案(附目录)
- 巡察整改工作课件模板
- 医务人员职业道德准则理论试题
- 2025年城镇燃气条例竞赛题库
- GB/T 22030-2025车用乙醇汽油调合组分油
- 肺癌的护理新进展
- 2025年煤炭矿山职业技能鉴定考试-综采考试历年参考题库含答案解析(5套100道单选题合辑)
- 车务段安全培训课件
- DB42T 1891-2022 人防工程防护及防化通风设备安装标准
- 2025发展对象考试题及答案
评论
0/150
提交评论