2011年北京石景山中考一《语文》模试题及答案.ppt_第1页
2011年北京石景山中考一《语文》模试题及答案.ppt_第2页
2011年北京石景山中考一《语文》模试题及答案.ppt_第3页
2011年北京石景山中考一《语文》模试题及答案.ppt_第4页
2011年北京石景山中考一《语文》模试题及答案.ppt_第5页
已阅读5页,还剩93页未读 继续免费阅读

下载本文档

版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领

文档简介

1、第3章 结构控制语句,C 语言程序设计,大连理工大学出版社,第3章 结构控制语句,3.1 引例 3.2 C语言的执行语句 3.3 顺序结构 3.4 选择结构 3.5 循环结构 3.6 程序举例 本章小结,2020/9/9,3.1 引例,输入任意10个整数,求其所有正整数的和。 #include void main() int n,sum=0; int i=1; printf(please enter ten numbers:n); while(i0) /* 选择结构开始 */ sum=sum+n; /* 选择结构结束 */ i+; /* 循环结构结束 */ printf(sum=%d,sum)

2、; 程序运行情况如下: please enter ten numbers: 5 -3 2 -2 7 9 10 -15 10 -1 sum = 43,2020/9/9,2020/9/9,3.2 C语言的执行语句,构成C源程序的基本单位是语句,C语言语句分为声明语句和执行语句两类。 C语言的执行语句分为四类: (1)表达式语句; a=a+1; printf(“ ”); (2)空语句; ; (3)复合语句;a=a+1; printf(“ ”); (4)控制语句.,2020/9/9,3.2.1 表达式语句,格式:表达式;表达式后面加一个分号“;”,构成表达式语句例如:c=a+abs(b); /* 赋值

3、语句 */ x=1,y=0; /* 逗号表达式语句 */ i+; /* 自增1 语句 */ m * n; /* 乘法运算语句,但其计 算结果不能保存,无意义*/ printf(sum=%d,sum); /* 函数调用语句 */,2020/9/9,赋值语句 一般形式: 变量赋值运算符表达式; 赋值语句具有计算和赋值的双重功能 注: (1)赋值运算符除“=”个,还包括复合赋值运算符 如:x+=a*b; (2)赋值运算符命令计算机实现一种操作 如: n=n+1; (3) 赋值运算符右边的表达式又可以是一个赋值表达式 如:x=y=9*6; (4) 赋值语句与赋值表达式功能相同,但性质不同 如:if(x

4、+=y*b) z=x; if(x+=y*b;) z=x; ,表达式语句,2020/9/9,2函数调用语句 一般形式: 函数调用; 通过函数调用语句,可实现所调用函数的特定功能。 如:printf(“Welcome!”); sin(x);,注意: 分号是语句必不可少的一部分 单独的一个分号“;” 构成一个空语句 例如: ; (空语句,是最简单的C语句),表达式语句,2020/9/9,空语句是指只由一个分号构成的语句。即: ;空语句不产生任何操作运算,只是在逻辑上起到一个语句的作用。空语句常用于: (1)构成标号语句,用来标识程序流程的转向点。 (2)构成循环语句中的“空”循环体。 例: A:fo

5、r(i=0;i100;i+) ; B:while(getchar()!=n) ;,3.2.2 空语句,2020/9/9,用一对花括号“”括起来的若干条语句 花括号中可以是表达式语句、控制语句,也可以是复合语句 其形式为: 语句1 语句2 语句n ,3.2.3 复合语句,例如: temp=x; x=y; y=temp; ,2020/9/9,3.2.3 复合语句(续),例如: main( ) int a,b; a=b=100; float c=10.23; printf(%fn,c); printf(%d %dn,a,b); ,要特别注意: 花括号的配对 花括号的位置,C语言学习的难点之一,202

6、0/9/9,(1)复合语句内的各条语句均应以分号“;”结尾,而右花括号“”后面则不能有分号。 (2)复合语句是一个语句,而不是多条语句。 (3)将复合语句用作循环语句的循环体,或作为选择语句某分支内嵌的语句。 (4)复合语句也称为分程序,其可有属于自己的数据声明语句。 例: int i=10,j=20,sum=0; sum=i+j; printf(“%d”,sum); ,关于复合语句的几点说明:,2020/9/9,3.2.4 控制语句,1选择分支控制语句 if ( ) else switch ( ) 2循环控制语句 for ( ) while ( ) do while ( ) 3其他控制语句

