《c程序设计》作业参考答案(1-4章)

《c程序设计》作业参考答案(1-4章)

ID:5912811

大小:49.50 KB

页数:7页

时间:2017-12-28

《c程序设计》作业参考答案(1-4章)_第1页
《c程序设计》作业参考答案(1-4章)_第2页
《c程序设计》作业参考答案(1-4章)_第3页
《c程序设计》作业参考答案(1-4章)_第4页
《c程序设计》作业参考答案(1-4章)_第5页
资源描述:

《《c程序设计》作业参考答案(1-4章)》由会员上传分享,免费在线阅读,更多相关内容在行业资料-天天文库

1、第1章C语言概述习题(P13):1.3写出一个C程序的构成。答:C程序由一个main函数和0个或多个自定义函数构成,每个函数的构成如下:函数类型函数名(函数参数列表){说明部分执行部分}1.4C语言以函数为程序的基本单位,有什么好处?答:一个函数实现一个相对独立的功能,便于实现程序的模块化。1.5请参照本章例题,编写一个C程序,输出以下信息:*************************************************Verygood!********************

2、*****************************答:参照例1.1编程如下#includevoidmain(){printf("********************************************");printf("Verygood!");printf("********************************************");}1.6编写一个C程序,输入a、b、c3个值,输出其中最大者。答:参照例1.3编程如下法一

3、:修改例1.3的主函数,自定义max函数不变。#includevoidmain(){intmax(intx,inty);/*函数声明*/inta,b,c,m;/*定义4个变量,m用于存放最大值*/scanf("%d%d%d",&a,&b,&c);/*从键盘上输入3个整数*/m=max(a,b);/*第一次调用max函数求出前两个数的最大值放在m中*/m=max(m,c);/*再调max函数求出m和第三个数的最大数*/printf("maxis%d",m);/*输出结果*/}

4、intmax(intx,inty)/*定义求两个数的最大数的函数max*/{intz;if(x>y)z=x;elsez=y;return(z);}法二:修改例1.3的主函数和max函数,将max函数改为求3个数的最大数。#includevoidmain(){intmax(intx,inty,intz);/*函数声明*/inta,b,c,m;/*定义4个变量,m用于存放最大值*/scanf("%d%d%d",&a,&b,&c);/*从键盘上输入3个整数*/m=max(a,b,c)

5、;/*直接调用max函数求出3个数的最大值放在m中*/printf("maxis%d",m);/*输出结果*/}intmax(intx,inty,intz)/*定义求三个数的最大数的函数max*/{intt;if(x>y)/*该双分支语句找出x和y中的最大值存到变量t中*/t=x;elset=y;if(z>t)/*如果第三个数z大于前两个数的最大数t,则t中存z的值,否则t值不变*/t=z;return(t);}第2章程序的灵魂—算法(略)第3章数据类型、运算符与表达式习题(66):3.2C

6、语言为什么要规定对所有用到的变量要“先定义,后使用”。这样做有什么好处?见教材第39~40页3.3请将下面各数用八进制数和十六进制数表示:方法:正数可以采用“除基反序取余”的方法得到转换结果,但负数在内存中是按补码存放的。所以针对负数的转换方法是先将其绝对值转换为二进制,然后表示为原码(注意:符号位为1,并且在符号位和数值之间加0补足16位),再对原码求反加1得到其补码,最后按从右到左分组转换为八进制(三位二进制对应一位八进制)和十六进制(四位二进制位对应一位十六进制),符号位也看成是数值的一部

7、分。(1)10(2)32(3)75(4)-617(5)-111(6)2483(7)-28654(8)21003解:(1)10的机内存储形式为:0000000000001010(16位,第1位为符号位)所以有(10)10=(0000000000001010)2=(12)8(10)10=(0000000000001010)2=(a)16(2)32的机内存储形式为:0000000001000000所以有(32)10=(0000000000100000)2=(40)8(32)10=(0000000000

8、100000)2=(20)16(3)75的机内存储形式为:0000000001001011所以有(75)10=(0000000001001011)2=(113)8(75)10=(0000000001001011)2=(4b)16(4)-617的原码为:1000001001101001(后10位为617的二进制,最高位为符号位)求反加1后的补码(即机内存储形式)为:1111110110010111所以有(-617)10=(1111110110010111)2=(176627)8(-617)10=(

当前文档最多预览五页,下载文档查看全文

此文档下载收益归作者所有

当前文档最多预览五页,下载文档查看全文
温馨提示:
1. 部分包含数学公式或PPT动画的文件,查看预览时可能会显示错乱或异常,文件下载后无此问题,请放心下载。
2. 本文档由用户上传,版权归属用户,天天文库负责整理代发布。如果您对本文档版权有争议请及时联系客服。
3. 下载前请仔细阅读文档内容,确认文档内容符合您的需求后进行下载,若出现内容与标题不符可向本站投诉处理。
4. 下载文档时可能由于网络波动等原因无法下载或下载错误,付费完成后未能成功下载的用户请联系客服处理。