- 1、本文档共104页,可阅读全部内容。
- 2、原创力文档(book118)网站文档一经付费(服务费),不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。
- 3、本站所有内容均由合作方或网友上传,本站不对文档的完整性、权威性及其观点立场正确性做任何保证或承诺!文档内容仅供研究参考,付费前请自行鉴别。如您付费,意味着您自己接受本站规则且自行承担风险,本站不退款、不进行额外附加服务;查看《如何避免下载的几个坑》。如果您已付费下载过本站文档,您可以点击 这里二次下载。
- 4、如文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“版权申诉”(推荐),也可以打举报电话:400-050-0827(电话支持时间:9:00-18:30)。
查看更多
2003C语言第四章(循环)教程
4.2.3 循环语句;程序及程序设计的初步知识;【例5.1】计算ex,lnx。其中x=1,2,3,4,5。;采用循环控制语句实现;while 语句---“当型”循环结构;【例5.2】求 。;改进方法:设两个变量:一个变量sum代表和,
一个变量I代表序列中的某一个数。每一次相
加的结果再放入sum中,再和下一项进行运算,
表示如下:
sum = 1 + 2 + 3 + 4 + 5 + …… + N-1 + N
;算法如下:;【例5.2】求 。;main()
{
int i=1,sum=0;
while(i=100)
{ sum=sum+i;
i++;
}
printf(%d \n,sum);
};注意:;典型例题
1.累加求和、求积(迭代算法);【例5.3】输入10个数,求和算法分析:; #include “stdio.h”
main( )
{float x,sum; int i ;
sum=0;i=1; /*对sum和i赋初值*/
While (i=10) /*循环取决于i的值*/
{ scanf(“%f”,x);
sum=sum+x;
i++;
}
printf(”sum=%f”,sum);
};加数的变化规律:
后一项=前一项+1(即增量为1)
循环变量的规律:
每做一次循环,则增1.
因此可用一个变量i来代表加数和循环变量.
设置表达式:
i=100
设置循环体:
计算sum+i=sum
改变加数
改变循环变量
(i++);;源程序如下:;可能是有规律可寻的,比方说存在通项公式:
a(I)=f(I);
或递推公式:
a(I)=f(a(i-1),I)
算法可描述为:
s=0;n=1;
While (n=100)
{ s=s+通项(某一项);
/*这时通项需要通过计算*/
n++;}
; main( )
{ int i, sum=0;
i=1; /* i 既是通项,又是循环变量*/
while ( i=99 ) /*循环执行的条件是i=99*/
{ sum= sum+ i;
i=i+2 ; }
printf(“%d”, sum);
};典型例题1.累加求和、求积(迭代算法);源程序如下:;【例5.7】求2n。;典型例题2. 菲波拉契数列问题;
a2=a0+a1;
a0=a1;
a1=a2;
a2=a0+a1;;算法描述:; 源程序如下:
#include “stdio.h”
void main()
{ float a0,a1,a2;int i=1;
a0=0;a1=1;printf(“%10.0f,%10.0fd”,a0,a1);
/*循环外给a0,a1赋初值,并输出这两个值*/
while ( i=19) /*从a2开始进入循环,到a20结束*/
{
a2=a0+a1; /*计算公式*/
a0=a1;
a1=a2;
i++;
printf(“%10.0f”,a2) /*输出a2*/
}
}
; #include “stdio.h”
void main()
{ float a0,a1,a2;int i=0;
a0=0;a1=1;
printf(“%10.f,%10.0f”,a0,a1);
while ( i=20)
{ a2=a0+a1; /*计算公式*/
printf(“%8d”,a2);
IF (i%5== 4) /*i=4时,已输出5个*/
printf(“\n”); /*每输出5个换行*/
a0=a1;a1=a2; i++;
}
}
;典型例题2. 菲波拉契数
文档评论(0)