7、break、continue、goto return,2020/9/9,C程序的核心部分“三大结构,九大语句”,其中的九大语句就是上面所提到的9种控制语句,而三大结构指的是: (1)顺序结构 (2)选择结构 (3)循环结构 顺序结构是最简单的程序结构,典型的通常分为三部分: (1)使运算对象获得初始数据; (2)进行运算处理; (3)输出处理结果。,3.3 顺序结构,2020/9/9,程序的三种基本结构,顺序结构,N-S结构图,流程图,选择结构,Y(真),N(假),2020/9/9,程序的三种基本结构,循环结构,N(假),Y(真),直到型循环,Y(真),N(假),当型循环,N-S结构图,流程图

8、,2020/9/9,选择结构的控制语句有两种: (1)选择分支语句: (2)开关分支语句: switch ( ) ,3.4选择结构,简单分支语句if ( ) 双分支语句if ( ) else If语句的嵌套,2020/9/9,简单分支语句,语句一般格式 if (表达式) 语句1,功能: 计算表达式的值,如果是一个非0值(即逻辑真),就执行内嵌语句1,否则(即逻辑假)跳过内嵌语句1,顺序执行后续语句。,例如: if (x0) m+; if ( ab ) c=a; a=b; b=c; ,2020/9/9,双分支语句,语句一般格式 if (表达式)语句1 else 语句2 功能: 计算表达式的值,如

