




已阅读5页,还剩5页未读, 继续免费阅读
版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领
文档简介
. 数学与软件科学学院 实验报告 2015年6月5日课程名称:C语言程序设计 专业: 信息与计算科学 2014级 6班实验编号:实验五 指导教师: 冯山姓名:杨帆 学号:2014060634 实验得分 一、实验目的(1) 复习和掌握算法的基本组成要素和描述特点;(2) 在实验四的基础上,学习几种常见的循环程序的流程关系和运用方法;(3) 不同循环类型之间的转换方法;(4) 循环的应用。二、实验内容1.循环实验(教材习题5-20)。具体要求:(1) 绘制流程图,编制程序代码。(2) 分析不进入循环、只循环一次、只循环两次、进入死循环的条件,以及此时各变量的值。(3) 分析循环退出时的条件表达式值。(4) 如何测试循环的次数?(5) 能否将程序改写成另外的形式,如while改写成do while或for语句?(6) 总结条件循环的设计、实现步骤和测试方法。2.计数型循环实验(教材习题5-30):九九表及其变体形状的打印。具体要求如下:(1) 分析并绘制九九表的程序实现代码(右上三角形状);(2) 分析程序的执行过程;(3)* 请在此基础上修改部分程序代码以打印如下一些变形九九表:右下三角、左上三角、左下三角、倒序排列等形状,并观察、分析和总结其规律。(4) 分析并总结计数型循环在do while, while和for循环句型中的实现方法和步骤。3.其它实验题目:(1) 习题5-1(小孩吃梨问题);(2) 习题5-4(水果拼盘问题);(3) 求两个非负整数u和v的最大公因子;(4) 求两个非负整数的最小公约数;(5) 用牛顿迭代法求解正实数a的平方根;(6) 用梯形法求函数的数值积分;(7) 把由键盘输入的数列(1,3,5,7,9.)按相反的顺序(如.9,7,5,3,1)输出。4.习题5-27和习题5-28。三、实验准备(1) 编写所选实验题目的程序代码和流程图;(2) 检查源程序并给出其可能的运行结果说明。四、实验步骤及结果 1.循环实验(教材习题5-20)。具体要求: (1)绘制流程图,编制程序代码流程图如下: a60?a0&a10?输出sum=a*0.075+1输出sum=a*0.1输出sum=a*0.03+2.75输出sum=a*0.01+3.95输出sum=a*0.05+1.75a40?a20?输入利润值a输出sum=a*0.015+3.35 a100?a=10?YesNoYesNoYesNoYesNoYesNoYes a100?程序代码如下:#include int main(void) float a,b,fsum,sum; clrscr(); printf(Please input one number:n); scanf(%f,&a); if(a0) for(b=0;b=a;b+) fsum=b*0.1; printf(sum=%f,sum=fsum+0); if(a=10) for(b=10;b=a;b+) fsum=(b-10)*0.075; printf(sum=%f,sum=fsum+1.0); if(a=20) for(b=20;b=a;b+) fsum=(b-20)*0.05; printf(sum=%f,sum=fsum+1.75); if(a=40) for(b=40;b=a;b+) fsum=(b-40)*0.03; printf(sum=%f,sum=fsum+2.75); if(a=60) for(b=60;b=100) for(b=100;b=a;b+) fsum=(b-100)*0.01; printf(sum=%f,sum=fsum+3.95); getchar(); return 0;(2) 分析不进入循环、只循环一次、只循环两次、进入死循环的条件,以及此时各变量的值。答:不进入循环:a=0的时候不进入循环; 只循环一次:a=1或a=12或a=22或a=42或a=62的时候只循环一次; 只循环两次:a=2或=13或a=23或a=43或a=63的时候只循环两次; 进入死循环:a无限。(3) 分析循环退出时的条件表达式值。答:循环退出时是sum=fsum+次循环以上所有循环的最后最大值。(4) 如何测试循环的次数?答:用if语句来标明,比如,当a=2时,循环2次,就令printf输出2。(5) 可以,原语句是for的语句,而do while 语句与for实质都一样。(6) 总结条件循环的设计、实现步骤和测试方法。 a确定加法的开始点,结束点和当前加数值。 b确定循环控制变量的增长步长。 c将和加到另一个变量中去2. 计数型循环实验九九表的打印 下三角上三角: 流程图如下:i=1i=9?J=1Jj?Printf(“%d*%d=%dt”,I,j,i+j)Printf(“t”)J+I+NOYESYESYESNONO注意:只需控制 i , j 使得在某些位置置空或者为“%d*%d=%d”,i,j,i*j即可。要有模块化的思想,先考虑行,再考虑列,最后再考虑每个元素。 for(表达式1;表达式2;表达式3)(1)先执行表达式1(循环中只执行一次),且表达式1可提前到for()语句之前,但其后的“;”不能少。(2)表达式2为真时执行循环体语句组,为假时结束循环并执行循环体外语句组。(3)计算表达式3并返回第(2)步。3.习题5-1小孩吃梨问题;程序代码如下:运行结果:流程图如下:Sum=1I=17i0?sum=2*(sum+1);Printf(“the pears has %dn”,sum)I - -YESNO4.求100-1000中所有能表示成立方的书,水仙花数。5.把由键盘输入的数列(1,3,5,7,9.)按相反的顺序(如.9,7,5,3,1)输出。程序如下:#includeint main(void) int arr5=1,3,5,7,9,*pt_arr; clrscr(); pt_arr=&arr4; for(;pt_arr=arr;pt_arr-) printf(%d ,*p
温馨提示
- 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
- 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
- 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
- 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
- 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
- 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
- 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。
最新文档
- 教师招聘之《幼儿教师招聘》考前冲刺练习试题附参考答案详解(巩固)
- 内蒙古呼伦贝尔农垦集团有限公司招聘笔试题库附答案详解(突破训练)
- 教师招聘之《幼儿教师招聘》能力提升试题打印含答案详解(轻巧夺冠)
- 2025年内蒙古呼伦贝尔农垦牙克石莫拐免渡河农牧场有限公司招聘笔试参考题库及完整答案详解1套
- 2025年禁毒知识知识题及答案
- 教师招聘之《小学教师招聘》题库检测试题打印附答案详解(轻巧夺冠)
- 教师招聘之《幼儿教师招聘》模拟题库附参考答案详解(基础题)
- 人民警察纪律作风方面存在的问题及整改措施
- 2025-2026年教师招聘之《幼儿教师招聘》通关题库附参考答案详解(巩固)
- 教师招聘之《小学教师招聘》考试历年机考真题集含答案详解【基础题】
- 项目七前厅服务与数字化运营81课件
- 2025年体育组织行业研究报告及未来行业发展趋势预测
- 采购进口生蚝合同协议书
- 成本分析表-产品成本构成
- 2024年云南航空产业投资集团招聘考试真题
- 2025年山东快递工程专业职称考试(快递设施设备知识·技术员、助理工程师)历年参考题库含答案详解(5卷)
- 蓝莓种植加工一体化发展项目可行性研究报告写作模板-申批备案
- 2025年秋季新学期教学工作会议校长讲话:一心一意抓质量一点一滴见成效一步一脚印做教学
- 2025年汽车驾驶员技师资格证书考试及考试题库含答案
- 消防消控室设备管理制度
- 2025至2030年中国烘焙工具产业竞争现状及发展前景预测报告
评论
0/150
提交评论