文档详情

C语言课件第五章PPT.ppt

发布:2017-04-16约3.45千字共44页下载文档
文本预览下载声明
第5章 循环结构的语句及流程控制;循环结构的语句及流程控制;程序:;说明:;例2:求整数a和b的最小公倍数;程序如下:;循环结构的语句及流程控制;例子4;#include stdio.h void main() { int i=1; double e=1.; double n=1.; do { n=n*i; e=e+1./n; i=i+1; } while (i=100); printf(\n e=%f,e); };循环结构;程序示例;综合例子:;参考程序;求Fibonacci数列的前40个数;参考程序;计算下列公式的和,要求最后一项小于10-5;输入30个字符,分别统计其中数字、字母及其它字符的个数。;求 s=1+(1+2)+(1+2+3)+……,并输出其结果;百钱买百鸡问题;参考程序;输出以下图案;#include stdio.h void main() { int i , j; for (i=1 ; i5 ; i++) {for (j=1; j=40-i ; j++) printf(“ ”); for (j=1; j=2*i-1;j++) printf(“*”); printf(“\n”); } for (i=3 ; i0 ; i--) {for (j=1; j=40-i ; j++) printf(“ ”); for (j=1; j=2*i-1;j++) printf(“*”); printf(“\n”); } };输出九九乘法表;求1000 ?2000之间的素数;参考程序;输入两个正整数,求它们的最大公约数。 分析:求最大公约数可以用“辗转相除法”,方法如下: (1)比较两数,并使m大于n。 (2)将m作被除数,n作除数,相除后余数为r。 (3)将m←n,n←r; (4)若r=0,则m为最大公约数,结束循环。若r≠0,执行步骤步骤(2)和(3) 根据此分析画出流程图,如图所示。;输入m,n;#include stdio.h void main( ) { int m,n,r,t; int m1,n1; printf(“请输入两个正整数:\n”); scanf(“%d,%d”,m,n); m1=m; n1 = n; if(m n) {t = m; m = n; n = t; } //m,n交换值 do {r = m % n; m = n; n = r; }while(r!=0); printf(“最大公约数为:%d\n”,m); printf(“最小公倍数为:%d\n”,m1*n1/m); };求sn=a+aa+aaa+aaaaa+…+aa…aaa, 其中a是一个数字。例如:2+22+222+2222+22222(此时有5项),数字a和项数n由键盘输入。 分析:需要定义如下变量: 数字 a; 项数 n; 计数 count(1~n); 分项 ;#include stdio.h void main() { int n,count=1; long sn=0,tn=0,a; printf(\n请输入a,n:); scanf(%ld,%d,a,n); while(count=n) { tn=tn+a; printf(\n%ld+,tn); sn=sn+tn; a=a*10; count=count+1; } printf(\n n=%d, sn=%ld\n,n,sn); };#include stdio.h void main() { int k; float s=0; for(k=1; k=100;k++) s=s+k; for(k=1;k=50;k++) s=s+k*k; for(k=1;k=10;k++) s=s+1.0/k; printf(“\n sum=%f\n”,s); } ;打印出所有的“水仙花数”;参考程序;找出1000之内的完数.所谓完数即是它的因子之和等于该数。如: 6=1+2+3。并按下列格式输出其因子: its factors are 1,2,3;有一分数序列:2/1,3/2,5/3,8/5,13/8,21/13...求出这个数列的前20项之和。 分析:注意分子与分母的变化规律,可知后项分母为前项分子,后项分子为前
显示全部
相似文档