9、果它的值是一个非0值(逻辑真),就执行内嵌语句1,之后跳过内嵌语句2,执行后续语句;否则跳过内嵌语句1,执行内嵌语句2,之后执行后续语句。,2020/9/9,双分支语句的算法:,例如: if (x0) m+; else m-; y=y+1; if ( ch= a ,2020/9/9,【例3.2】 从键盘输入x,y两个整数,比较其大小,并按降序输出这两个整数。,思路一:(用一个单分支if语句实现),输入:用scanf 函数输入x和y的值 用if语句判断x和y是否满足xy,若是,则交换两数的值;否则无需交换 输出:输出x和y的值,2020/9/9,void main() int x,y,temp;

10、 printf(“x=”); scanf(“%d”, ,程序运行情况: x=5 y=9 9,5 x=9 y=5 9,5,对比思路二,2020/9/9,思路二:(用两个单分支if语句实现),输入:用scanf 函数输入x和y的值 用if语句判断x和y是否满足x=y,若是,则先x后y输出两数; 用if语句判断x和y是否满足xy,若是,则先y后x输出两数;,2020/9/9,void main() int x,y,temp; printf(“x=”); scanf(“%d”, ,程序运行情况: x=5 y=9 9,5 x=9 y=5 9,5,对比思路三,2020/9/9,思路三:(用一个双分支if语

11、句实现),输入:用scanf 函数输入x和y的值 用if语句判断x和y是否满足x=y,若是,则输出x和y的值;否则用else语句输出y和x的值;,2020/9/9,void main() int x,y,temp; printf(“x=”); scanf(“%d”, ,程序运行情况: x=5 y=9 9,5 x=9 y=5 9,5,对比思路一,对比思路二,2020/9/9,例4.3 判断某年份是闰年还是平年。,判断闰年的条件是: 年份能被4整除而不能被100整除,或者年份能被400整除。,void main() int year; printf(“请输入年份:”); scanf(“%d”, ,

12、2020/9/9,If语句的嵌套,If语句的嵌套格式1: if (表达式1) if (表达式2) 语句1 else 语句2 else if (表达式3) 语句3 else 语句 4,If嵌套,If嵌套,2020/9/9,例1,void main() int a=10,b=8,c=9; if (ab) if (bc) printf(“1”); else printf(“2”); else if (bc) printf(“3”); else printf(“4”); ,程序运行情况: 2,2020/9/9,多重分支语句,If语句的嵌套格式2: if (表达式1) 语句1 else if (表达式2

13、) 语句2 else if (表达式3) 语句3 else 语句4 功能: 依次计算并判断表达式i,为非0时执行后面的语句,都为0时,执行语句n 无论执行完那个语句分支,都转到后续语句,If语句多重嵌套,2020/9/9,例3.4 输入任意一个整数x,判断该数的正负,如果x=0,则输出0 。,运行结果: x=5 x的符号为:+,void main() int x; printf(“x=”); scanf(“%d”, ,2020/9/9,例如:,if(ab) if(ac) if(ad) m=1; else m=2; else m=3;,问题:哪一个 else 和哪一个 if 相匹配?,规则:在嵌

14、套的ifelse语句中,else总是与上面的离它最近的尚未配对的if 配对。,if(ab) if(ac) if(ad) m=1; else m=2; else m=3; ,2020/9/9,学习if语句的难点,if else 语句的配对 正确用表达式描述条件 例如:当x大于5小于10时令x自增 if ( 5x10 ) x+;,正确判断内嵌语句 例如:if(xy) x=x+3; y=y-2; else x=x-3; y=y+2;,if (x5 , , ,2020/9/9,void main() int x,y,z,max; printf(“x=”); scanf(“%d”,if(xy) if(x

15、z) max=x; else max=z; else if(yz) max=y; else max=z; printf(“the max is:%d”,max); ,例3.5由键盘输入三个整数x,y,z,求其最大者 。,2020/9/9,例3.5 由键盘输入三个整数x,y,z,求其最大者。 if(xy) if(xz) /* 表明xy,并且同时xz */ max=x; else /* 表明xy ,并且同时 xz) /* 表明xz */ max=y; else /* 表明x=y ,并且同时y=z */ max=z; printf(the max is:%d,max);,2020/9/9,3.4.3

16、 switch多路分支语句(开关语句),switch语句的一般形式 switch (表达式) case 常量表达式1: 语句序列1 case 常量表达式2: 语句序列2 case 常量表达式n: 语句序列n default : 语句序列n+1 功能:计算表达式的值,与常量表达式的值比较,等于第i个值时,顺序执行语句序列i、i+1、 、 n+1。若与所有常量表达式值都不相等,执行default语句,即语句序列n+1。,2020/9/9,switch语句的算法描述,例如: switch (a) case 5: printf( ,当a等于5,输出: break; break;,当a等于5,输出: s

17、witch(a) case 1: case 2: printf(“A”); case 3: printf(“B”); default: printf(“E”); printf(“F”); case 4: printf(“C”); printf(“H”); case 5: printf(“D”); printf(“33”); ,运行结果: EFCHD33,例,break;,运行结果: EF33,2020/9/9,void main() int score,n; printf(“score=”); scanf(“%d”, ,运行结果: score=82 成绩为B等,例3.6 P82,2020/9/

18、9,void main() char ch; printf(“请输入一小写字母:”); scanf(“%c”, ,运行结果: 请输入一小写字母: i 字母i是元音,例3.7 任意输入一个字母,判断是元音还是辅音。,2020/9/9,有以下程序 void main() int i=1,j=1,k=2; if(j+|k+) 执行后输出的结果是 1,1,2 B) 2,2,1 C) 2,2,2 D) 2,2,3,答案: ,练习题(),2020/9/9,有以下程序 void main() int m=5; if(+m5) printf(“%dn”,m); else printf(“%dn”,m-); 执

19、行后输出的结果是 A) 4 B) 5 C) 6 D) 7,答案: ,练习题(),2020/9/9,语句printf(“%d”,(a=2)的输 出结果是()。,答案: ,练习题(),2020/9/9,有定义语句:int a=1,b=2,c=3,x; 则以下选项中各程序段执行后,x的值不为 3 的是: .if(ca) x=1; B. if(a3) x=3; else if(ba) x=2; else if(a2) x=2; else x=3; else x=1; C.if(a3) x=3; D.if(ab)x=b; if(a2) x=2; if(bc) x=c;,答案: C,练习题(),2020/

20、9/9,下列条件语句中,功能与其他语句不同的是 if(a) printf(%dn,x); else printf(%dn,y); B) if(a=0) printf(%dn,y); else printf(%dn,x); C) if (a!=0) printf(%dn,x); else printf(%dn,y); D) if(a=0) printf(%dn,x); else printf(%dn,y);,答案: D,练习题(),2020/9/9,以下程序段中与语句k=ab?(bc?1:0):0; 功能等价的是() A) if(ab),答案: A,练习题(),C) if(ab) k=1; el

21、se if(bc) k=1;,2020/9/9,有以下程序 main() int a=3,b=4,c=5,d=2; if(ab) if(bc)printf(%d,d+1); elseprintf(%d,+d+1); printf(%dn,d); 运行后的输出结果是 :A) 2 B) 3 C) 43 D) 44,答案: A,练习题(),2020/9/9,main( ) int x=0,y=5,z=3; while(z-0 程序执行后的输出结果是() 3,2,0 B)3,2,-1 C)4,3,-1 D)5,-2,-5,答案: B,练习题(8),2020/9/9,main() int s=0,a=1

