当前位置:首页 >> IT/计算机 >>

(11级)实验三 循环结构程序设计


实验三 循环结构程序设计 实验三 循环结构程序设计
一、实验目的
(1) 掌握 while、do~while、for 语句的使用。 (2) 掌握循环体内使用 break、continue 语句的作用。 (3) 掌握循环及嵌套循环结构的程序设计方法。

二、实验准备
1.C 语言实现循环的方法 . ① goto 和 if 构成的循环 构成的循环:由于 goto 是无条件转向,不符合结构化程序设计思想,所以不建议使用。 ② while 循环 实现 循环: “当型” 循环, 首先判断循环条件, 当条件为真, 执行循环体, 再判断循环条件…… 此种循环有可能一次也不执行循环体。 循环 ③ do~while 循环:实现“直到型”循环,与 while 循环的区别是先执行循环体,再判断循环条件,当 循环条件为真,再执行循环体…… 此种循环至少执行一次循环体。 ④ for 循环 循环:与 while 循环类似,一般用于知道循环变量初值、终值及步长值的循环。 2.break 和 continue 语句 . 语句: 可用在循环体或 switch 语句中,作用是跳出其所在的控制结构。若是在循环体中, ① break 语句 则是跳出其所在的循环,使得循环不止一个出口。 ② continue 语句 语句:只能用在循环体中,其作用是结束本层本次循环,注意不是退出循环。 3.阅读以下程序,并分析其功能,调试运行程序后再分析其运行结果。 .阅读以下程序,并分析其功能,调试运行程序后再分析其运行结果。 ① 掌握三种方法求 1 到 100 的累加和。 掌握三种方法求 的累加和。 内容如下: 文件名为 ex3-1-1.c ,内容如下: # include <stdio.h> main() { int sum=0,i=1; while(i<=100) sum+=i++; // 等价于:{ sum=sum+i; i++; } 等价于: printf("sum is %d\n",sum); } 内容如下: 文件名为 ex3-1-2.c ,内容如下: # include <stdio.h> main() { int sum=0,i=1; do sum+=i++; while(i<=100); printf("sum is %d\n",sum); } 内容如下: 文件名为 ex3-1-3.c ,内容如下: # include <stdio.h> main() { int sum=0,i; for(i=1;i<=100;i++) sum+=i; printf("sum is %d\n",sum); } ② 程序二,程序文件名为 ex3-2.c 。 掌握递推算法(求 π 值) (掌握递推算法 掌握递推算法( )

# include <stdio.h> # include <math.h> void main() { int s=1; float n=1,t=1,pi=0; while(fabs(t)>1e-6) //当前项实数 t 的绝对值大于 1*10-6 则执行循环体 当前项实数 { pi=pi+t; //累加当前项 累加当前项 n=n+2; //推算下一项的分母 推算下一项的分母 s=-s; //推算下一项的符号 推算下一项的符号 t=s/n; //计算下一项的值 计算下一项的值 计算下 } pi=pi*4; printf("pi= %f\n",pi); } ③ 程序三,程序文件名为 ex3-3.c 。 掌握迭代算法(处理 fibonacci 数列前 40 项) (掌握迭代算法( 掌握迭代算法 ) # include <stdio.h> void main() { long f1=1,f2=1; int i; for(i=1;i<=20;i++) { printf("%12ld %12ld",f1,f2); //输出当前的两项 输出当前的两项 if(i%2==0) //循环 2 次后输出回车换行,即一行输出 4 个数 循环 次后输出回车换行, printf("\n"); f1=f1+f2; //推算之后的第一项 推算之后的第一项 f2=f1+f2; //推算之后的第二项 推算之后的第二项 } } ④ 程序四,程序文件名为 ex3-4.c 。 掌握穷举算法(判素数) (掌握穷举算法 判素数) 掌握穷举算法( ) # include <stdio.h> # include <math.h> void main() { int m,i,k; printf("Input m: "); scanf("%d",&m); k=sqrt(m); //可以改为:k=m-1; 或 k=m/2; 可以改为: 可以改为 for(i=2;i<=k;i++) //穷举 2~k 之间的数作为除数判断和 m 能否整除 穷举 if(m%i==0) //若其中之一能够整除,则确定 m 不是素数,不再循环,此时 i<=k 若其中之一能够整除, 不是素数,不再循环, 若其中之一能够整除 break; if(i>k) //若 i>k 则说明以上循环中 m 不能被所有的 i 整除则确定 m 是素数 若 printf("%d 是素数 是素数!\n",m); else printf("%d 不是素数 不是素数!\n",m); }

