循环结构实验报告范本.docx

上传人:b****4 文档编号:5907842 上传时间:2023-05-09 格式:DOCX 页数:14 大小:81.81KB
下载 相关 举报
循环结构实验报告范本.docx_第1页
第1页 / 共14页
循环结构实验报告范本.docx_第2页
第2页 / 共14页
循环结构实验报告范本.docx_第3页
第3页 / 共14页
循环结构实验报告范本.docx_第4页
第4页 / 共14页
循环结构实验报告范本.docx_第5页
第5页 / 共14页
循环结构实验报告范本.docx_第6页
第6页 / 共14页
循环结构实验报告范本.docx_第7页
第7页 / 共14页
循环结构实验报告范本.docx_第8页
第8页 / 共14页
循环结构实验报告范本.docx_第9页
第9页 / 共14页
循环结构实验报告范本.docx_第10页
第10页 / 共14页
循环结构实验报告范本.docx_第11页
第11页 / 共14页
循环结构实验报告范本.docx_第12页
第12页 / 共14页
循环结构实验报告范本.docx_第13页
第13页 / 共14页
循环结构实验报告范本.docx_第14页
第14页 / 共14页
亲,该文档总共14页,全部预览完了,如果喜欢就下载吧!
下载资源
资源描述

循环结构实验报告范本.docx

《循环结构实验报告范本.docx》由会员分享,可在线阅读,更多相关《循环结构实验报告范本.docx(14页珍藏版)》请在冰点文库上搜索。

循环结构实验报告范本.docx

循环结构实验报告范本

深圳大学实验报告

 

课程名称:

程序设计基础

实验项目名称:

循环结构

学院:

计算机与软件学院

专业:

指导教师:

报告人:

学号:

班级:

实验时间:

2013-11-20

实验报告提交时间:

2013-11-22

教务处制

一、实验目的与要求:

实验目的:

1.理解结构化程序设计方法的循环结构;

2.掌握用for语句实现循环结构;

3.掌握用while、do…while语句实现循环结构;

4.理解for、while、do…while三者的区别;

5.掌握转向语句break、continue;

6.掌握上机调试的方法。

实验要求:

1.输入数据、输出数据应加以说明(交互性);

2.程序应注意使用注释语句(可读性);

4.对各种可能的输入情况都要考虑处理方案(健壮性);

5.熟悉for、while、do…while、break、continue语法。

6.在blackboard上提交C++源程序或执行文件、输出界面拷屏至实验报告;

7.按报告内容要求完成实验报告。

 

二、实验环境:

地点:

深圳大学

机器编号:

lily

操作系统:

windows8

C++语言环境:

VC6.0

project类型:

WIN32ConsoleApplication

 

三、实验内容:

1.求所有“水仙花数”。

所谓“水仙花数”是指一个三位数,其各位数字立方和等于该

数本身。

例:

153是水仙花树,因为:

153=13+53+33。

2.重复输入n(1≤n≤10),输出1!

+2!

+…+n!

的结果。

输入ctrl+z,退出程序。

3.打印如下九九乘法表。

123456789

11

224

3369

4481216

5510152025

661218243036

77142128354249

8816243240485664

991827364554637281

4.编程,输入一个十进制数num,输入一个整数d(2、8),将num转换为d进制

数输出。

(要求用while或do…while实现)

四、实验步骤与过程:

(给出各题主要变量定义、解题思路、流程图(可手画),并附上代码,注意注视语句的添加。

1.求所有“水仙花数”。

所谓“水仙花数”是指一个三位数,其各位数字立方和等于该

数本身。

例:

153是水仙花树,因为:

153=13+53+33。

●解题思路:

①首先对数字进行分解,即百位整除100得到百位上的数字;十位上即可通过先对100求余得到一个两位数,再对两位数整除,即分解得十位数;求个位数直接整除10即可;②分解完数字后即对数字进行计算;③然后开始判断该数字是否满足条件,满足即输出,不满足继续向后求;key:

因为这是3位数,所以采用循环结构将所有三位数判定一遍,输出符合条件的。

●主要变量:

数字,分解后的三个数为整型变量。

●流程图见下:

●编程时应注意各个符号,不可遗漏,还有for循环的使用语法;判断循环条件的设置;输出方式的设置,即输出所有的水仙花数;还须注意程序的交互性,提示信息;具体见下面代码:

代码1:

水仙花数

流程图1:

求水仙花数

2.重复输入n(1≤n≤10),输出1!

+2!

+…+n!

的结果。

输入ctrl+z,退出程序。

●解题思路:

①需要重复输入n,考察对返回值的判断理解,即对输入值进行判断,首先给出输入值的变量定义,然后对输入值的返回值进行判断,满足条件即执行下面步骤,包括重复输入的循环,不满足即退出;②输入符合条件的n后,开始计算n!

,利用循环结构从1走到n,后输出结果;再继续重复。

●主要变量定义:

输入的数字,中间转换变量,数字的阶乘均为整型变量。

●流程图见下:

●编程时应注意循环结构的嵌套,即内层循环用于计算n!

,外层循环用于控制n的重复输入,其中包括了对n返回值的判断和限制了范围;程序的交互性。

详细代码如下:

代码2:

求n!

流程图2:

求n!

3.打印如下九九乘法表。

123456789

11

224

3369

4481216

5510152025

661218243036

77142128354249

8816243240485664

991827364554637281

●解题思路:

乘法表的输出需考虑两点,一是输出格式的控制,二是乘法的计算。

①首先输出行1~9,利用一个for循环实现;②然后控制列的输出与计算,采用两个for嵌套,即按列计算输出,首先输出第一列的结果,然后依次2、3、、、、、9列;③为控制格式的对齐,开头和列输出过程中都使用”/t”自动间隔对齐。

●流程图见下:

●编写程序时,充分考虑格式的输出对齐,以及for嵌套的书写。

详细代码如下:

代码3:

输出乘法表

流程图3:

输出乘法表

4.编程,输入一个十进制数num,输入一个整数d(2、8),将num转换为d进制

数输出。

(要求用while或do…while实现)

●解题思路:

首先要熟练掌握进制转换算法,十进制化其他进制,即采用整除求余法,除以转换进制一直到商为0,再将所有余数从后到前排,所得数即为转换后的数;因为转换进制不明确,所以还须对输入进制进行判断。

①采用while循环对十进制数整除求余,并将每一次求得的余数赋予数组,计数;②对输入进制的判断采用if判断;③最后对数组倒序输出。

●流程图见下:

●编程时,要注意中间变量的使用;数组的赋值与定义;对d值的判断;对数组输出位数的判断条件,注意i的初始化赋值;详细代码如下:

代码4:

进制转换

流程图4:

进制转换

五、实验结果与数据分析:

(有运行结果的界面截图,实验结果与实验结果分析,说明实验结果是否达到要求?

并提出对程序的改进想法)。

实验一:

求水仙花数,运行结果界面如下:

实验一:

求水仙花数

●实验结果:

输出所有水仙花数。

●实验结果分析:

达到要求。

实验二:

重复输入n(1~9),求n的阶乘;运行界面如下:

实验二:

求n!

(1~10)

●实验结果:

输入1~10的数字,可正确计算结果;输入超出范围的数字时,结束程序;可重复输入;输入ctrl+z退出程序。

●实验结果分析:

基本达到要求;不足:

当输入3~10时,输出结果正确且格式严谨;但输入1或2时,输出界面不太规范。

●改进:

可另外加一个选择结构即输入1或2时,另外单独显示为1!

=1或1!

+2!

=3,,使得输出更为严谨规范。

改进后代码如下:

改进后代码

程序运行界面如下:

改进后

实验三:

输出乘法表,见下图:

实验三:

输出乘法表

●实验结果:

如上图

●实验结果分析:

达到实验要求。

实验四:

进制转换

实验四:

图一实验四:

图二

实验四:

图三

●实验结果:

如上图所示

●实验结果分析:

达到实验要求。

●改进:

可继续优化的地方,即考虑输入数字有小数的情况,可采用函数等优化。

六、实验体会:

(自己在编程或程序编译运行中遇到的难点、问题及解决办法)

1.对重复输入n的控制,如何实现直接对n值输入类型的判断

将“cin>>n”放入while中,会对n的返回值进行判断,当输入n为所定义的类型后继续执行,不是则退出。

2.对乘法表输出格式对齐的调整?

要一一对齐输出,计算空格较为麻烦,采用“\t”,可自动间隔并对齐。

3.进制转换时,如何让所求余数倒序输出?

要倒序输出,首先要有一个量把每一个余数都记录下来,然后才能控制倒序,所以想到采用数组,记录每一个余数。

4.可是由于输入的数不确定大小,不知道会出现多少次求余,因此对于数组空间大小的给定不确定,太大浪费空间,太小无法执行,该怎么解决?

待解决问题

5.在进制转换中,若有小数,该怎么分解开来?

待解决问题

6.当程序可以运行,但运行结果不对如何检查?

自己对程序进行调试,在可能有错处插入断点,进行跟踪检查,对相关变量的值进行跟踪判断,从而找寻问题所在。

 

七、自我评价:

(请给自己此次实验进行百分制打分并说明理由)

自我评分:

90

理由:

基本达到程序实验要求,相关提示信息和注释语句也有添加,程序正确可达到实验目的,计算得正确结果。

缺点:

对某些输出格式的控制不够规范,还有对多方面输入情况的处理方案不够完善和全面。

 

指导教师批阅意见:

成绩评定:

指导教师签字:

年月日

备注:

注:

1、报告内的项目或内容设置,可根据实际情况加以调整和补充。

2、教师批改学生实验报告时间应在学生提交实验报告时间后10日内。

展开阅读全文
相关资源
猜你喜欢
相关搜索
资源标签

当前位置:首页 > 医药卫生 > 基础医学

copyright@ 2008-2023 冰点文库 网站版权所有

经营许可证编号:鄂ICP备19020893号-2