22、,n; scanf(%d, 若要使程序的输出值为2,则应该从键盘给 n输入的值是 A)-1 B)-3 C)-5 D)0,答案: B,练习题(9),2020/9/9,4.5 循环结构,用goto语句实现循环控制 while循环控制(当型) do-while循环控制(直到型) for循环控制,2020/9/9,goto语句为无条件转向语句,其一般格式 如下: goto 语句标号; 其中“语句标号”用标识符实现。,4.5.1 用goto语句实现循环,goto语句和语句标号相结合可以实现无条 件循环结构。当然要跳出循环,往往还要 和if语句相结合。形式为: 语句标号:if(条件表达式) 程序段 got

23、o 语句标号; ,2020/9/9,【例】编写程序,求100个自然数的和 即: s=1+2+3+ +100,加数i从1变到100,每循环一次,使i增1,直到i的值超过100。i的初值设为1。 求和设变量 sum 存放和,循环求sum=sum+i,直至i超过100。,思路:寻找加数与求和的规律,加数i从1变到100,每循环一次,使i增1,直到i的值超过100。i的初值设为1。 求和设变量 sum 存放和,循环求sum=sum+i,直至i超过100。,2020/9/9,void main() int i,sum; sum=0; i=1; loop: if(i=100) sum+=i; i+; go

24、to loop; printf(“1至100的累加和为:%d”,sum); ,运行结果: 1至100的累加和为:5050,例3.8 用goto语句和if语句相结合,求1+2+3 +99+100的和。,2020/9/9,不提倡使用goto语句,注意: goto语句能实现程序无条件转移,为编程提供了便利。但是无限制地使用,会破坏程序的结构化程度。 因此应限制使用。,2020/9/9,3.5.2 用while语句实现循环,基本格式: while(条件表达式) 循环体 功能:当条件表达式成立(值非)时,执行循环体语句,再重新判断条件表达式的值,一直循环判断,当条件表达式不成立(值为)时,则退出循环,执

