c语言答案第三章.docVIP

  1. 1、本文档共11页,可阅读全部内容。
  2. 2、原创力文档(book118)网站文档一经付费(服务费),不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。
  3. 3、本站所有内容均由合作方或网友上传,本站不对文档的完整性、权威性及其观点立场正确性做任何保证或承诺!文档内容仅供研究参考,付费前请自行鉴别。如您付费,意味着您自己接受本站规则且自行承担风险,本站不退款、不进行额外附加服务;查看《如何避免下载的几个坑》。如果您已付费下载过本站文档,您可以点击 这里二次下载
  4. 4、如文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“版权申诉”(推荐),也可以打举报电话:400-050-0827(电话支持时间:9:00-18:30)。
  5. 5、该文档为VIP文档,如果想要下载,成为VIP会员后,下载免费。
  6. 6、成为VIP后,下载本文档将扣除1次下载权益。下载后,不支持退款、换文档。如有疑问请联系我们
  7. 7、成为VIP后,您将拥有八大权益,权益包括:VIP文档下载权益、阅读免打扰、文档格式转换、高级专利检索、专属身份标志、高级客服、多端互通、版权登记。
  8. 8、VIP文档为合作方或网友上传,每下载1次, 网站将根据用户上传文档的质量评分、类型等,对文档贡献者给予高额补贴、流量扶持。如果你也想贡献VIP文档。上传文档
查看更多
第三章计习题解答 3.1 用C语言描述下列命题。 (1) a小于b或小于c。 (2) a和b都大于c。 (3) a和b中有一个小于c。 (4) a是非正整数。 (5) a是奇数。 (6) a不能被b整除。 (7) 角A在第一或第三象限。 (8) a是一个带小数的正数,而b是一个带小数的负数。 [解答] ab || ac ac bc ac b=c || a=c bc a==(int)a a=0 a%2==1 a%b!=0 0fmod(A,2*PI) fmod(A,2*PI)PI/2 || PIfmod(A,2*PI) fmod(A,2*PI)3*PI/2 (其中PI=3圆周率) a-(int)a0 b-(int)b0 3.2 写出下列表达式的值。 (1) 14 47 (2) 14 74 (3) !(2=5) (4) !(13)||(25) (5) !(4=6) (3=7) [解答] (1) 1 (2) 0 (3) 0 (4) 1 (5) 0 3.3 若x=3,y=z=4,求下列表达式的值。 (1) (z=y=x)? 1:0 (2) z=y y=x [解答] (1) 0 (2) 1 3.4 若x=3,y=2,z=1,求下列表达式的值。 (1) xy? y:x (2) xy? x++:y++ (3) z+=(xy?x++:y++) [解答] (1) 3 (2) 2 (3) 3 3.5 写出下面程序段的输出结果。 (1) int x = 40,y = 4,z = 4; x = y == z; printf (%d\n,x); x = x == (y = z);printf (%d\n,x); [解答] 1 0 (2) int x,y,z; x=y=z=0; ++x || ++y ++z; printf (x=%d\ty=%d\t z=%d\n,x,y,z); x=y=z=0; ++x++y||++z; printf (x=%d\t y=%d\tz=%d\n,x,y,z); x=y=z=0; ++x++y++z; printf (x=%d\t y=%d\tz=%d\n,x,y,z); x=y=z=-1; ++x++y++z; printf (x=%d\ty=%d\t z=%d\n,x,y,z); x=y=z=-1; ++x++y||++z; printf (x=%d\t y=%d\t z=%d\n,x,y,z); x=y=z=-1; ++x||++y++z; printf (x=%d\t y=%d\t z=%d\n,x,y,z); [解答] x=1 y=0 z=0 x=1 y=1 z=0 x=1 y=1 z=1 x=0 y=-1 z=-1 x=0 y=-1 z=0 x=0 y=0 z=-1 (3) int x=1,y=1,z=1; y=y+z; x=x+y; printf (%d\n,x<y? y:x); printf (%d\n, x<y? x++∶y++); printf (%d\n,x); printf (%d\n,y); x=3; y=z=4; printf (%d\n,(x>=y>=x)?1∶0); printf (%d\n,z>=y y>=x); [解答] 3 2 3 3 0 1 3.6. 设计C语言程序, 求两个正整数m和n的最大公约数。 [解答] #include stdio.h int GCD(int m, int n) /* 计算正整数 m 和 n 的最大公约数 */ { /* 辗转相除法 */ int r; /* 用于存放每次计算中的余数 */ while((r=m%n)!=0) /* 只要余数不为 0 就循环 */ { /* 更新 m, n, 为下一次迭代做好准备 */ m=n; n=r; } return n; /* 循环退出时余数为 0, 商数 n 即是原来两个数的最大公约数 */ } void main() { int m, n; printf(请输入两个正整数: ); scanf(%d%d, m, n); printf(%d 和 %d 的最大公约数是 %d\n, m, n, GCD(m, n)); } 3.7有下列语句: if (ab) if(cd)x=1; else if (ac) if(bd)x=2; else x=3; else if (ad) if(bc)x=4; else x=5; else x=6; else x=7; (1) 把此语句写得逻辑关系更清晰一些。 (2) 检查其中有无多余的判定条件或矛盾的判定条件。 (3

文档评论(0)

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

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

1亿VIP精品文档

相关文档