实验3-循环结构程序设计
- 格式:doc
- 大小:446.50 KB
- 文档页数:8
循环程序设计实验报告
实验名称:循环程序设计实验报告
实验目的:
本实验旨在通过编写循环程序,提高学生对循环结构的理解和应用
能力,并培养学生的编程思维和解决问题的能力。
实验要求:
1.熟悉循环结构的基本原理和应用场景。
2.掌握使用循环结构解决实际问题的方法。
3.能够分析和设计能够利用循环结构优化的程序。
4.完成实验报告,详细记录实验过程和结果。
实验内容:
1.实验环境和工具
介绍实验所使用的编程环境和工具,包括操作系统、编程语言和开
发工具等。
2.实验题目和要求
描述实验要求和题目,明确实验要求和要解决的问题。
3.实验设计
介绍实验的设计思想和方法,包括解决问题的整体思路和基本步骤。
4.实验步骤
按照设计思路和方法,详细描述实验的具体步骤,包括程序的编写、调试和运行等。
5.实验结果与分析
展示实验的运行结果,并对结果进行详细分析和解释。
6.实验总结
总结实验的过程和结果,提出实验中存在的问题和改进的方向。
附件:本实验涉及的附件包括但不限于实验源代码、实验数据和实
验报告等。
法律名词及注释:
1.版权:著作权法规定的个人或集体对作品享有的专有权利。
2.商标:商标法规定的商业标识,用以区分不同商家的商品或服务。
3.专利:专利法保护的发明创造,赋予发明人对其发明的独占权利。
循环程序设计实验报告循环程序设计实验报告引言:循环程序设计是计算机科学中一项重要的技术,它能够让计算机在特定条件下重复执行一段代码,从而实现特定的功能。
本实验旨在通过编写循环程序,探索循环程序设计的原理和应用。
实验目的:1. 理解循环程序设计的概念和原理;2. 学会使用不同类型的循环结构,如for循环、while循环和do-while循环;3. 掌握循环程序设计在问题解决中的应用。
实验过程:1. 实验环境的搭建在实验开始前,我们需要搭建一个适合编写和运行循环程序的环境。
选择一款适合的集成开发环境(IDE),如Visual Studio、Eclipse等,并安装相应的编程语言环境,如C++、Java等。
2. 编写基本的循环程序首先,我们从最简单的循环结构开始,即for循环。
以C++语言为例,我们可以使用以下代码编写一个简单的for循环程序:```cpp#include <iostream>int main() {for (int i = 0; i < 10; i++) {std::cout << "Hello, World!" << std::endl;}return 0;}```上述代码中,for循环的三个部分分别表示循环变量的初始化、循环条件和循环变量的更新。
通过这个简单的循环程序,我们可以在控制台输出10次"Hello, World!"。
3. 使用循环解决实际问题循环程序设计在解决实际问题时非常有用。
我们可以通过循环来处理一系列数据、实现复杂的算法等。
下面以一个实际问题为例,演示如何使用循环程序设计进行问题求解。
假设有一个整数数组,我们需要找到数组中的最大值。
我们可以使用for循环遍历整个数组,并通过比较来找到最大值。
以下是一个使用C++语言实现的示例代码:```cpp#include <iostream>int main() {int arr[] = {5, 2, 8, 3, 1};int max = arr[0];for (int i = 1; i < 5; i++) {if (arr[i] > max) {max = arr[i];}}std::cout << "The maximum value is: " << max << std::endl;return 0;}```通过以上代码,我们可以找到数组中的最大值,并将其输出到控制台。
实验三循环结构程序设计实验三的主题是循环结构程序设计。
循环结构是程序设计中的重要概念,它使程序能够重复执行一段代码,直到满足一些条件后停止。
在本实验中,我们将学习循环结构的基本用法,并通过一些示例程序来掌握循环结构的运用。
一、循环结构的基本概念循环结构是程序设计中的一种重要结构,它允许程序重复执行一段代码。
循环结构包括两种基本类型:条件循环和计数循环。
条件循环是指只要满足一些条件就一直执行循环体中的代码,直到条件不满足时停止循环。
条件循环结构一般使用while语句或do-while语句来实现。
例如,在一些游戏中,只要玩家的生命值不为0,就可以一直进行游戏。
计数循环是指循环体中的代码按照事先确定的次数执行,即通过计数器来控制循环的执行次数。
计数循环结构一般使用for语句来实现。
例如,在一些音乐播放器中,可以设置循环播放歌曲的次数。
二、循环结构的语法在编程语言中,循环结构的语法一般如下:1. while循环语句的语法:while(条件表达式)循环体2. do-while循环语句的语法:do循环体} while(条件表达式);3. for循环语句的语法:for(初始化表达式; 条件表达式; 更新表达式)循环体三、示例程序1. 使用while循环计算1到100的和:```c++#include <iostream>using namespace std;int maiint sum = 0;int i = 1;while (i <= 100)sum += i;i++;}cout << "1到100的和为:" << sum << endl;return 0;```2. 使用do-while循环计算用户输入数字的累加和,直到用户输入0为止:```c++#include <iostream>using namespace std;int maiint sum = 0;int num;docout << "请输入一个整数(输入0停止):" << endl;cin >> num;sum += num;} while (num != 0);cout << "累加和为:" << sum << endl;return 0;```3. 使用for循环计算1到10的乘积:```c++#include <iostream>using namespace std;int maiint product = 1;for (int i = 1; i <= 10; i++)product *= i;}cout << "1到10的乘积为:" << product << endl;return 0;```以上示例程序演示了使用循环结构来解决问题的方法。
循环结构程序设计实验心得概述循环结构是计算机编程中非常重要的一部分,它可以帮助我们重复执行某些操作,大大提高了程序的效率和灵活性。
本次循环结构程序设计实验,主要涉及到了循环结构的基本概念、循环控制变量的赋初值和改变方式、循环条件的判断以及循环语句的实现等内容。
通过实际动手编写程序,我深刻理解了循环结构的原理和使用方法,并且在实验过程中遇到了一些问题,通过解决这些问题,我对循环结构的掌握又进一步提高了。
实验过程任务一:计算从1到n的和首先,我在程序中定义了一个整型变量n,并通过输入语句让用户输入一个正整数n。
然后,我使用了for循环结构来计算1到n的和,代码如下所示:int sum = 0;for (int i = 1; i <= n; i++) {sum += i;}在这段代码中,我将sum初始化为0,然后使用for循环,让i从1依次增加到n,每次循环都将i加到sum中。
最后,我输出sum的值,即可得到1到n的和。
任务二:计算阶乘在这个任务中,我需要计算给定正整数n的阶乘。
我同样使用了for循环结构,代码如下所示:int factorial = 1;for (int i = 1; i <= n; i++) {factorial *= i;}在这段代码中,我将factorial初始化为1,然后使用for循环,让i从1依次增加到n,每次循环都将i乘到factorial中。
最后,我输出factorial的值,即可得到n的阶乘。
任务三:猜数字游戏这个任务是一个简单的猜数字游戏,程序随机生成一个1到100之间的整数,然后提示用户猜这个数是多少。
用户每次猜测后,程序会根据用户的猜测给出“猜大了”、“猜小了”或“猜对了”的提示,直到用户猜对为止。
代码如下所示:import java.util.Scanner;import java.util.Random;Scanner scanner = new Scanner(System.in);Random random = new Random();int target = random.nextInt(100) + 1;int guess;do {System.out.print("请输入你猜的数字:");guess = scanner.nextInt();if (guess > target) {System.out.println("猜大了!");} else if (guess < target) {System.out.println("猜小了!");} else {System.out.println("猜对了!");}} while (guess != target);在这段代码中,我使用了do-while循环结构,先生成一个随机数target,然后通过输入语句让用户猜数字,将用户的猜测存储在guess变量中。
实验三循环结构程序设计(参考答案)1、设计程序sy3-1.c,要求打印小学九九乘法表。
算法分析:根据九九乘法表可知,该表共有9行,第i行有i个表达式,而且表达式中的操作数和行、列数相关,因此可以用嵌套的双重循环来实现,外循环控制行数(循环变量从1到9),内循环控制每行的表达式个数(循环变量从1变到i)。
参考答案:# include <stdio.h>void main(){int i,j;for(i=1;i<=9;i++){for(j=1;j<=i;j++)printf("%d*%d=%-5d",j,i,i*j);printf("\n");}}运行结果:2、设计程序sy3-2.c,要求编程计算x n,其中x和n均由键盘输入2。
算法分析:要计算x的n次方,即是n次x相乘,其中x可以是整型或实型,而n必须是整型;另外要考虑结果的类型,若x和n比较大,一般的int型容易产生溢出。
参考答案:# include <stdio.h>void main(){int i,n;float x,p=1; /*累乘器要赋初值1*/printf("Input x,n: ");scanf("%f,%d",&x,&n); /*以逗号分隔输入的已知数据x和n的值*/for(i=1;i<=n;i++)p=p*x;printf("%g^%d=%g\n",x,n,p);}运行结果:3、设计程序sy3-3.c,已知祖父年龄70岁,长孙20岁,次孙15岁,幼孙5岁,问要过多少年,三个孙子的年龄之和同祖父的年龄相等,试用单重循环结构编程实现。
算法分析:这个程序可以用穷举法来实现,1年、2年、3年……,每加一年都判断三个孙子的年龄之和是否同祖父的年龄相等,若相等则不加了,这个时候所加的年数为我们需要的结果。
循环结构程序设计1.程序填空下面程序的功能为:计算1~100之间的偶数之和,完成以下的程序并运行出正确的结果。
# include <stdio.h>void main(){int i,s=0;/**************found*************/i=2 ;while(i<=100){s=s+i;/**************found**************/i+=2 ;}printf(“s=%d”,s);}运行结果:S=25502.程序改错(1) 下面程序的功能为:计算10!,修改以下的程序并上机运行通过。
#include <stdio.h>void main(){int n,t;for(n=1,t=1,t<10,t++);n=n*t;printf(“10!=%d\n”,n);}正确的程序:#include <stdio.h>void main(){int n,t;for(n=1,t=1;t<=10;t++) //句尾不能有“;”n=n*t;printf(“10!=%d\n”,n);}运行结果:10!=3628800(2) 下面程序的功能为:计算1~100之间能被3和7整除的数之和,修改以下的程序并上机运行通过。
#include <stdio.h>void main(){int i,s;s=0;while(i<=100);{if(i%3==0||i%7==0)s+=i;i=i+1;}printf(“s=%d”,s);}正确的程序:#include <stdio.h>void main(){int i,s;s=0; i=1;while(i<=100) //句尾不能有“;”{if(i%3==0&&i%7==0)s+=i;i=i+1;}printf(“s=%d”,s);}运行结果:S=2103、有一个分数序列:2/1、3/2、5/3、8/5、13/8、……,编写一个C程序,求出这个数列的前30项之和。
一、实验目的1. 理解循环结构的原理和应用。
2. 掌握C语言中三种循环语句(for、while、do...while)的使用方法。
3. 熟悉循环结构在程序设计中的应用,提高编程能力。
二、实验环境1. 操作系统:Windows 102. 编译器:Visual Studio 20193. 编程语言:C语言三、实验内容1. 实现一个C语言程序,计算1至1000之间所有偶数的和。
2. 实现一个C语言程序,打印出1至10之间的所有奇数。
3. 实现一个C语言程序,判断并输出一个整数是否为素数。
4. 实现一个C语言程序,计算并输出Fibonacci数列的前20项。
四、实验步骤1. 计算1至1000之间所有偶数的和```c#include <stdio.h>int main() {int sum = 0;for (int i = 2; i <= 1000; i += 2) {sum += i;}printf("1至1000之间所有偶数的和为:%d\n", sum);return 0;}```2. 打印出1至10之间的所有奇数```c#include <stdio.h>int main() {for (int i = 1; i <= 10; i++) { if (i % 2 != 0) {printf("%d\n", i);}}return 0;}```3. 判断并输出一个整数是否为素数```c#include <stdio.h>#include <stdbool.h>bool is_prime(int num) {if (num <= 1) {return false;}for (int i = 2; i i <= num; i++) { if (num % i == 0) {return false;}}return true;}int main() {int num;printf("请输入一个整数:");scanf("%d", &num);if (is_prime(num)) {printf("%d是素数\n", num);} else {printf("%d不是素数\n", num);}return 0;}```4. 计算并输出Fibonacci数列的前20项```c#include <stdio.h>int main() {int a = 0, b = 1, c;printf("Fibonacci数列的前20项为:\n");for (int i = 1; i <= 20; i++) {printf("%d ", a);c = a + b;a = b;b = c;}printf("\n");return 0;}```五、实验结果与分析1. 在计算1至1000之间所有偶数的和时,我们使用了for循环语句,每次循环将变量i加2,直到i大于1000为止,然后将i累加到变量sum中。
一、实验目的1. 理解循环结构的概念和作用;2. 掌握for循环、while循环和do-while循环的使用方法;3. 通过实验,加深对循环结构在实际编程中的应用。
二、实验环境1. 操作系统:Windows 102. 编程语言:Python3.83. 开发工具:PyCharm三、实验内容1. 循环结构的概念及作用2. for循环的使用3. while循环的使用4. do-while循环的使用(Python中无do-while循环,此处使用while循环实现)5. 循环结构的嵌套四、实验步骤1. 循环结构的概念及作用(1)循环结构是一种结构化编程方法,用于重复执行一组代码块,直到满足特定条件为止。
(2)循环结构的作用:a. 提高代码的可读性和可维护性;b. 实现重复操作,简化代码;c. 提高程序的执行效率。
2. for循环的使用(1)for循环的基本语法:for 变量 in 序列:循环体(2)for循环的实例:# 打印1到10的数字for i in range(1, 11):print(i)3. while循环的使用(1)while循环的基本语法:while 条件表达式:循环体(2)while循环的实例:# 打印1到10的数字i = 1while i <= 10:print(i)i += 14. do-while循环的使用(Python中无do-while循环,此处使用while循环实现)(1)do-while循环的基本语法:do:循环体while 条件表达式(2)do-while循环的实例:# 打印1到10的数字i = 1while True:print(i)i += 1if i > 10:break5. 循环结构的嵌套(1)循环结构嵌套的基本语法:外层循环:for 变量 in 序列:循环体for 变量 in 序列:循环体内层循环:for 变量 in 序列:循环体(2)循环结构嵌套的实例:# 打印1到10的乘法表for i in range(1, 11):for j in range(1, i + 1): print(j, end=" ")print()五、实验结果与分析1. 循环结构的概念及作用:通过实验,我们了解到循环结构在编程中的重要作用,它能够简化代码,提高程序的可读性和可维护性。
实验报告
课程名称C程序设计
实验项目循环结构程序设计
实验仪器PC机一台
学院_____信息管理学院_______
专业信息管理与信息系统
班级/学号_信管1301/2013012054_
学生姓名_____姜猛__________________
实验日期_______________________
成绩_______________________
指导教师_______陈立南 _________
北京信息科技大学
信息管理学院
(课程上机)实验报告
实验课程名称: C程序设计专业:信息管理与信息系统班级: 信管1301
学号:2013012054 姓名:姜猛成绩:
实验名称循环结构程序设计实验地点小营校区计算中心实验时间
1.实验目的:
1)熟练掌握用while语句、do……while语句和for语句实现循环的方法
2)掌握在程序设计中用循环的方法实现一些常用算法(如穷举、迭代、递推)
3)进一步学习调试程序的方法
2.实验内容及要求:
1) 输入一行字符,分别统计出其中英文字母、空格、数字和其他字符的个数。
2) 求Sn=a+aa+aaa+aaaa+……(n个a)之值,其中a表示一个数字,n表示a 的位数,n由键盘录入。
3) 1!+2!+3!+4!+……+n!
4)输出所有“水仙花数”。
“水仙花数”是指一个3位数,其各位数字的立方和等于该数本身,如153=1^3 +5^3+3^3 。
5)一个数如果恰好等于除它本身外的因子之和,这个数就称为完数。
例如6=1+2+3。
编程找出1000以内的所有完数。
6)编写程序,完成课本P141的第10题。
7)猴子第一天摘了若干个桃子,当即吃了一半,还不解馋,又多吃了一个;第二天,吃剩下的桃子的一半,还不过瘾,又多吃了一个;以后每天都吃前一天剩下的一半多一个,到第10天想再吃时,只剩下一个桃子了。
问第一天共摘了多少个桃子?
8)编写程序,完成课本P141的第16题。
3.实验过程:
1) 输入一行字符,分别统计出其中英文字母、空格、数字和其他字符的个数。
2)求Sn=a+aa+aaa+aaaa+……(n个a)之值,其中a表示一个数字,n表示a的位数,n由键盘录入。
3) 1!+2!+3!+4!+……+n!
4)输出所有“水仙花数”。
“水仙花数”是指一个3位数,其各位数字的立方和等于该数本身,如153=1^3 +5^3+3^3 。
5)一个数如果恰好等于除它本身外的因子之和,这个数就称为完数。
例如6=1+2+3。
编程找出1000以内的所有完数。
6)编写程序,完成课本P141的第10题。
7)猴子第一天摘了若干个桃子,当即吃了一半,还不解馋,又多吃了一个;第二天,吃剩下的桃子的一半,还不过瘾,又多吃了一个;以后每天都吃前一天剩下的一半多一个,到第10天想再吃时,只剩下一个桃子了。
问第一天共摘了多少个桃子?
8)编写程序,完成课本P141的第16题。
4.实验总结:
学会了循环语句的使用
说明:
1.实验名称、实验目的、实验内容、实验要求由教师确定,实验前由教师事先填好,然后作为实验报告模
版供学生使用;
2.实验过程由学生记录实验的过程,包括操作过程、遇到哪些问题以及如何解决等;
3.实验总结由学生在实验后填写,总结本次实验的收获、未解决的问题以及体会和建议等;
4.源程序、代码、具体语句等,若表格空间不足时可作为附录另外附页。