25、行后续语句。,循环控制条件,循环体,2020/9/9,注意:,如果while的 (表达式) 值为0,则循环体一次也不执行 (例如当i的初值=101) 。 在循环体中必须有使循环趋向结束的操作,否则循环将无限进行(死循环)。 在循环体中,语句的先后位置必须符合逻辑,否则会影响运算结果。,思考程序段的输出? int i=1,sum=0; while (i=2) i+; sum=sum+i; ,运行后,输出: sum=5 原因是什么?,2020/9/9,void main() int i=1,sum=0; while(i=100) sum+=i; i+; printf(“1至100的累加和为:%d”

26、,sum); ,运行结果: 1至100的累加和为:5050,例3.9 用while循环语句编写程序,求1+2+3+99+100的和。,i: 循环控制变量,2020/9/9,辗转相除法求两个整数的最大公约数,步骤是: 先用大的一个数除以小的一个数,得第一个余数; 再用小的一个数除以第一个余数,得第二个余数; 又用小的一个数除以第二个余数,得第三个余数; 依此类推,直到余数是为止。那么,最后一个 除数就是所求的最大公约数。,2020/9/9,void main() int n1,n2,t; printf(“输入两个正整数:n”); scanf(“%d%d”, ,例3.10 求两个正整数n1和n2的

27、最大公约数。,/*以下通过辗转相除法求两数的最大公约数*/ While(n2!=0) t=n1%n2; n1=n2; n2=t; printf(“它们的最大公约数为:%dn”,n1); ,2020/9/9,3.5.3 用 do-while语句实现循环,语句一般格式 do 循环体 while (条件表达式); 功能: 先执行循环体,之后计算表达式的值,不为0(逻辑真)时,再执行循环体并判断条件,直到表达式的值为 0 结束循环,转去执行while下面的语句。,2020/9/9,do-while循环的算法,main( ) int i=1,sum=0; do sum=sum+i; i+; while

28、(i=100); printf(%dn,sum); ,例3. 1 1用do-while语句求100个自然数的和,运行结果: 5050,2020/9/9,说明:,while和do-while都能实现循环控制,while结构程序通常都可以转换成do-while结构,区别: do- while 语句先执行循环体再判断条件,循环体至少执行一次; while 语句先判断条件再执行循环体,循环体有可能一次也不执行。,2020/9/9,例3-9修改如下: void main() int i,sum; sum=0; printf(i=); scanf(%d,程序第一次运行: i=50 sum=3825 程序第

29、二次运行: i=101 sum=0,例3.12 修改例3-9与例3-11,比较while循环和 do.while循环的差异。,2020/9/9,修改例3-11如下: void main() int i,sum; sum=0; printf(i=); scanf(%d, ,程序第一次运行: i=50 sum=3825 程序第二次运行: i=101 sum=101,2020/9/9,void main( ) int i=1, n ,flag=1; double sum=0; printf(请输入n的值(n=1):); scanf(%d, ,程序运行结果如下: 请输入n的值:9 sum=0.7456

30、35,例3.13 输入一个正整数 n(n=1), 计算并输出S:S = 1-1/2 + 1/3 - 1/4 + 1/5 -1/6 + +(-)n+11/n,2020/9/9,4.5.4 for语句,语句一般格式 for (表达式1;表达式2;表达式3) 循环体,功能:计算表达式1的值,再判断表达式2,如果其值为非0(逻辑真),则执行内嵌语句(循环体),并计算表达式3;之后再去判断表达式2,一直到其值为0时结束循环,执行后续语句。,循环初始条件,循环控制条件,2020/9/9,for语句的算法,main( ) int i,sum; sum=0; for ( i=1; i=100; i+) sum

31、=sum+i; printf(sum=%dn,sum); ,可部分或全部省略,但“;”不可省略,例3.14 用for循环语句,实现求sum的值,其中sum=1+2+3+100的和。,for (表达式1;表达式2;表达式3) 循环体,2020/9/9,例如: (1)缺省表达式1 i=1; for( ;i100;i+) sum=sum+i; 循环变量i的初始化,已经在for语句之前便 已完成,那么表达式1即可省略。,2020/9/9,(2)缺省表达式2 for(i=1;i+) if(i100) /* i100退出循环 */ break; /*该break语句用于退出循环体 */ else sum=

32、sum+i; ,2020/9/9,(3)缺省表达式1和表达式3 i=1; for( ;i=100 ; ) sum=sum+i; i+; 等价于 i=1; while(i=100) sum=sum+i; i+; ,2020/9/9,(4)三个表达式都缺省 int i=1,sum=0; for(;) sum=sum+i; i+; if(i100) break; ,2020/9/9,说明:,所有用 while 语句实现的循环都可以用for 语句实现。,等价于:,for(表达式1;表达式2 ;表达式3) 语句;,表达式1; while (表达式2) 语句; 表达式3; ,2020/9/9,#inclu

33、de void main() long binary; /*用于存放二进制数*/ int sum=0,temp; int n=0; /*权值n */ printf(请输入一个二进制整数:); scanf(%ld, ,例3.15 将一个二进制整数转换为十进制数。,2020/9/9,4.5.5 continue语句和break语句,1continue语句 continue语句只能用在循环结构中,其作用是跳过循环体内尚未执行的部分(即跳过循环体中continue语句后面的程序段),进入下一次的 循环条件判断。例如以下的循环结构: while(条件1) 语句段1 if(条件2) continue; 语

34、句段2 ,2020/9/9,例如:, int x,n=0,s=0; while (n10) scanf(%d, int x,n=0,s=0; do scanf(%d, for (n=0,s=0; n10; n+) scanf(%d, ,2020/9/9,例4.16 输出1-100之间能被7整除的所有整数。,void main() int i; printf(1-100之间能被7整除的数是:n); for(i=1;i=100;i+) if(i%7!=0) continue; printf(%d ,i); ,运行结果如下: 1-100之间能被7整除的数是:7 14 21 28 35 42 49 5

35、6 63 70 77 84 91 98,2020/9/9,2break语句 功能: 利用break语句能够强迫终止本层循环,转到后续语句执行。 例如以下的循环结构: while(条件1) 语句段1 if(条件2) break; 语句段2 ,2020/9/9,例如:, int x,n=0,s=0; while (n10) scanf(%d, int x,n=0,s=0; do scanf(%d, for (n=0,s=0; n10; n+ ) scanf(%d, ,2020/9/9,例3.17 在100和200之间找出能同时被6和9整除的最小数。,void main() int i; for(i

36、=100;i=200 ;i+) if(i%6=0 ,运行结果如下: 在100-200之间能同时被6和9整除的最小数是:108,2020/9/9,例3.18 将上例改为:输出能同时被6和9整除的最小正整数。,void main() int i; for(i=1; ;i+) if(i%6=0 ,运行结果如下: 能同时被6和9整除的最小正整数是:18,2020/9/9,在使用break语句和continue语句时,需注意以下三点: (1)break不能用在除switch和循环结构之外的其他结构中。 (2)break只能退出一层循环结构(这点将在下节循环嵌套中学习)。 (3)break和continu

37、e的区别在于:执行continue语句,跳过循环体中居于其后的语句,继续循环条件的判断,而并未跳出循环结构;执行break语句,则是跳出循环,结束本层循环结构。,2020/9/9,3.5.6 循环的嵌套,如果循环语句的循环体内又包含了另一条循环语句,则称为循环的嵌套 例如: main( ) int i, j; for ( i=1; i10; i+ ) for ( j=1; j=3; j+ ) printf (“ %dn”,i*j); ,外循环语句,内循环语句,2020/9/9,循环的嵌套,同类型的循环语句可以相互嵌套,不同类型 的循环语句也可以相互嵌套。 诸如以下嵌套形式是合法的。 (1)wh

38、ile(条件1) while( 条件2) ,(2)while(条件1) do while(条件2); ,2020/9/9,(3)for( 表达式1;表达式2; 表达式3 ) while( 条件2) ,2020/9/9,使用循环嵌套时,要注意嵌套的层次性,内嵌 循环要完整的包含在外层循环体内,不可与外 层循环出现交叉现象,例如以下形式是错误的。 (1)for( ; ; ) do while( );,(2) do while() ,while();,while();,2020/9/9,例3.19 打印如下图形。,* * * * * * * * * * * * * * * * * * * * * *

39、 * * 程序设计如下:,void main() int i,j; for(i=1;i=4;i+) for(j=1;j=6;j+) printf(* ); printf(n); ,2020/9/9,例4.20 找出3-100的全部素数。,void main() int i,n; printf(3-100之间的素数:n); for(n=3;n=100;n+) for(i=2;i=n;i+) if(n%i=0) break; if(i=n) printf(%d ,n); ,程序运行结果如下: 3-100之间的素数:3 5 7 11 13 17 19 23 29 31 37 41 43 47 53

40、59 61 67 71 73 79 83 89 97,2020/9/9,3.6 程序举例,例3.21 求ax2+bx+c=0方程的解,方程系数a,b,c由键盘输入。 根据求根公式,有以下几种情况: b2-4ac=0, 方程有两相同实根 b2-4ac0, 方程有两不同实根 b2-4ac0,方程有两共轭虚根,2020/9/9,void main() float a,b,c,delta,x1,x2,r,j; scanf(%f,%f,%f, ,else r=-b/(2*a); i=sqrt(-delta)/(2*a); printf(%f+%fin,r,i); printf(%f-%fin,r,i);

41、 ,2020/9/9,例 3.22 打印出1001000之间的所有“水仙花数”。,运行结果: the water flowers number is:153 370 371 407,水仙花数是指一个三位整数,其各个位数的立方之和等于该数本身。如:153=13+53+33.,void main() int i,j,k,num; printf(the water flowers number is:); for(num=100;num1000;num+) i=num%10; /*分解出个位*/ j=num/10%10; /*分解出十位*/ k=num/100; /*分解出百位*/ if(num=i

42、*i*i+j*j*j+k*k*k) printf(%-5d,num); ,2020/9/9,例3.23兔子问题。有一对兔子,从出生后的第3个月起,每个月都生一对兔子。小兔子长到第3个月时,每个月又生一对兔子。假设兔子不死,那么每个月(求前12个月)兔子的总数是多少?,月份,2,3,4,5,6,2020/9/9,void main() long int f1,f2; int n; f1=f2=1; for(n=1;n=12;n+) printf(%8ld%8ld,f1,f2); if(n%2=0) printf(n); f1=f1+f2; f2=f2+f1; ,程序运行结果: 1 1 2 3 5 6 13 21 34 55 89 144 233 377 610 987 1597 2584 4181 6765 10946 17711 28657 46360,2020/9/9,例3.24 输出九九乘法表。,void main() int i,j;

温馨提示

  • 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
  • 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
  • 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
  • 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
  • 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
  • 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
  • 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。

评论

0/150

提交评论