c语言利用循环结构解决密码转换,C语言课件第六章循环结构.ppt

C语言课件第六章循环结构

第6章 循环结构程序设计 6.1循环结构的组成 循环结构:描述有规律的重复操作问题。 组成:要重复执行的操作,重复执行所需的条件。 例6.1:求10! . 分析:计算1*2*3*……*10; 需重复执行“乘”的操作: 用循环结构描述:设k为每次要乘的乘数,p为部分积,则循环执行的条件为:k<=10;循环重复执行的操作为:k*p送给p, k加1。 流程图: 一个完整的循环结构一般由四部分组成: 循环体、循环控制条件、循环变量的初始化、循环变量的增值 其中,循环体是需要重复执行的操作序列;循环控制条件是重复执行循环体所需的条件,即当条件成立时执行循环体,否则结束循环;循环变量是决定循环条件是否成立的变量;循环变量的增值反映了循环变量的改变规律,它使循环变量的值向着使循环结束的方向改变;循环变量的初始化是指在进入循环前,给循环变量赋初值,否则首次进入循环时,无法确定循环控制条件是否成立。 例6.2从键盘输入20个试验数据(整型),统计正数、负数的个数。 分析: 重复执行20次,每次对一个数进行处理:输入,判断正、负。 设j为已处理实验数据的个数,a,b分别保存正数、负数的个数,则: 循环体:输入第j个数,并处理数据(用选择结构), j增1 循环条件:j<20 循环变量的初值:0 循环变量增值:1 流程图: 循环有两类: 1.当型循环:先判断后执行,即…… 以上两例均为当型循环结构。(常用) 2.直到型循环:先执行后判断,即…… (c语言中无直接描述直到型循环的语句,使用时需先转换成当型循环结构,因此不常用,一般在编写菜单程序时使用。本长只作简要介绍)。 : 6.2 while语句 用于描述“当型”循环结构。 例6.3 用while语句编写例6.1的程序。 main() /*求10!*/ {int k;long p; p=1; k=1; /*给循环变量赋初值*/ while(k<=10) /*循环条件放在while语句的括号中*/ { p=p*k; /*循环体是一个复合语句*/ k++; /*循环变量增值语句*/ } printf("\n10! is:%ld",p); } 思考: 若 n 由键盘输入,如何实现n! ? 6.2 while语句 While 语句的一般格式: while( 表达式) /*表达式为循环条件*/ 循环体语句 其中,循环体语句可以是简单语句、复合语句或空语句。 如本例中循环体为复合语句{ p=p*k; k++; } 分析例6.3,可得while语句的执行过程为: ① 计算while后条件表达式的值。 ② 若表达式的值为真,则执行循环体语句,然后转①;否则,退出循环,即结束while语句。 流程图(见下页) While语句的执行流程图: 例6.4用while语句编写例6. 2的程序。 main() {int a,b,j,x; a=b=0; j=0; /*循环变量赋初值*/ printf("\n enter 20 integers:"); while(j<20) /*条件:j<20*/ { scanf(“%d”,&x); /*循环体为复合语句*/ if(x>0) a++; else if (x<0) b++; j++; /*循环变量增值*/ } printf("\n positive: %d, negative: %d", a, b); } 例6.5 输入某班一门课的成绩并计算其平均成绩。(人数不定,当输入成绩为-1时结束)。 分析:本例的特点是“循环次数不确定”,而是已知循环结束的条件。 循环的组成: 循环体:将有效成绩score 加入部分和sum;输入下一个成绩score。 循环控制条件:score!=-1 循环变量:score 循环变量的改变:用户输入 循环变量的初值: 键盘输入 例6.5程序: main() { float score,sum=0; int n=0; printf("\n enter a score(-1 for end):"); scanf("%f",&score); /*循环变量赋初值*/ while(score!=-1) {sum+=score; n++;

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值