欢迎来到天天文库
浏览记录
ID:50358323
大小:44.02 KB
页数:4页
时间:2020-03-08
《实验四循环结构程序设计.doc》由会员上传分享,免费在线阅读,更多相关内容在行业资料-天天文库。
1、实验四循环结构程序设计一、实验目的1.通过本实验,加深对循环控制结构有关概念的理解。2.熟练掌握while、do-while和for三种循环控制语句的特点,掌握循环结构程序设计和调试方法。3.掌握二重循环结构程序的设计方法。二、预习内容1.If语句和goto语句组合实现循环的方法。理解循环的条件设置,循环的次数,循环体以及循环的结束。2.while循环结构的特点。理解while循环的条件设置,循环次数,循环体以及循环结束的条件。3.do-while循环结构的特点。理解do-while循环的条件设置,循环次数,循环体以及循环结束的条件。4.for结构的
2、特点。理解for结构中三个表达式的执行顺序以及各自的作用,指出循环的条件,循环的次数,循环体以及循环结束的条件。5.循环的嵌套。理解循环嵌套的结构特点,循环的执行顺序以及循环体,循环次数及内层循环的跳出。6.break,continue语句的意义及其在循环结构中的应用特点。三、实验内容(一)阅读调试下列程序,并写出程序结果。1.用while循环实现数据统计问题。数据统计问题:从键盘输入一批任意数量的整数,统计其中不大于100的非负数数值的个数。/*使用负数作为数据输入结束标志的程序*/#include"stdio.h"voidmain(){intm,
3、counter=0;while(1){printf("请输入一个整数:");scanf("%d",&m);if(m<0)break;if(m<=100)counter++;printf("");}printf("符合要求的整数个数为:%d",counter);}(1)程序编制思路说明:由于输入数据个数是不确定的,因此每次执行程序时,循环次数都是不确定的。在进行程序设计时,确定循环控制的方法是本实验的一个关键问题。循环控制条件可以有多种确定方法:①使用一个负数作为数据输入结束标志。②输入一个数据后通过进行询问的方式决定是否继续输入下一个数据。本
4、程序采用的是第一种。同学们可以考虑采用第二种应该如何实现?(见附录一程序)(2)程序调试①输入的一组数据之间全部以空格分隔,只有最后一个数为负数,以回车键结束。如:16357–10②输入的一组数据之间全部以空格分隔,在负数之后又有正数数据,最后一个数不为负数,以回车键结束。如:16357–109617③输入的一组数据之间全部以空格分隔,输入数据中有多个负数,以回车键结束。如:16357–109617–877④输入的数据中有大于100的整数。如:16357–1096117–8726766⑤数据之间既用空格分隔,也用回车键分隔。如:76353762271
5、796679617–8771966982-1631⑥每输入一个数据后均按回车键。⑦输入的第一个数据即为负数。⑧在输入的数据中使用数值很大的整数。如:17667789876517899-10987⑷在上面的“参考程序”中,使用了常数“1”作为循环控制的条件,这是常用的循环控制方式。请修改上面的程序,不使用常数循环条件,仍然使用while语句实现数据统计问题。2.编写并调试程序,使用do-while循环控制语句实现上面的数据统计问题。调试数据仍参照上面给出的几种情况设计使用。3.编写并调试程序,使用for循环控制语句实现上面的数据统计问题。4.阶乘累加问
6、题。编写程序,求1+2!+3!+…+n!的值。⑴编程分析①本实验内容是求解阶乘问题。②求n!用一个循环即可实现。③求1+2!+3!+…+n!的值即为求累加,需要在求n!程序之外增加一个外重循环。⑵参考程序#include"stdio.h"voidmain(){longints=1,t;inti,j,n;printf("n=");scanf("%d",&n);for(i=2;i<=n;i++){for(t=1,j=1;j<=i;j++)t*=j;s+=t;}printf("s=%ld",s);}⑶程序调试①输入一个不大的正整数,分析程序执行结果。②
7、输入一个零或者负数,分析程序执行结果。③输入一个很大的正整数,分析程序执行结果。④当程序结果不符合要求时,修改程序,直到对任何输入数据都能输出正确的执行结果,或者给出一个明确的提示信息。例如,当输入数据非法时,给出一个恰当的提示信息。(二)编制下列程序1.求100~200间不能被3整除的数。2.在屏幕上打印出乘法九九表,要求左对齐。3.用弦截法求方程的根。其方程是:x3-5x2+16x-80=0求解的方法是:(1)令f(x)=x3-5x2+16x-80。(2)选取两个初值x1、x2,使f(x1)、f(x2)异号。(3)连接(x1,f(x1))和(x2
8、,f(x2))两点,过这两点的直线与X轴的交点为x,用该点取代区间(x1,x2)的一个端点,使其相应的函数值
此文档下载收益归作者所有