- 1、本文档共47页,可阅读全部内容。
- 2、原创力文档(book118)网站文档一经付费(服务费),不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。
- 3、本站所有内容均由合作方或网友上传,本站不对文档的完整性、权威性及其观点立场正确性做任何保证或承诺!文档内容仅供研究参考,付费前请自行鉴别。如您付费,意味着您自己接受本站规则且自行承担风险,本站不退款、不进行额外附加服务;查看《如何避免下载的几个坑》。如果您已付费下载过本站文档,您可以点击 这里二次下载。
- 4、如文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“版权申诉”(推荐),也可以打举报电话:400-050-0827(电话支持时间:9:00-18:30)。
查看更多
C语言程序设计第六章循环结构程序设计
例C3_5202.C:用for语句实现打印乘法九九表。 #include stdio.h main ( ) { int i, j; for ( i=1; i10; i++ ) printf (%4d,i); /* 打印表头 */ printf (\n-----------------------------------\n); for ( i=1; i10; i++ ) /* 控制打印表体 */ for ( j=1; j=i; j++ ) printf ( (j==i) ? %4d\n : %4d , i*j); } 例C3_5202 输出函数printf中使用了“?”操作,含义相当于: if ( j==i ) printf (%4d\n, i*j ); else printf (%4d, i*j ); §6.3 for语句-实例 §6.3 for语句 for语句的变化形式 for语句中的三个表达式中的任意一个都是可以省略的,但是分号不能省略。 1.省略表达式2,则: for(表达式1; ;表达式3) 就形成了一个死循环。 2.省略表达式1和表达式3,则: for(;表达式2;) 等同于: while( 表达式 ) 据此结论:所有用while语句实现的循环都可以用for语句实现。 3.表达式1、2、3全省略,则: for ( ; ; ) 等同于: while (1) 例C3_5204.C: 草原上有一对小兔子,它们刚出生后的第1个月就会逐步长大,到了第2个月末就生出一对小兔子。第3个月大兔子会继续生一对小兔子,而第2个月出生的小兔子会逐步长大。第4个月时,第1月出生的兔子继续生育,第2月出生的小兔子也可以生育一对小兔子了,第3月出生的小兔子则逐步长大…… 假设这些草原的兔子非常长寿,可以认为它们不会死亡。请建立数学模型,计算 第N个月时,草原上将会有多少对兔子? §6.3 for语句-实例 例C3_5204.C:数列1、1、2、3、5、8、13、21、…是著名的菲波那奇数列,其递推通项公式为: U1 = U2 =1 Un = Un-1 + Un-2 (n=3) 为求出第 N 项的值,请编写程序。 根据递推通项公式,可用递推法编写程序,计算第N项的值。 递推法:由初始的已知条件开始,先计算出第(N-1)步的结果,再利用前面已知的(N-1)项结果,按照递推公式(或遵照递推规则),推出第N步结果。 递推法是程序设计中最常用的方法之一,使用递推法必须有明确的递推初始值和递推规则(递推公式)。 §6.3 for语句-实例 例C3_5204.C程序 #include stdio.h main( ) { int n,i,un1,un2,un; for ( ; ; ) { printf (Input n=?); scanf (%d,n); if ( n = 3 ) break; /* 退出for循环 */ else printf (\nInput n is error !\n); } /* 控制输入正确的N值 */ un = un2 = 1; /* 设置递推初始值 */ for ( i=3; i=n; i++) /* 用递推法计算第N项的值 */ { un1 = un2; un2 = un; un = un1 + un2; } printf (No. %d is %d\n, n, un); } 例C3_5204 §6.3 for语句-实例 例C3_5204.C程序 un = un2 = 1; for (i=3; i=n; i++) { un1 = un2; un2 = un; un = un1 + un2; } i = n? 向前传递前两项 nu1 = un2 un2 = un 成立 不成立 初始化:un=un2=1 计算 un=un1+un2 递推项:i=3 i ++ 数列对应关系: un1,nu2,un 递推计算 §6.3 for语句-实例 语句中的逗号(,)运算 逗号(,)运算常见的三种用途是: 1.在变量说明表中用来分隔变量,起分隔符的作用。 如: int i, j , k , m[3] , *p; 2.在函数的参数表中分隔参数。 如: printf (n=%
文档评论(0)