实验二循环结构程序设计.doc_第1页
实验二循环结构程序设计.doc_第2页
实验二循环结构程序设计.doc_第3页
实验二循环结构程序设计.doc_第4页
全文预览已结束

下载本文档

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

文档简介

C语言程序设计实验报告实验二 循环结构程序设计一、实验目的(1)掌握用while语句,do-while语句和for语句实现循环的方法;(2)掌握循环结构的嵌套;(3)掌握break语句和continue语句的使用方法。二、 实验内容及步骤1相传国际象棋是古印度舍罕王的宰相达依尔发明的。舍罕王十分喜欢象棋,决定让宰相自己选择何种赏赐。这位聪明的宰相指着88共64格的象棋盘说:陛下,请您赏给我一些麦子吧,就在棋盘的第一个格子中放1粒,第2格中放2粒,第3格放4粒,以后每一格都比前一格增加一倍,依此放完棋盘上的64个格子,我就感恩不尽了。舍罕王让人扛来一袋麦子,他要兑现他的许诺。 国王能兑现他的许诺吗?程序1:试编程计算舍罕王共要多少粒麦子赏赐他的宰相,这些麦子合多少立方米?(已知1立方米麦子约1.42e8粒) 总粒数为:sum=1+2+22+23+263程序代码: #includeint main()double i=0,sum=1,sum1=1;double v;while(i=62)sum1=2*sum1;sum=sum+sum1;i+;v=sum/1.42e8;printf(赏给他的麦子数为:%.0fn,sum);printf(共有%.2f立方米n,v);return 0;运行结果:2. 求完数。程序2:一个数如果恰好等于它的因子之和,这个数就称为“完数”。例如6的因子为1,2,3,而6=1+2+3,因此6是“完数”。编程找出1000之内的所有完数,输出所有的完数(要求:一行显示6个数);程序代码: #includeint main()int i,j,m;printf(1000之内的完数有:);for(i=1;i=1000;i+)m=0;/每次得到一个完数后把m置零for(j=1;ji;j+)if(i%j=0)m=m+j;/累加所求的因子if(m=i)/判断它的因子之和是否等于它本身printf(%dt,i);printf(n);return 0;运行结果:3.打印九九乘法表程序3:编程输出如下上三角形式的九九乘法表。1 2 3 4 5 6 7 8 9- - - - - - - - -1 2 3 4 5 6 7 8 94 6 8 10 12 14 16 18 9 12 15 18 21 24 27 16 20 24 28 32 36 25 30 35 40 45 36 42 48 54 49 56 63 64 72 81程序代码: #includeint main()int i,j;for(i=1;i=9;i+)for(j=1;j=9;j+) if(ji)printf( );/输出三个空格 elseprintf(%3d,i*j);printf(n);return 0;三、问题讨论 break语句和continue语句在循环结构中使用时有何区别?举例说明。 Break语句提前终止循环,使程序跳到循环体之外,接着执行循环体下面的语句。例:#includeint main() int i,j,n=0;for(i=1;i=4;i+)for(j=1;j=5;j+,n+)if(n%5=0)printf(n);if(i=3&j=1)break;/遇到第3行第一列,终止内循环printf(%dt,i*j);printf(n);return 0; 输出结果如图:当把break语句改为continue语句时,即if(i=3&j=1)continue输出结果为:四、实验心得本次实验主要练习了while语句,do-while语句和for语句实现循环的方法,其用法我已经基本掌握,不过在做题时还有很多细节问题,像第一题中,定义错了变量的类型而使输出结果错误,因为最后得到的结果较大,所以应该用double类型,以后应注意数据类型的设置;第二题中最主要的是应该在每次得到一个完数后把m置零,不然的话得到的m是一个累加结果,程序出错;第三题开始做时一直出错,怎么都得不到上三角,想了好长时

温馨提示

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

评论

0/150

提交评论