华电大学c++课件第四讲

上传人:桔**** 文档编号:567953528 上传时间:2024-07-22 格式:PPT 页数:19 大小:1.16MB
返回 下载 相关 举报
华电大学c++课件第四讲_第1页
第1页 / 共19页
华电大学c++课件第四讲_第2页
第2页 / 共19页
华电大学c++课件第四讲_第3页
第3页 / 共19页
华电大学c++课件第四讲_第4页
第4页 / 共19页
华电大学c++课件第四讲_第5页
第5页 / 共19页
点击查看更多>>
资源描述

《华电大学c++课件第四讲》由会员分享,可在线阅读,更多相关《华电大学c++课件第四讲(19页珍藏版)》请在金锄头文库上搜索。

1、高级语言程序设计高级语言程序设计 第四章第四章 循环结构程序设计循环结构程序设计 循环结构实现一循环结构实现一循环结构实现一循环结构实现一 whilewhile循循循循环环环环 循环结构实现二循环结构实现二循环结构实现二循环结构实现二 do-do-whilewhile循环循环循环循环 循环结构实现三循环结构实现三循环结构实现三循环结构实现三 forfor循环循环循环循环补充补充 字符型数据字符型数据 循环结构的概念循环结构的概念循环结构的概念循环结构的概念字字 符符 型型 数数 据据 字符型常量字符型常量字符型常量字符型常量8 Y 特定字符特定字符n 换行换行 一个字符一个字符 P14P14

2、字符数据的表示字符数据的表示字符数据的表示字符数据的表示 用用用用ASCIIASCIIASCIIASCII码表示码表示码表示码表示(P292) 字符变量字符变量字符变量字符变量char 变量表;变量表;如:如:char c,a; 字符变量占一个字节字符变量占一个字节字符变量占一个字节字符变量占一个字节 可对字符数据进行的运算可对字符数据进行的运算可对字符数据进行的运算可对字符数据进行的运算字符可参与整数可参加的运算字符可参与整数可参加的运算void main( ) char c1,c2,a1,a2; c1=a; a1=c1-32; a2=c2-32;例例1 确定变量的值确定变量的值c1c297

3、986566如如:a: 普通普通普通普通 转转转转义义义义8bit9707bit c2=b;a1a2同一个英文字符大小写同一个英文字符大小写同一个英文字符大小写同一个英文字符大小写的的的的ASCIIASCII码相差码相差码相差码相差3232大写字符大写字符大写字符大写字符 小写字符小写字符小写字符小写字符1:490字字 符符 型型 数数 据据例例2 写出下面程序的运行结果写出下面程序的运行结果AAA#include #include void main()void main() char a,b,c; char a,b,c; a=A; a=A; b=65; b=65; c=101; c=101

4、; coutabc; coutabc; a6565bc65656565ASCII为八进制为八进制数数101的字符的字符字符的输入和输出字符的输入和输出 printf printf和和和和scanfscanf函数函数函数函数putcharputchar和和和和getchargetchar函数函数函数函数#include void main( ) char t1;scanf(“%c”,&t1);printf(“%cn”,t1);程序中要包程序中要包含含stdio.ht1a a a%c 输出字符输出字符printf(“%dn”,t1);%d 输出输出ASCII码码979797 输入输入输入输入 输出

5、输出输出输出 getchar( ) getchar( )变量变量变量变量= =putcharputchar(字符)(字符)(字符)(字符)#include void main( )char t1; t1=getchar( );t1=getchar( ); putchar( t1); putchar( t1);a a acincin和和和和coutcout专门用于字符输入专门用于字符输入专门用于字符输入专门用于字符输入/ /出的函数出的函数出的函数出的函数#include void main( )char t1; cint1;cint1; coutt1; coutt1;a a a举举 例例#in

6、clude void main( ) char c1,c2;scanf(“%c,%c”,&c1,&c2);c1=c1-32;c2=c2-32;printf(“%c,%cn”,c1,c2);printf(“%2d,%2d”,c1,c2);例例3 写运行结果写运行结果c1c297986566 a,ba,b A,B65,66#include #include void main( ) char c1,c2;c1=getchar();c2=getchar();c1-=32; c2-=32;putchar(c1);putchar(,);putchar(c2);putchar(n);#include #i

