欢迎来到天天文库
浏览记录
ID:7880845
大小:56.50 KB
页数:5页
时间:2018-03-01
《(实验三)循环结构程序设计》由会员上传分享,免费在线阅读,更多相关内容在行业资料-天天文库。
1、实验三循环结构程序设计一、实验目的l熟练掌握while语句及其嵌套形式的使用l熟练掌握do-while语句及其嵌套形式的使用l熟练掌握for语句及其嵌套形式的使用l了解并掌握continue与break语句在循环结构中的作用l熟悉循环结构程序段中语句的的执行过程二、实验环境l个人计算机一台,PIII500(或同等性能)以上CPU,128MB以上内存,500MB以上硬盘剩余空间。lWindows2000、WindowsXP或Win7操作系统lCode::Blocks(版本12.11或近似版本,英文版)三、实验内容1.数列求和在花括号({})之间填写适当的语句,将程序补充完整
2、实现下述功能,并上机运行验证。程序的功能从键盘上输入一个整数n,并计算以下数列的前n项和:例如,输入:10输出:s=14.266510/*example-11.c*/#includemain(){intn,i;floats;scanf("%d",&n);/*求前n项和,结果存放在s当中*//*可根据需要填入任意多条语句*/5printf("s=%f",s);}【解题提示】使用for语句或while语句皆可。注意运算对象的类型,“1/2”的值是0而不是0.5。2.素数在花括号({})之间的横线中填写适当的语句,将程序补充完整实现下述功能,并上机运行验证
3、。程序的功能是从键盘上输入一个整数n,就n(包括n)以内的素数。素数是指:只能被1和它本身整除的数(除了1以外,1不是素数)。例如,输入:50输出:23571113171923293137414347/*example-12.c*/#includemain(){intn,i,j;printf("Inputn:");scanf("%d",&n);printf("以下是小于%d的素数:",n);/*列举2~n之间的所有数*/for(i=2;;i++){/*下面这个循环判断i是否是素数*/for(j=2;;j++){/*如果i能够被j整除,就意味着i不是素
4、数,循环可以提前终止*/if(i%j==0)}/*满足括号中的条件意味着n是素数,则输出*/if()printf("%d",i);}printf("");}【解题提示】我们可以有以下思路用于判断某一个整数是否为素数:给定一个整数n,我们可以从2开始至n-1逐一检查在这范围之内的整数是否可以被n整除。如果可以,则说明整数n不是素数。如果从2开始至n-1范围之内的所有整数都不可以被n整除,那说明整数n符合素数的定义,所以整数n是一个素数。判断整数n能否被整数m整除的方法是:n%m==0。如果n对m取余等于0,那么n能够被m整除;反之,n不能被m整除。53.水仙花数在花括号
5、({})之间填写适当的语句,将程序补充完整实现下述功能,并上机运行验证。程序的功能是求出所有的“水仙花数”。所谓的“水仙花数”是指这样的一个三位数:其各位数字的立方和等于该数本身。例如:153是一个水仙花数,因为153=13+53+33。/*example-13.c*/#includemain(){}【解题提示】(1)“水仙花数”是三位数,因此只能是100~999之间的数。(2)列举100到999之间的每个数字,判断它是否是水仙花数,如果是就输出,不是就不输出。(3)“水仙花数”各位数字的立方和等于该数本身,因此判断一个数n是不是“水仙花数”,要获得它各
6、个位上的数字,然后求立方和,看立方和是否等于n。四、总结与思考循环结构是程序设计的三大基本控制结构之一,C语言中用于实现选择结构的语句有:lwhile语句ldo-while语句lfor语句此外,还要注意continue语句和break语句在循环结构中的作用。编程时,可以不使用continue语句和break语句,但笔试中一定会考查到。在完成以上实验的基础上,有兴趣的同学可以在课后思考以下问题:思考题:打印等腰三角形在花括号({})之间填写适当的语句,将程序补充完整实现下述功能,并上机运行验证。程序的功能是从键盘上输入一个整数n,然后打印出n层有高的等腰三角形(由“*”组成
7、)。例如,当n为5时,如图1所示。5图15层高的等边三角形/*think-3.c*/#includemain(){}【解题提示】实际上,这个等腰三角形是由“*”和空格两种符号构成。我们要做的,就是判断出每层要输出多少个“*”和空格。无论多高的等腰三角形,第一层都是1个“*”,第二层是3个“*”,第三层是5个“*”…………最后一层都是“*”。很明显,这是一个公差为2的等差数列。等差数列的第n项是:Sn=S1+(n-1)*d(d为公差)因此,n层高的等腰三角形,在第n层就要打印出1+(n-1)*2个“*”,这是打
此文档下载收益归作者所有