程序设计基础-c语言-第三章程序结构-教材习题答案-科学出版社_第1页
程序设计基础-c语言-第三章程序结构-教材习题答案-科学出版社_第2页
程序设计基础-c语言-第三章程序结构-教材习题答案-科学出版社_第3页
程序设计基础-c语言-第三章程序结构-教材习题答案-科学出版社_第4页
程序设计基础-c语言-第三章程序结构-教材习题答案-科学出版社_第5页
已阅读5页,还剩16页未读 继续免费阅读

下载本文档

版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领

文档简介

第 1 页 程序程序设计设计基基础础 C 语语言 科学出版社教材 言 科学出版社教材 第三章第三章 程序程序结结构教材构教材习题习题答案答案 1 0 编编写程序使整形写程序使整形变变量量 a 3 b 4 c 5 p 0 xfffe q 0 xffff 浮点型浮点型 变变量 量 x 1 2 y 2 4 z 3 6 无符号型无符号型变变量 量 u 5127486 n 128765 字字 符型符型变变量 量 c1 a c2 b include void main int a b c p q float x y z unsigned int u n char c1 c2 a 3 b 4 c 5 p 0 xfffe q 0 xffff x 1 2 y 2 4 z 3 6 u 5127486 n 128765 c1 a c2 b printf a d b d c d n a b c printf p x q x n p q printf x f y f z f n x y z 第 2 页 printf x y 2f y z 2f x z 2f n x y y z x z printf u 8u n 8u n u n printf c1 c or d n c1 c1 printf c2 c or d n c2 c2 2 0 读读入三个双精度数 求出它入三个双精度数 求出它们们的平均的平均值值并保留此平均并保留此平均值值小数小数 点后二位 最后点后二位 最后输输出出结结果 果 include void main double a b c d printf 请输请输入三个双精度数入三个双精度数 scanf lf lf lf d a b c 3 printf d 2lf d 3 0 编编写一个程序 要求写一个程序 要求输输入三个整数入三个整数值值 a b c 把把 c 中的中的值赋给值赋给 b 把把 b 中的中的值赋给值赋给 a 把把 a 中的中的值赋给值赋给 c 最后最后输输出出 a b c 第 3 页 include void main int a b c t printf 输输入三个整数入三个整数值值 scanf d d d t a a b b c c t printf a d b d c d n a b c 4 0 编编写一个程序 要求写一个程序 要求输输入一个入一个华华氏温度 氏温度 输输出出对对于的于的摄摄氏温氏温 度 度 华华氏温度与氏温度与摄摄氏温度氏温度转换转换公式公式为为 c 5 9 F 32 结结果保留二果保留二 位小数 位小数 include void main float F 第 4 页 float C printf 请输请输入一个入一个华华氏温度氏温度 F scanf f C 5 0 9 0 F 32 0 printf 对应对应的的摄摄氏温度氏温度 C 2f n C 5 0 编编写一个程序 要求写一个程序 要求输输入一个三位数 正确的分量出它的个入一个三位数 正确的分量出它的个 位 十位 百位 并在屏幕位 十位 百位 并在屏幕显显示出来示出来 include void main int a a100 a10 a1 printf 请输请输入一个三位整数入一个三位整数 scanf d if 100 a a a 100 a10 a 10 a1 a 10 第 5 页 printf 百位数是百位数是 d 十位数是十位数是 d 个位数是个位数是 d n a100 a10 a1 else printf 输输入的数据不是一个入的数据不是一个 3 位整数 位整数 n 6 0 编编写一个程序 写一个程序 输输入一个整数 入一个整数 输输出它是奇数出它是奇数还还是偶数是偶数 include void main int a b printf 请输请输入一个整数入一个整数 scanf d b a 2 if b 0 printf 偶数偶数 a d n a else printf 奇数奇数 a d n a 第 6 页 7 0 编写程序 输入 x 对应输出 Y 值 x x1 y2x1 1x10 3x11 x10 include void main int x y printf 输输入入 x 值值 scanf d if x 1 y x else if 1 x else y 3 x 11 printf d n y 8 0 编编写一个程序 要求由写一个程序 要求由键盘输键盘输入入 3 个数 判断它个数 判断它们们是否能构是否能构 第 7 页 成三角形的三成三角形的三边边 若能 若能 请请判断构成的是等腰 等判断构成的是等腰 等边还边还是普通三是普通三 角形 角形 include include void main unsigned int i a i b i c float f s printf 请输请输入入 3 个数作个数作为为三角形的三条三角形的三条边边 中 中间间用空格隔开 用空格隔开 scanf u u u if i a i b i c f s sqrt f s f s i a f s i b f s i c printf 该该 3 个数可构成一个三角形 其面个数可构成一个三角形 其面积积是是 2f n f s if i a i b else if i a i b i a i c i b i c 第 8 页 printf 该该三角形是等腰三角形三角形是等腰三角形 n else printf 该该三角形是一般三角形三角形是一般三角形 n else printf 该该 3 个数不能构成一个三角形个数不能构成一个三角形 n 9 0 编编写程序 写程序 输输入某年某月 求入某年某月 求该该月有多少天 月有多少天 include void main unsigned int i Year i Month char i Days printf 请输请输入年月 中入年月 中间间用空格隔开 用空格隔开 scanf u u if 1 i Month case 3 case 5 case 7 case 8 case 10 case 12 i Days 31 break case 4 case 6 case 9 case 11 i Days 30 break case 2 if i Year 4 0 else i Days 28 printf d 年年 d 月是月是 d 天天 n i Year i Month i Days 第 10 页 else printf 月只能是月只能是 1 12 输输入入错误错误 无法 无法计计算算 10 0 编编写程序 写程序 对给对给定的一个百分制成定的一个百分制成绩绩 输输出出对对于的五分制成于的五分制成 绩绩 设设 90 分以上分以上为为 A 80 到到 89 分分为为 B 70 到到 79 分分为为 C 60 到到 69 为为 D 60 分以下分以下为为 E 用用 IF 和和 switch 语语句分部句分部实现实现 include void main int i a 成成绩绩 int i grade 成成绩绩等等级级 printf 请输请输入成入成绩绩 scanf d printf 用用 if 语语句判断的等句判断的等级级是 是 if i a 90 printf A 第 11 页 else if 80 i a else if 70 i a else if 60 i a else printf E printf n printf 用用 switch 语语句判断的等句判断的等级级是 是 i grade i a 10 第 12 页 switch i a 10 case 10 case 9 printf A break case 8 printf B break case 7 printf C break case 6 printf D break default printf E printf n 11 循循环输环输入若干个数据 以入若干个数据 以 1 表示表示输输入入结结束 束 计计算算输输入的入的这这些数些数 据平均据平均值值 include void main 第 13 页 int a 记录记录当前当前输输入的数入的数 int num 记录记录当前当前输输入的数据个数入的数据个数 int sum 记录记录当前所有数据的和当前所有数据的和 float average 记录记录平均平均值值 赋赋初初值值 sum 0 num 0 输输入开始入开始 printf 输输入一入一组组整型数据 如果整型数据 如果输输入的数据是入的数据是 1 则说则说明明该该 组组数据数据输输入完成 下面开始入完成 下面开始输输入入 n scanf d while a 1 num sum sum a scanf d 输输入入结结束束 计计算和算和输输出出 if num 0 printf 没有没有输输入数据 无平均数入数据 无平均数 第 14 页 else average float sum float num 强强制制 int 转换为转换为 float 然后然后计计算 如果不要算 如果不要强强制制转换转换 即 即 average sum num 你可 你可试试一一 试试 看 看结结果有什么不同果有什么不同 printf 输输入了入了 d 个数据 其平均数是 个数据 其平均数是 2f n num average 12 编编程程计计算算 1 2 3 4 n 的的值值超超过过 500 的第一个和的第一个和值为值为多多 少 少 n 的的值为值为多少 多少 include void main int i n int i sum 记录记录和和 每行最多每行最多输输出出 10 个水仙花数个水仙花数 i sum 0 i n 0 第 15 页 while i sum 500 i n i sum i sum i n printf 1 2 3 4 n 的的值值超超过过 500 的第的第 1 个和个和值值 d n d n i sum i n 13 计计算出公式算出公式 1 2 3 10 的 的值值 include void main int i a i b int i sum 记录记录和和 int i jc 记录记录某个数的某个数的阶阶乘乘 i sum 0 for i a 1 i a 10 i a 计计算某个数算某个数 i a 的的阶阶乘乘 i jc 1 for i b 1 i b i a i b 第 16 页 i jc i jc i b 阶阶乘乘计计算完算完毕毕 i sum i sum i jc 计计算和算和 printf 1 2 3 4 5 6 7 8 9 10 d i sum 14 输输出所有的水仙花数 所出所有的水仙花数 所谓谓的水仙花数 是指一个三位数 其的水仙花数 是指一个三位数 其 各位数字的立方和等于它本身 列如各位数字的立方和等于它本身 列如 153 是一个水仙花数 因是一个水仙花数 因为为 153 1 3 5 3 3 3 解法一解法一 include void main int i 100 i 10 i 1 记录记录 3 位数的各位数字位数的各位数字 int i num 记录记录水仙花数的个数水仙花数的个数 每行最多每行最多输输出出 10 个水仙花数个水仙花数 i num 0 for i 100 1 i 100 9 i 100 for i 10 0 i 10 9 i 10 第 17 页 for i 1 0 i 1 9 i 1 if i 100 100 i 10 10 i 1 i 100 i 100 i 100 i 10 i 10 i 1 0 i 1 i 1 i 1 此此时时形成了一个水仙花数形成了一个水仙花数 printf d i 100 100 i 10 10 i 1 i num if i num 10 0 已已输输出了出了 10 个倍数的水仙花数 下一个另起个倍数的水仙花数 下一个另起 一行一行 printf n printf n 共有共有 d 个水仙花数个水仙花数 i num 15 利用循利用循环环 在屏幕上 在屏幕上输输出如下出如下图图案案 include 第 18 页 void main int i Rows 输输出上三角出上三角 的行数的行数 int i Row 当前当前输输出的第几行出的第几行 int i Blanks 第第 i Row 行需行需输输出的空格数出的空格数 int i Blank 第第 i Row 行当前行当前输输出的第几个空格出的第几个空格 int i Starts 第第 i Row 行需行需输输出的出的 个数个数 int i Start 第第 i Row 行当前行当前输输出的第几个出的第几个 printf 请输请输入上三角的行数 入上三角的行数 scanf d 输输出上三角出上三角 for i Row 1 i Row i Rows i Row i Blanks i Rows i Row 计计算第算第 i Row 需需输输出的空格数出的空格数 i Starts i Row 1 2 1 计计算第算第 i Row 需需输输出的出的 数数 输输出第出第 i Row 的空格的空格 for i Blank 1 i Blank i Blanks i Blank printf c 空格空格输输出完出完毕毕 输输出第出第 i Row 的的 for i Start 1 i Start i Starts i Start printf c 输输出完出完毕毕 第 19 页 printf n 一行一行输输出完出完毕毕 换换行行 上三角上三角输输出完出完毕毕 输输出下三角出下三角 i Rows i Rows 1 下三角比上三角少一行下三角比上三角少一行 for i Row 1 i Row i Rows i Row i Blanks i Row 计计算第算第 i Row 需需输输出的空格数出的空格数 i Starts i Rows i Row 2 1 计计算第算第 i Row 需需输输出的出的 数数 输输出第出第 i Row 的空格的空格 for i

温馨提示

  • 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
  • 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
  • 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
  • 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
  • 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
  • 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
  • 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。

评论

0/150

提交评论