7、nclude void main( ) char c1,c2;cinc1c2c1-=32; c2-=32;coutc1“,”c2;A,Ba a b b A,Babab 举举 例例例例4 输入字符,若该字符是大写字符,就变成相应的小写字符;输入字符,若该字符是大写字符,就变成相应的小写字符;若该字符是小写字符,就变成相应的大写字符,其余字符保持不若该字符是小写字符,就变成相应的大写字符,其余字符保持不变变输入输入tt A&t Zt+=32真真假假t a&t z真真假假t-=32输出输出t#include void main() char t;t=getchar();if(t=A&t=a&t=z)

8、t-=32;putchar(t);举举 例例在在在在switchswitchswitchswitch中使用字符中使用字符中使用字符中使用字符例例例例5 5 读程序写运行结果读程序写运行结果读程序写运行结果读程序写运行结果4#include #include void main()void main() int c=0,k=3; int c=0,k=3; switch(65+k) switch(65+k) default:c+=k; default:c+=k; case B:c+;break; case B:c+;break; case C:c+=2;break; case C:c+=2;bre

9、ak; coutc; coutc;#include #include void main()void main() int c=0,k=3; int c=0,k=3; switch(68) switch(68) default:c+=k; default:c+=k; case 66:c+;break; case 66:c+;break; case 67:c+=2;break; case 67:c+=2;break; coutc; cout0) s+=x;if语句和语句和goto语句构成循环语句构成循环 形式形式形式形式标号标号:if(表达式表达式 )goto 标号标号; 循环体循环体 执行过程

10、执行过程执行过程执行过程表达式为真?表达式为真?真真假假退出退出当表达式为真当表达式为真循环体循环体 当型循环当型循环当型循环当型循环 直到型循环直到型循环直到型循环直到型循环标号标号:if(表达式)(表达式) goto 标号标号;循环体循环体 执行过程执行过程执行过程执行过程表达式为真?表达式为真?真真假假退出退出当表达式为真当表达式为真循环体循环体while循环循环 while while循环的一般形式循环的一般形式循环的一般形式循环的一般形式whilewhile(表达式)(表达式)(表达式)(表达式)循环体循环体循环体循环体whilewhile(i5i5) printf(“%d,”,i)

11、; printf(“%d,”,i); i + ; i + ; 表达式为真?表达式为真?表达式为真?表达式为真? while while循环执行过程循环执行过程循环执行过程循环执行过程执行循环体执行循环体执行循环体执行循环体真真退出退出退出退出假假当表达式为真时当表达式为真时 循环体循环体例例例例1 #include 1 #include void main( ) void main( ) int i; int i; i=1; i=1; i=i+1;循环前:循环前: i=1i第一次第一次循环次数循环次数i511,第二次第二次22,第三次第三次33,第四次第四次44,退出循环:退出循环: i=5关

12、注循环前、循环中、关注循环前、循环中、循环后控制变量的值循环后控制变量的值例例2 编程序,计算编程序,计算 s=1+2+3+100(1) 如何得到如何得到1,2100?whilewhile(i5i5) printf(“%d,”,i); printf(“%d,”,i); i + ; i + ; i=1; i=1;i=i=1 1 4 4i=100i=100(2) 如何实现累加?如何实现累加? s为累加和为累加和初始:初始:s=0i=1: s+i ss=s+i;i=2:i=100:s+=i;s=0;i=1,s=0当当 i=100时时s+=ii+输出输出s+=i;s+i ss+i s#include

13、void main ( ) int i,s; i=1; s=0; while(i=100) s+=i; i+; printf(“s=%d”,s); 1 1+2 1+2+.+100i=3: ss+i 1+2+3举举 例例do-while循环循环 do-while do-while循环的一般形式循环的一般形式循环的一般形式循环的一般形式dodo循环体循环体循环体循环体while(while(表达式表达式表达式表达式) ;) ;whilewhile(i5);i5); printf(“%d,”,i); printf(“%d,”,i); i + ; i + ; 表达式为真?表达式为真?表达式为真?表达式

