《实验三循环结构和转移语句》由会员分享,可在线阅读,更多相关《实验三循环结构和转移语句(6页珍藏版)》请在金锄头文库上搜索。
1、1.1实验三实验三 循环结构和转移语句(设计性实验)循环结构和转移语句(设计性实验)1.1.1实验目的实验目的1 熟悉用 while 语句,do-while 语句和 for 语句实现循环的方法。 2 掌握循环嵌套的用法。 3 掌握在程序设计中用循环的方法实现各种算法(如迭代,递推,穷举等) 。 4 掌握 go to,break 和 continue 语句的用法。1.1.2实验要点实验要点在 C 语言中主要用以下方法实现循环:1. while 语句 格式:while (表达式) 语句 2. do- while 语句 格式:do 语句 while (表达式); 3. for 语句 for 语句的一
2、般格式:for (表达式 1;表达式 2;表达式 3) 语句for (初值表达式;条件表达式;增值表达式) 语句4.goto 语句 格式:goto 语句标号1.1.3实验要求实验要求1 编程第 7、8(或第 9、10)题,编写好以下程序。(1-5 为填空,6 参照编程) 2 上机输入和调试自己所编的程序并存在自己的 U 盘上。 3 检查实验结果是否正确。 4 上机结束后,整理实验报告。1.1.4实验内容实验内容上机调试运行以下程序。1下面的程序段是从键盘输入的字符中统计数字字符的个数,用换行符结束循环.请填空. #includemain()int n=0;char c;while (c!=)
3、if ( 【 】 ) n+;printf(“n=%d”,nn);键盘输入:abcdef12345k(表示回车)输出结果: 2.下面程序的功能是用”辗转相除法”求两个正整数的最大公约数.请填空.辗转相除法: 如果有二个数 m,n,将大数 M 作为被除数,小数 N 作为除数,相除后余数为 R。如果 R0,则将 NM,将 RN,再进行新的一次除法运算(以新的 M 作被除数,N 作除数) ,得到新的 R。如果 R 仍不等于 0,重复上面过程,直到 R=0 为止。此时 N 为最大公约数。#include main() int r,m,n;scanf(“%d%d”,if (m(表示回车)输出结果: 3.
4、当运行下面程序时,从键盘输入 1 2 3 4 5 1(表示回车)时,输出结果: main()int k=0,n;do scanf(“%d”, k+=n;while(n!=-1);printf(“k=%d n=%dn“,k,n);4. 下列程序是求水仙花数的程序,所谓水仙花数是指一个三位数,其各位数字立方和等于该数。例如,153 是一个水仙花数。main()int i,j,k,n;printf(“ The number is: “);for(n=100;n#define N 10main ( )int i,j;for (i=1; i#define N 10void main ( )int i,j
5、;for (i=10; i=0; i-) for (j=1; j=i; j+)printf(“*”);printf (“n”);参照以上程序,自己编写程序,程序输出以下图形。*7. 一个数如果恰好等于他的因子之和,这个数就称为完数。例如 6 的因子为1 2 3 而 6=1+2+3 因此 6 是完数。编程序找出 1000 之内的所有完数,并按下面格式输出其因子:6 its factors are 1,2,38. 有一个分数序列 21 32 53 85 138 2113 求出这个数列的前 20 项之和。float n;int sum,a1=1,a=2,b=3,b1=2;for(n=b/a;a=a1+a,b=b1+b)sum+=n;sum=sum+2printf(“%fn”, sum)9. 一个球从 100 米高度自由落下,每次落地后又反跳回原来高度的一半,再落下,在反弹。求他在第 10 次落地时,共经过多少米,第十次反弹多高。10. 猴子吃桃问题,猴子第一天摘下若干个桃子,当即吃了一半,还不过瘾,又多吃了一个。第二天早上又将剩下的桃子吃掉一半,有多吃了一个,以后每天早上都吃了前一天剩下的一半零一个。到第十天早上想再吃时,就只剩下一个桃子了。求第一天共摘了多少个桃子。