C语言例题源代码+++孙承爱.docVIP

  1. 1、原创力文档(book118)网站文档一经付费(服务费),不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。。
  2. 2、本站所有内容均由合作方或网友上传,本站不对文档的完整性、权威性及其观点立场正确性做任何保证或承诺!文档内容仅供研究参考,付费前请自行鉴别。如您付费,意味着您自己接受本站规则且自行承担风险,本站不退款、不进行额外附加服务;查看《如何避免下载的几个坑》。如果您已付费下载过本站文档,您可以点击 这里二次下载
  3. 3、如文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“版权申诉”(推荐),也可以打举报电话:400-050-0827(电话支持时间:9:00-18:30)。
  4. 4、该文档为VIP文档,如果想要下载,成为VIP会员后,下载免费。
  5. 5、成为VIP后,下载本文档将扣除1次下载权益。下载后,不支持退款、换文档。如有疑问请联系我们
  6. 6、成为VIP后,您将拥有八大权益,权益包括:VIP文档下载权益、阅读免打扰、文档格式转换、高级专利检索、专属身份标志、高级客服、多端互通、版权登记。
  7. 7、VIP文档为合作方或网友上传,每下载1次, 网站将根据用户上传文档的质量评分、类型等,对文档贡献者给予高额补贴、流量扶持。如果你也想贡献VIP文档。上传文档
查看更多
C语言例题源代码孙承爱

例1.4 分别用8b、16b无符号整数来表示256。 ① 由于8b无符号整数所能表示的最大数为255,所以用8b表示256会溢出。 ② 将256转换成二进制形式为:100000000B,左边补0,使总位数达到16b。 例1.5 计算7和-7的8b的原码、补码和反码。 ① 7为正数,因此7的8b原码、反码和补码均。 ② -7的8b原码、反码和补码分别。 例1.6 计算-237的16b原码、补码和反码; ① 237的十六进制数为14DH。 ② [-237]原=1000H+0EDH=10EDH。 ③ [-237]补=10000H-0EDH=0FF13H。 ④ [-237]原=10000H-0EDH-1=0FF12H。 例1.7 用8b补码表示方法执行7+8和7-8运算。 + + 结果 例1.8 计算-10的EXCESS_127表示码。 先将-10与127相加得到117,将117转换位8位二进制数得到-10的EXCESS_127表示码。 例1.9 10111110000000000000000000000000所表示的实数是多少? ① 最高位为1,该实数为负数。 ② 截取23~30位并减127得到指数-3。 ③ 截取0~22位(全为0)作为小数部分,在加上整数部分1,得到1.0作为尾数。因此,所得实数为-1.0×2-3,即十进制数0.125。 例1.10 300×200=60 000像素(1B=8bit)。因此,则其存储空间大小为60 000÷8×1=7 500字节。 ② 由于增强彩色图像为16位,所以则其存储空间大小为300×200÷8×16=120 000字节。 ③ 由于真彩色图像为24位,所以则其存储空间大小为300×200÷8×24=180 000字节。 例1.11 计算机内部相邻两个字节的值为0BOA1H。试问分别按字符、无符号和有符号整 数方式读取并解释这两个字节,其所表示的数据是什么? ① 按字符方式,0BOA1表示汉字“啊”。 ② 按无符号数方式,0BOA1表示整数45217。 ③ 按有符号数表示,0BOA1表示整数-20319。 例1.12 计算1+2+……+100的和。 ① 理解问题特征:输入:1~100所有整数;输出:1~100的所有数的和。 ② 设想解决方案:最容易想到的解决方案是连加;其次,可以采用等差数列求和公式计算;如果你拥有和高斯一样的创造力,还可以想到和的计算公式为50×101。 ③ 优化解决方案:对3种解决方案进行比较,显然高斯的方法是计算量最小,计算速度最高的方案。尽管我们没有证明它是最好的方案,但它已经是解决上述问题足够简单、令人满意的方案。 ④ 描述解决方案:可用数学公式50×101来描述。 ⑤ 执行并分析解决方案:我们稍加分析就可以将高斯的方案应用到相似问题的求解上。我们可以把问题拓展为求含2n(n1)))-1。 ① 理解问题特征,确定输入和输出:输入3个整数,分别用a、b和c表示;输出三角形周长或-1用perimeter表示。 ② 设想解决方案:该问题的输入和输出非常简单,因此,主要考虑3个整数满足什么条件能构成三角形。由简单的数学知识可以知道,构成三角形的条件是任意两边之和大于第三边,即必须同时满足a+bc、a+cb和b+ca三个条件。 ③ 采用流程图描述解决方案:由①、②步的结果,我们很容易用程序流程图来描述该问题的求解方案,如图1.9所示。 例1.15 输入一个班多名学生的以百分制表示的C语言成绩,计算该班C语言的平均成绩并输出。 ① 理解问题特征,确定输入和输出:该问题输入的个数不确定,由于不需要记录每个学生的成绩,因此,可以用score表示当前输入的学生成绩。输出比较简单,用average表示。 ② 设想解决方案:在①中确定了只能记录当前输入的学生成绩,因此整体解决方案只能是边输入,边累加总成绩totalscore和学生总数studentnum。由于对每个学生成绩而言,其累加的方法完全一致,因此可以用循环的方法来解决。对于依赖循环来解决的问题,必须确定循环的终止条件,在此,我们可以设定当输入的成绩是非法的成绩时循环结束。 ③ 采用流程图描述解决方案:由①、②步的结果,我们得到了如图1.10所示的程序流程图。注意图中标号为1的圆圈,合理使用连接符可以有效避免长线和交叉线的出现,增加流程图的清晰性。 例1.1

文档评论(0)

jiqinyu2015 + 关注
实名认证
文档贡献者

该用户很懒,什么也没介绍

1亿VIP精品文档

相关文档