设计以下程序, 此部分完成在实验报告上) 三、实验内容( 按要求设计以下程序,并调试分析运行结果 ,此部分完成在实验报告上) 实验内容( 按要求设计以下程序
(1) 设计程序 sy3-1.c,要求打印小学九九乘法表。

(2) 设计程序 sy3-2.c,要求编程计算 xn,其中 x 和 n 均由键盘输入。 (3) 设计程序 sy3-3.c,已知祖父年龄 70 岁,长孙 20 岁,次孙 15 岁,幼孙 5 岁,问要过多少年,三 个孙子的年龄之和同祖父的年龄相等,试用单重循环结构编程实现。 (4) 设计程序 sy3-4.c,有一数列:2/1,3/2,5/3,8/5,…求出这个数列的前 10 项之和。 (5) 设计程序 sy3-5.c,一球从 200 米高度自由落下,每次落地后反跳回原高度的四分之一,再落下。 编程求它第 10 次落地时共经过的路程及第 10 次落地后反弹的高度。 分析:该题也是进行多次加操作、求最终和的问题。在这里要定义一个变量(sum)记录小球反复落 地总共经历的高度,还要定义一个变量(high)表示小球每次反弹起来的高度。需要注意的一点是,小球 第一次落地时经历的路程为初始高度,即 sum 初值为 200,在第一次落地后,sum 中每次累加的是两倍的 high 值(弹起和再落下),这个过程只需再重复九次即可。 正确答案:共经过 333.33 米,第 10 次反弹了 0.000191 米 (6) 设计程序 sy3-6.c ,要求求出满足“百位减去十位等于个位”的所有三位整数,并按一行 5 个数 输出结果。 (7) 设计程序 sy3-7.c ,要求从键盘上输入整数 m 和 k,输出大于且紧靠 m 的 k 个素数。 (8) 中国古代数学家张丘建在他的《算经》中提出了著名的“百钱买百鸡问题” :鸡翁一,值钱五,鸡 母一,值钱三,鸡雏三,值钱一,百钱买百鸡,问翁、母、雏各几何?请编程解决该问题。 文件名存为 (文件名存为 sy3-8.c) 分析:设鸡翁、鸡母、鸡雏的个数分别为 x,y,z,题意给定共 100 钱要买百鸡,若全买公鸡最多买 20 只,显然 x 的值在 0~20 之间;同理,y 的取值范围在 0~33 之间,可得到下面的不定方程: 5x+3y+z/3=100 x+y+z=100 所以此问题可归结为求这个不定方程的整数解。由程序设计实现不定方程的求解与手工计算不同。在 分析确定方程中未知数变化范围的前提下, 可通过对未知数可变范围的穷举, 验证方程在什么情况下成立, 从而得到相应的解。 (9) 编写程序 sy3-9.c ,输入一个正整数,计算并显示该整数的各位数字之和,例如,整型数 1987 的 各位数字之和是 1+9+8+7,等于 25。 (10) 编写程序 sy3-10.c ,功能是找出 1 至 99 之间的全部同构数。所谓同构数是这样的一组数:它出 现在它平方数的右边。 (例如:5 是 25 右边的数,25 是 625 右边的数,5 和 25 都是同构数。 ) (11) 编写程序 sy3-11.c,在 1-500 中找出能同时满足用 3 除余 2,用 5 除余 3,用 7 余 2 的所有整数输 出并计数。 (12) 编写程序 sy3-12.c 试用单重循环结构编程实现,求出 10 个“韩信点兵数” 。该数除以 3 余 2,除 以 5 余 3,除以 7 余 4(如 53,158,263)。

四、实验要求: 实验要求:
此次实验内容设置得比较多,请各位同学在课堂上至少选做其中 5 道题 至少选做其中 道题,其余的请在下次上课前利用 课外时间完成。

五、实验报告填写要求: 实验报告填写要求:
1、第一页用《攀枝花学院实验报告》纸,其后用《实验报告附页》纸。

2、第一页填写项目: 实验课程:计算机基础 2-C 语言 计算机基础 实验项目:[本次实验名称 实验日期:[本次实验日期 本次实验名称] 本次实验日期] 本次实验名称 本次实验日期 系: 班级: 姓名: 学号: 指导教师: 3、实验报告正文要求: 实验目的: 抄写本次实验目的 (抄写本次实验目的 抄写本次实验目的) 实验仪器设备:PC 机一套 实验步骤(内容) : (要求完成以上第三部分内容,分析结果项目要求抄录原题及程序,并在每道题的下方记录程序运行结果 要求完成以上第三部分内容, 要求完成以上第三部分内容 分析结果项目要求抄录原题及程序, 及分析原因;编程题要求抄写题目并写出程序源代码,并记录程序的运行结果) 及分析原因;编程题要求抄写题目并写出程序源代码,并记录程序的运行结果 实验结论: 分析通过本次实验掌握的知识或是还有什么遗留问题 (分析通过本次实验掌握的知识或是还有什么遗留问题 分析通过本次实验掌握的知识或是还有什么遗留问题) 4、实验报告写好后将完成的实验报告纸订(或粘)在一起,于下一次上课前交给指导老师。


相关文章:
(11级)实验三 循环结构程序设计.doc
(11级)实验三 循环结构程序设计_IT/计算机_专业资料。实验三 循环结构程序设计 实验三 循环结构程序设计一、实验目的 (1) 掌握 while、do~while、for 语句的...
实验三 循环结构程序设计.doc
实验三 循环结构程序设计 - 实验三 循环结构程序设计 三、实验内容( 按要求设计以下程序,并调试分析运行结果 ,任选 5 个题) (1) 设计程序 sy3-1.c ,要求...
10级实验三--循环结构程序设计.doc
10级实验三--循环结构程序设计 - 实验三 循环结构程序设计 一、实验目的 (
实验三 循环结构程序设计.doc
实验三 循环结构程序设计 - 实验三 循环结构程序设计 一、 教学目标 1.了解
实验三 循环结构程序设计.doc
实验三 循环结构程序设计 - 实验三 循环结构程序设计 一、实验学时 4 学时。
实验三:循环结构程序设计.doc
实验三:循环结构程序设计_计算机软件及应用_IT/计算机_专业资料。c语言实验任务书 实验三:循环结构程序设计【目的与要求】 1、掌握三种循环语句在编程中的使用。 2...
实验3循环结构程序设计.doc
实验3循环结构程序设计 - 实验三 循环结构程序设计 1.根据 ? 2 6 ?
10级实验三 循环结构程序设计.doc
10级实验三 循环结构程序设计_计算机软件及应用_IT/计算机_专业资料。实验三 循环...) (11) 编写程序 sy3-11.c,在 1-500 中找出能同时满足用 3 除余 2,...
实验三 循环结构程序设计.doc
宁德师范学院计算机系 实验报告(20132014 学年 课程名称 实验名称 专年 学号 业级第 1 学期) 程序设计基础 实验三 循环结构程序设计 电气工程及其自动化 12 ...
实验3循环结构程序设计.doc
实验3循环结构程序设计_计算机软件及应用_IT/计算机_专业资料。实验 3.循环结构程序设计---10031 整数的立方和 1. 【问题描述】给定一个正整数 k(1<k<10),求...
实验三 循环结构程序设计(答案)_图文.doc
实验三 循环结构程序设计(答案) - 实验教案 课题(项目)名称: 实验三 循环结构程序设计 实验类型: 1.演示性√ 授课日期: 一、实验目的 (1) 掌握 while、do~...
(10级)实验三 循环结构程序设计1.doc
(10级)实验三 循环结构程序设计1_工学_高等教育_教育专区。爱神的箭 实验三 循环结构程序设计 实验三 循环结构程序设计一、实验目的 (1) 掌握 while、do~while...
实验三 循环结构程序设计(教案).doc
实验三 循环结构程序设计(教案) - 实验教案 课题(项目)名称: 实验三 循环结构程序设计 实验类型: 1.演示性√ 授课日期: 一、实验目的 (1) 掌握 while、do~...
实验三 循环结构程序设计参考答案.doc
实验三 循环结构程序设计(参考答案) 实验三 循环结构程序设计(参考答案) 1、设计程序 sy3-1.c ,要求打印小学九九乘法表。 算法分析: 算法分析: 根据九九乘法表...
实验三 循环结构程序设计(参考答案).doc
实验三 循环结构程序设计(参考答案) 实验三 循环结构程序设计(参考答案) 1、...11、编写程序 sy3-11.c,在 1-500 中找出能同时满足用 3 除余 2,用 5 ...
材料机电11级实验四循环结构程序设计(一)上机题总结.ppt
材料机电11级实验循环结构程序设计(一)上机题总结 - 实验循环结构程序设计(一) 1.教材P84页习题五中第4题编程题中第(3)小题。按要求输出指定图形。 #...
实验三 选择结构与循环结构程序设计.doc
实验三 选择结构与循环结构程序设计_计算机软件及应用_IT/计算机_专业资料。实验三 选择结构与循环结构程序设计 (2 学时)一、 实验目的 掌握选择结构与循环结构...
实验三 循环结构程序设计(1).doc
循环结构程序设计( 实验三 循环结构程序设计(1)一、 目的和要求 1. 熟练使
实验3 循环结构程序设计.doc
实验3 循环结构程序设计 - 实验三 循环结构程序设计 一、实验目的与要求 1、
(实验三)循环结构程序设计.doc
(实验三)循环结构程序设计_计算机软件及应用_IT/计算机_专业资料。实验三一、实验...例如, 输入:50 输出:2 3 5 7 11 13 17 19 23 29 31 37 41 43 47 ...