14、为真? do-while do-while循环执行过程循环执行过程循环执行过程循环执行过程执行循环体执行循环体执行循环体执行循环体真真退出退出退出退出假假当表达式为真当表达式为真循环体循环体例例例例1 #include 1 #include void main( ) void main( ) int i; int i; i=1; i=1; 循环前:循环前:i=1i第一次第一次循环次数循环次数11,第二次第二次22,第三次第三次33,第四次第四次44,退出循环:退出循环: i=5 do do例例2 编程序,计算编程序,计算 s=1+2+3+100whilewhile(i5);i5); print

15、f(“%d,”,i); printf(“%d,”,i); i + ; i + ; i=1; i=1; do doi=100(2) 累加累加举举 例例(1) 生成生成1、2、3100#include void main( ) int i=1,s=0; dos+=i;i+; while(i=100);cout“s=”s;do while 和和while的区别的区别9 9#include void main( ) int i=0,a=8; while(i!=0) couta; couta+1;#include void main( ) int i=0,a=8; do couta; while(i!=

16、0); couta+1;8 8循环体一次也没有执行循环体一次也没有执行循环体一次也没有执行循环体一次也没有执行执行了一次循环体执行了一次循环体执行了一次循环体执行了一次循环体9 9for循环循环 for for循环的一般形式循环的一般形式循环的一般形式循环的一般形式for(for(表达式表达式表达式表达式1 1;表达式;表达式;表达式;表达式2 2;表达式;表达式;表达式;表达式3 3)循环体循环体循环体循环体 printf(“*”); printf(“*”); 表达式表达式表达式表达式2 2 2 2为真?为真?为真?为真? for for循环执行过程循环执行过程循环执行过程循环执行过程计算表

17、达式计算表达式计算表达式计算表达式1 1 1 1真真退出退出退出退出假假 例例例例1 #include 1 #include void main( ) void main( ) int k; int k; for(k=0;k10;k+ for(k=0;k10;k+)执行循环体执行循环体执行循环体执行循环体计算表达式计算表达式计算表达式计算表达式3 3 3 3k k的取值:的取值:的取值:的取值:执行循环体执行循环体执行循环体执行循环体: : 0909退出循环体退出循环体退出循环体退出循环体: : 1010例例2 计算计算n的阶乘。的阶乘。n!=1 2 3 (n-1) n递归定义:递归定义:n!

18、=(n-1)! n (n-1)!=(n-2)! (n-1)结论:结论: 已知已知0!,求,求n!p:存放阶乘:存放阶乘i:计数:计数过程:过程:p的初值:的初值:0!=1i=1p*1i=2p*2i=n-1 p*(n-1)i=np*n 确定确定n p=1 for i=1to np*=i 输出输出 #include void main( ) scanf(“%d”,&n);p=1;for(i=1;i=n;i+) p*=i;ppppp*=i;表达式表达式表达式表达式1 1:i=1i=1表达式表达式表达式表达式2 2:i=ni=n表达式表达式表达式表达式3 3:i+i+举举 例例 int p,n,i; printf(“%d!=%d”,n,p);1!2!(n-1)!n!进一步:进一步: 计算阶乘之和计算阶乘之和1!+2!+n!i确定确定n p=1 for i=1to np*=i 输出输出 #include void main()int i,n; float p,s; scanf(%d,&n); p=1;s=0; for(i=1;i=n;i+) p*=i; s+=p; printf(s=%f,s);举举 例例p11!22!.nn!s=0s+=p求和算法和阶乘算法有机结合求和算法和阶乘算法有机结合部分资料从网络收集整理而来,供大家参考,感谢您的关注!

展开阅读全文
相关资源
正为您匹配相似的精品文档
相关搜索

最新文档


当前位置:首页 > 高等教育 > 其它相关文档

电脑版 |金锄头文库版权所有
经营许可证:蜀ICP备13022795号 | 川公网安备 51140202000112号