循环结构程序设计(1)
Java程序设计教程第3章3.3 循环结构(一)
循环条件
System.out.println("上午阅读教材!"); System.out.println("下午上机编程!\n"); System.out.print("合格了吗?(y/n):"); answer = input.next(); } System.out.println("完成学习任务!");
System.out.println(“第4遍写:好好学习,天S天y向ste上m!.o"u);t.println("第" +i+ "遍写: 好好学习,天天向上!");
……
i ++;
System.out.println(“第9999遍写:好好学} 习,天天向上!");
System.out.println(“第10000遍写:好好学习,天天向上!");
while (循环条件){ 循环操作
}
while循环先判断,再执行 不适合描述此故事
do { 循环操作
}while ( 循环条件 );
25/38
语法
先执行一遍循环操作
什么是do-while循环
do {
循环操作
真
} while ( 循环条件 );
分号不可少
符合条件,循环继续执行;否则,循环退出
循环操作
决定写一万遍“好好学习,天天向上!” ,怎么办?
3/38
为什么需要循环2-2
没有使用循环结构 使用while循环
System.out.println("第1遍写:好好学习i,nt天i 天= 1向; 上!");
C语言程序设计第五次作业——循环结构(1)
C语⾔程序设计第五次作业——循环结构(1)(⼀)改错题输出华⽒摄⽒温度转换表:输⼊两个整数lower和upper,输出⼀张华⽒摄⽒温度转换表,华⽒温度的取值范围是{lower,upper},每次增加2℉。
计算公式如下:c = 5×(f-32)/9其中,c表⽰摄⽒温度,f表⽰华⽒温度。
输⼊输出样例1: Enter lower:32 Enter upper:35 fahr celsius 32 0.0 34 1.1输⼊输出样例2: Enter lower:40 Enter upper:30 fahr celsius源程序(有错误的程序)#include <stdio.h>int main(void){int fahr , lower, upper; /* fahr表⽰华⽒度 */double celsius; /* celsius表⽰摄⽒度 */printf("Enter lower:");scanf("%d",&lower);printf("Enter upper:");scanf("%d",&upper);printf("fahr celsius\n"); /* 显⽰表头 *//* 温度转换 */for (fahr = lower , fahr <= upper, fahr ++) ;celsius = 5 /9 * (fahr - 32.0);printf("%3.0f %6.1f\n", fahr, celsius);return 0;}对源程序进⾏编译,结果如下:错误信息1:错误原因:for语句后⾯加了分号。
改正⽅法:将分号去掉。
错误信息2:错误原因:for语句下没有加“{}“改正⽅法:在for语句下加上“{}”错误信息3:错误原因:发现for语句内语句⽤逗号隔开了。
C语言循环结构程序设计1
3 while语句
例1:输出1~200中所有能被4整除的整数。
i=1 i<=200
i % 4==0 T 输出 i i++ F
#include <stdio.h> void main() { int i=1; while(i<=200) { if( i%4==0) printf(“%d,”,i); i++;
2 循环结构算法设计
例1:输出1~200中所有能被4整除的整数。
i=1 i<=200
i % 4==0 T 输出 i i++ F
2 循环结构算法设计
直到型循环结构设计 (1)赋初值 (2)执行循环操作的语句序列 (3)判断循环条件是否为真,是则转(2) 否则转(4) (4)结束循环
2 循环结构算法设计
执行语句 语句 执行表达式3
循环体
for语句等价于下列语句: 语句等价于下列语句: 语句等价于下列语句 表达式1; 表达式 ; while (表达式 ) 表达式2) { 语句; 语句; 表达式3; 表达式 ; }
执行for循环之后的语句
5 for语句
for语句使用最多的情况:
for(循环变量赋初值;循环条件;循环变量增量) 语句; 例如:for( i=1;i<100;i++ ) for( sum+=i; 注意:for语句后边括号中的三个表达式可以省略, 可是括号中的两个分号不能省略
5 for语句
3.省略表达式3 for(i=0;i<10; ) i的值不变,也是 sum+=i; 死循环
5 for语句
例2:求4的10次方 …… int a=1,b=4,i; for(i=0;i<10;i++ ) a=a*b; ……
循环结构程序设计(C语言实验报告)
循环结构程序设计(C语言实验报告)实验目的:1. 掌握循环结构程序设计流程2. 熟悉while、do-while和for循环语句的使用3. 掌握循环语句的嵌套应用实验原理:循环结构是一种非常重要的程序设计结构,其目的是为了让程序可以重复执行一段代码块,从而达到省去大量代码重复编写的目的,也可以是让程序能够按照用户的需求反复执行一段代码块。
在C语言中,常用的循环结构有while、do-while和for三种,这三种循环语句的基本语法结构是:while(循环条件){循环体语句;}其中,while循环和do-while循环的区别在于:while循环条件成立时,不一定会执行一次循环体,但do-while循环条件成立时,会先执行一次循环体,然后判断循环条件是否成立;至于for循环,则是将循环条件、循环初值和循环增量三个要素集成在一起,使用比较方便。
另外,循环结构也可以进行嵌套应用,即在循环体内部再嵌套一个循环,这样可以实现多个变量的循环控制。
应用实例包括如下:1. 打印九九乘法表2. 对一个数组进行排序3. 多重循环实现字谜游戏实验内容:1. while循环:目的是求出1~100的整数和,并在程序运行过程中输出1~100的所有整数。
目的是输入若干个数字,计算它们的平均值。
3. for循环:目的是输入一个数n,求1~n中可以被3或5整除的所有整数和。
4. 循环嵌套:目的是打印九九乘法表。
实验总结:本次实验通过三种常用的循环结构,并结合实例进行学习掌握,同时还熟悉了循环嵌套的应用。
相信这对于日后的程序设计和代码优化应用会非常有帮助。
循环结构的程序设计
循环结构的程序设计循环结构是程序设计中的一种重要的控制结构,它使得程序能够重复执行一定的代码块,从而实现重复任务或者处理大量数据的需求。
我们将介绍循环结构的基本概念和使用方法。
一、循环结构的基本概念循环结构包括三个基本要素:循环变量、循环终止条件和循环体。
循环变量:用于记录循环的当前状态,控制循环的执行次数。
循环变量通常是一个整数或者一个范围。
循环终止条件:当循环变量满足特定的条件时,循环将停止执行。
循环体:循环体是在每次循环执行时要执行的代码块。
二、循环结构的分类常见的循环结构有三种:for循环、while循环和do-while循环。
1. for循环:for循环适合于已知循环次数的情况,在循环体执行之前,初始化循环变量的初始值,每次循环结束后通过循环迭代语句修改循环变量的值。
for 循环变量 in range(初始值, 终止值, 步长):循环体2. while循环:while循环适合于不知道循环次数的情况,在循环体执行之前,需要先判断循环的终止条件是否满足,满足则继续执行循环体,否则跳出循环。
while 循环终止条件:循环体3. do-while循环:do-while循环先执行一次循环体,然后判断循环的终止条件是否满足,满足则继续执行循环体,否则跳出循环。
while True:循环体if not 循环终止条件:break三、循环结构的应用场景循环结构广泛应用于各种需求中,例如:遍历数组或列表:通过循环遍历每个元素,对每个元素进行特定操作。
数字求和:通过循环累加每个数字,得到总和。
查找特定元素:通过循环查找元素是否存在。
循环输出:通过循环输出一定数量的内容,并按照特定规则进行排列。
四、循环结构的注意事项在使用循环结构时,需要注意以下几点:循环变量的初始值和终止条件需要正确设置,否则可能导致无限循环或者无法执行循环体。
循环体中的代码需要谨慎编写,避免死循环或者循环执行次数过多。
循环体执行时可能会修改循环变量的值,需要确保修改后的值符合循环的终止条件,否则可能导致循环无法终止。
实验四 循环结构程序设计
#include "stdio.h"
void main( )
{
}
2.从整数1开始向上找,直至m和n中较小的数,每找到一个能同时被m和n整除的整数,将其存入一个变量中,当循环结束时,变量中存放的即为最大公约数。设n为m和n中较小的数,则如下程序段可实现:
for(k=1; k<=n; k++) if(m%k==0 && n%k==0) x=k;
}
2.字符常量’0’与数值常量0是不同的。
(六)下面程序的功能是:计算1到100之间的奇数之和及偶数之和,并输出。请在程序中的横线上填入适当的内容,将程序补充完整并运行。
/* c4-6.c */
/* 计算1到100之间的奇数之和及偶数之和 */
#include "stdio.h"
void main( )
六、思考题
(一)求两个正整数x和y的最大公约数,请填空。
/* 求最大公约数程序 */
#include "stdio.h"
void main( )
{ int x,y,t,i;
printf("请输入两个数:");
scanf("%d,%d",&x,&y); /*注意scanf语句中间用“,”隔开*/
if(x > y){t = x; x = y; y = t;}
程序的基本结构如下:
/* c4-9.c */
/* 按条件求数列和 */
#include "stdio.h"
void main( )
{定义变量;
变量赋初值;
循环结构程序设计
π2
6
=
1 1 1 1 + 2 + 2 + L + 2 ,求 π 的近似值。当 n 分别取 100,1000,10000 时,结果 2 1 2 3 n
是多少? 要求:分别用循环结构和向量运算(使用 sum 函数)来实现。
1 1 1 ,求 2.根据 y = 1 + + + L + 3 5 2n − 1
f100 中:
(1)最大值,最小值,各数之和。 (2)正数,零,负数的个数。 5.若两个连续自然数的乘积减 1 是素数,则称这两个连续自然数是亲密数对,该素数是亲 密素数。 例如, 2×3-1=5, 由于 5 是素数, 所以 2 和 3 是亲密数对, 是亲密素数。 5 求[2,50] 区间内: (1)亲密数对的对数。 (2)与上述亲密数对对应的所有亲密素数之和。 三、实验结果
(1) y < 3 时的最大 n 值。 (2)与(1)的 n 值对应的 y 值。 3.考虑一下迭代公式: xn +1 =
a 其中 a,b 为正的常数。 b + xn
(1)编写程序求迭代的结果,迭代的终止条件为 xn +1 − xn ≤ 10−5 ,迭代初值 x0 = 1.0 ,迭代 次数不超过 500 次。 (2)如果迭代过程收敛于 r,那么 r 的准确值是
结果: 结果:
请输入 a=1 请输入 b=1 y = 0.6180 请输入 a=8 请输入 b=3 y = 1.7016 请输入 a=10 请输入 b=0.1 y = 3.1127
(2)程序: (2)程序: 程序
a=input('请输入a='); b=input('请输入b='); y1=(-b+sqrt(b.^2+4.*a))/2 y2=(-b-sqrt(b.^2+4.*a))/2
实验作业7 循环结构程序设计(一)
在窗体上每行4个输出100-200之间所有既可以被3整除又可以被6整除的数,并输出这些数的和。
4、编写程序输出图形,运行界面如下:
5、阅读并运行下面的程序,理解程序功能。
实验小结
实验名称
实验七循环结构程序设计(一)
实验时间
第八周
实验目的
(1)掌握由while语句构成的循环结构
(2)掌握由for语句构成的循环结构
(3)学会编写循环结构程序解决实际问题
实验环境
硬件:微型计算机
软件:Microsoft Visual Basic 6.0
实验内容
1、求100以内所有奇数的和,并将结果输出在窗体上。
3.2.4循环结构的程序实现(1)教学设计2023—2024学年高中信息技术浙教版(2019)必修1
-监控预习进度:利用平台功能或学生反馈,监控学生的预习进度,确保预习效果。例如,通过在线平台收集学生的预习笔记和问题,进行评估和反馈。
作用与目的:
-帮助学生深入理解循环结构的概念和原理,掌握循环结构的程序实现。例如,通过讲解和实践活动,使学生能够独立地运用循环结构编写程序。
-通过实践活动,培养学生的动手能力和解决问题的能力。例如,通过编写程序实例,学生可以锻炼自己的编程技巧和问题解决能力。
-通过合作学习,培养学生的团队合作意识和沟通能力。例如,通过小组讨论和合作,学生可以学会与他人分享思路和解决问题。
学生活动:
-自主阅读预习资料:按照预习要求,自主阅读预习资料,理解循环结构的基本概念和实例。例如,阅读PPT中的循环结构图解,理解for循环和while循环的语法和用法。
-思考预习问题:针对预习问题,进行独立思考,记录自己的理解和疑问。例如,思考如何使用循环结构来计算一个数的阶乘,并记录下对于循环结构优缺点的初步理解。
针对以上困难和挑战,教师在教学过程中需要给予学生清晰的讲解和引导,提供充足的实践机会,帮助他们理解和掌握循环结构的程序实现。同时,鼓励学生相互合作、讨论问题,培养他们的团队合作意识和问题解决能力。
教学方法与策略
1.选择适合教学目标和学习者特点的教学方法
为了达到本章节的教学目标,我们将采用多种教学方法相结合的方式,包括讲授、讨论、案例研究和项目导向学习等。讲授法用于向学生传授循环结构的相关概念和原理,为学生提供扎实的理论基础。讨论法用于激发学生对循环结构程序实现的好奇心和探究欲望,通过小组讨论促进学生之间的思想碰撞和交流。案例研究法将通过分析具体的程序实例,使学生能够更好地理解循环结构的应用和意义。项目导向学习将让学生在实际编程项目中应用所学知识,培养他们的问题解决能力和团队合作意识。
实验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项之和。
C语言循环结构程序设计
i=-i;
//然后对i取负,得到它的绝对值
}
if(i==0)
printf("%d",i);
while(i!=0)
{
r=i%10;
printf("%d",r);
i=i/10;
}
printf("\n");
}
注意:循环体的有效范围 例: i=1; while(i<=100)
putchar(‘*’); i++;
i++;
i=10,iSum=55 1+2+3+...+10=55
} while(i<=10);
printf("1+2+3+...+10= %d\n",iSum);
}
例5.7 将一个给定的整数反序输出。
#include "stdio.h"
void main()
{
int i,r;
printf("\nInput an integer:");
{
****
for(j=1;j<=i;j++)
*****
putchar('*');
putchar('\n');
}
}
例5.12 求100以内的全部素数。
void main() {
int m,n,i,prime; i=0; for(m=2;m<=100;m++) {
void main()
{
int m,n,r;
printf("please input two positive integers:");
C语言第5章循环结构程序设计1
(2)在循环体中应有使循环趋向于结束的语句。 比如上例中,循环结束的条件是“score>=0”, 那么当我们把这个班的成绩全部输入完后, 一定要输入一个负数,才能使程序往下执行。 (3)循环体语句有可能一次也不执行。比如说上 例中,当第一次输入的分数就为负数时,则 循环体一次也不执行。
§5.3 do …while语句
① ② ④ ③
for(i=1; i<100; i++) s=s+i; printf(″s=%d″, s); }
/*循环体语句*/
对于for循环,有一点非常重要,即条件测 试永远是在循环开始时进行,如果在循环开 始时条件为假,那么循环体语句就不会被执 行。如: int i=10; for (k=10;k!=i;k++) printf(″%d″,k); printf(″%d″,k);
2、循环控制变量必须在循环体内有所改变,才 能使while和do-while语句的循环控制条件表达 式的值不断改变,直至循环结束。否则会造 成死循环。例如: i=1; while(i<=100) putchar(′*′); i++; 这个循环永远不会结束,因为“i++;”语句 不属于循环体中的语句,循环控制变量i没有 在循环体内被改变。 程序应该作如下改变:
在使用while语句的时候,我们要注意以下 两个问题: (1)循环体如果包含一个以上的语句,应该用花 括号括起来,以复合语句的形式出现。如果 不加花括号,则while语句的范围只到while后 面的第一个分号处。比如上例中,while语句 中如无花括号,则while语句范围只到 “average+=score;”。
#include <stdio.h> main() {int i,n;long fac; Scanf(―%d‖,&n); i=1 while (i<=n) fac=fac*i; i++; } Printf(―%d!=%ld‖,n,fac); }
《循环结构程序设计》课件
for循环结构的执行流程
总结词
详细描述for循环结构的执行流程,包括初始化、条件判断、循环体执行和更新四个步 骤。
详细描述
for循环结构的执行流程包括四个步骤。首先,进行初始化操作,设置循环变量的初始 值。然后,进行条件判断,检查是否满足循环继续的条件。如果条件满足,执行循环体 内的语句。最后,进行更新操作,修改循环变量的值,然后再次进行条件判断,重复执
while循环结构的注意事项
总结词
关键点全覆盖
详细描述
使用while循环结构时需要注意以下几点,首先,条件表达式必须保证在某个时刻变为假,否则循环 将无限进行下去;其次,在循环体内应包含使条件表达式最终变为假的操作;最后,应避免在循环体 内使用使条件表达式永远为真的操作。
04
do-while循ห้องสมุดไป่ตู้结构
do-while循环结构的语法
总结词:简洁明了
详细描述:do-while循环结构的语法包括"do"关键字、"while"关键字、循环体和条件表达式。语法 格式为"do {循环体} while (条件表达式);"
do-while循环结构的执行流程
总结词:逻辑清晰
详细描述:do-while循环结构的执行流程是先执行一次循环 体,然后判断条件表达式,如果条件表达式为真,则再次执 行循环体,否则退出循环。循环体会一直执行直到条件表达 式不再满足为止。
循环结构的应用实例
用for循环计算1到100的累加和
总结词:简单明了
详细描述:通过使用for循环,我们可以轻松地计算从1到 100的所有整数的累加和。在每次循环中,我们将当前数 字添加到总和中,直到我们达到100。
上机实验五 循环结构程序设计一(带参考答案)
上机实验五循环结构程序设计(一)一.目的要求1.掌握while、do-while、for语句的语法规则、执行流程。
2.比较3种循环语句的异同。
3.按题目要求,完成代码。
二.实验内容思考问题:3种循环的异同点?能否相互转换?for循环控制单元的表达式与while循环中表达式是如何对应的?第1题、分别用while、do-while、for语句编程,求数列前20项之和:2/1,3/2,5/3,8/5,13/8······算法提示:1)定义实变量sum、term、a、b、c,整变量i2)初始化:sum=0,分子a=2,分母b=13)初始化:i(计数器)=14)计算第i项term =a/b5)累加sum=sum+term6)计算c=a+b,更新b= a,更新a=c7)计数器加1,i++8)重复4、5、6、7,直到i>209)输出2位精度的结果编写程序:方法一,用while语句:#include<stdio.h>void main(){float s=0, a=2,b=1,c;int i=1;while(i<=20){s=s+a/b;c=a+b;b=a;a=c;i++;}printf(“s=%.2f”,s);}方法二,用do-while语句:#include<stdio.h>void main(){float s=0,a=2,b=1,c;int i=1;do {s=s+a/b;c=a+b;b=a;a=c;i++;} while(i<=20);printf(“s=%.2f”,s);}方法三,用for语句:#include<stdio.h>void main(){float s=0,a=2,b=1,c;int i;for(i=1;i<=20;i++){s=s+a/b;c=a+b;b=a;a=c;}printf(“s=%.2f”,s);}第2题、计算多项式的值:s=1!+2!+3!+4!+ (20)算法提示:该多项式迭代公式为:term=term*i,sum=sum+term注意:哪些变量需要初始化?变量应采用什么类型?编写程序:#include<stdio.h>void main(){int i;double s=0,fact=1;for(i=1;i<=20;i++){fact*=i;s=s+fact;}printf(“s=%f”,s);}把每一次迭代结果输出,程序应做怎样的修改?第3题、输入x和n,计算并输出下式的值:s=x/1+x/3+……+x/n参考答案:#include <stdio.h>int main(){int n,i;float x,s=0;printf("请输入x,n,以,分隔");scanf("%f,%d",&x,&n);for(i=1;i<=n;i+=2){s+=(x/i);}printf("\ns=%f",s);}第4题、输入一批正整数,求出其中的偶数之和。
循环结构的程序设计补充习题(1)
第五章循环结构的程序设计补充习题(1)一、单选题1. 以下叙述正确的是A) do-while语句构成的循环不能用其它语句构成的循环来代替。
B) do-while语句构成的循环只能用break语句退出。
C) 用do-while语句构成的循环,在while后的表达式为非零时结束循环。
D) 用do-while语句构成的循环,在while后的表达式为零时结束循环。
2. 设有程序段int k=10;while(k=0) k=k-1;则下面描述中正确的是。
A)while循环执行10次B)循环是无限循环C)循环体语句一次也不执行D)循环体语句执行一次3. 有如下程序main(){ int x=23;do{ printf("%d",x--);}while(!x);}该程序的执行结果是A) 321 B) 23 C) 不输出任何内容D) 陷入死循环4. 有如下程序main(){ int n=9;while(n>6) {n--;p rintf(“%d”,n);}}该程序段的输出结果是A) 987 B) 876 C) 8765 D) 98765. 有以下程序main(){ int s=0,a=1,n;scanf("%d",&n);do{ s+=1; a=a-2; }while(a!=n);printf("%d\n",s);}若要使程序的输出值为2,则应该从键盘给n输入的值是A)-1 B)-3 C)-5 D)06.若有如下程序段,其中s、a、b、c均已定义为整型变量,且a、c均已赋值(c大于0)s=a;for(b=1;b<=c;b++) s=s+1;则与上述程序段功能等价的赋值语句是A)s=a+b; B)s=a+c; C)s=s+c; D)s=b+c;7. 标有/**/的语句的执行次数是:int y , i ;for(i=0;i<20;i++){ if( i%2==0) continue ;y+=i ; /**/}A) 20 B)19 C)10 D) 98.要求以下程序的功能是计算:s= 1+1/2+1/3+……+1/10main(){ int n; float s;s=;for(n=10;n>1;n--) s=s+1/n;printf("%\n",s);}程序运行后输出结果错误,导致错误结果的程序行是A)s=; B)for(n=10;n>1;n--)C)s=s+1/n; D)printf("%\n",s)9.C语言中while和do-while循环的主要区别是______。
C语言-循环结构程序设计
while循环
01
示例代码
02
```c
int i = 0;
03
while循环
while(i < 10) {
printf("%dn", i);
while循环
• i;
while循环
} ```
do-while循环
总结词
do-while循环是一种先执行循环体再检查条件的循环结构, 至少会执行一次循环体。
循环结构程序设计的重要性
提高代码复用性
通过使用循环结构,可以将重复 执行的代码块抽象出来,减少代
码冗余,提高代码复用性。
简化复杂问题
对于一些复杂的问题,使用循环 结构可以简化问题的解决过程, 提高代码的可读性和可维护性。
提高程序效率
循环结构可以减少重复计算和 操作,提高程序的执行效率。
实现迭代算法
03
避免在循环条件中直接使用赋值语句,以免造成无 限循环或死循环。
05
循环结构与其他结构的结合使用
循环结构与条件结构的结合
循环结构与if条件结构的结合
在循环体内使用if条件语句,根据条件判断是否执行某段代码。
while循环与if条件结构的结合
在while循环中嵌套if条件语句,根据条件判断是否继续循环。
发生。
循环变量的初始化与更新
确保循环变量在使用之前已经初始化,以避免 未定义的行为。
在循环体内更新循环变量的值,以确保循环能 够正常结束。
使用合适的类型和范围来声明循环变量,以避 免溢出或越界的问题。
循环条件的设定与修改
01
根据实际需求合理设定循环条件,确保循环能够正 确执行。
02
在循环体内适时修改循环条件,以控制循环的次数 和流程。
- 1、下载文档前请自行甄别文档内容的完整性,平台不提供额外的编辑、内容补充、找答案等附加服务。
- 2、"仅部分预览"的文档,不可在线预览部分如存在完整性等问题,可反馈申请退款(可完整预览的文档不适用该条件!)。
- 3、如文档侵犯您的权益,请联系客服反馈,我们会尽快为您处理(人工客服工作时间:9:00-18:30)。
实验报告_实验5 循环结构程序设计(1)(学号_姓名)
一、实验目的:
1、熟悉循环结构的循环控制部分和循环体部分;
2、掌握for语句、while语句、do…while语句的使用,并能相互代替;
3、熟悉累加、连乘积、分类统计等算法,能根据实际需要构建循环语句;
4、熟悉随机函数rand()、三角函数sin(x)、cos(x)的使用。
二、实验内容
1、(基础题)用for语句编写程序,计算1-3+5-7+…-99+101的值。
程序代码:
#include<stdio.h>
int main()
{
int sign=-1,sum=0;
int i;
for(i=1;i<=101;i+=2)
{
sign=-sign;
sum=sum+sign*i;
}
printf("1-3+5-7+…--99+101=%d\n\n",sum);
while(1);
return 0;
2、(基础题)用while语句编写程序,如下图所示:输出角度0、10、20、30、……180的正弦、余弦值。
程序代码:
#include<stdio.h>
#include<math.h>
#define PI 3.1415926
int main()
int i=10;
double x;
while(i<=180)
{
x=i/180.0*PI;
printf("角?度¨¨: %4d\t",i);
printf("正y弦¨°: %10.6f\t",sin(x));
printf("余®¨¤弦¨°: %10.6f\n",cos(x));
i+=10;
}
return 0;
}
3、(基础题)参考大课中的例子,用do...while语句编写程序,输出满足n!<=1000000的最大整数n。
程序代码:
#include<stdio.h>
int main()
{
int i=1,p=1;
do
{
p=p*i;
i=i+1;
}while(p<=1000000);
printf("满¨²足Á?n!<=1000000的Ì?最Á?大䨮整?数
ºyn=%d\n\n",i-1);
while(1);
return 0;
}
#include <stdio.h>
#include <stdlib.h>
#include <time.h>
int main()
{
int n1,n2,n3,n4,n5,n6;
n1=n2=n3=n4=n5=n6=0;
const int N=1000000;
int a;
int i;
srand(time(0));
for(i=1;i<=N;i++)
{
a=1+rand()%6;
switch(a)
{
case 1:
n1++;
break;
case 2:
n2++;
break;
case 3:
n3++;
break;
case 4:
n4++;
break;
case 5:
n5++;
break;
case 6:
n6++;
break;
}
}
printf("出现1点的次数为 %d, 所占比例为 %10.6f%%\n",n1,n1*100.0/N);
printf("出现2点的次数为 %d, 所占比例为 %10.6f%%\n",n2,n2*100.0/N);
printf("出现3点的次数为 %d, 所占比例为 %10.6f%%\n",n3,n3*100.0/N);
printf("出现4点的次数为 %d, 所占比例为 %10.6f%%\n",n4,n4*100.0/N);
printf("出现5点的次数为 %d, 所占比例为 %10.6f%%\n",n5,n5*100.0/N);
printf("出现6点的次数为 %d, 所占比例为 %10.6f%%\n\n",n6,n6*100.0/N);
system("pause");
return 0;
}。