浅谈C语言中for循环语句的应用

2016-07-05 07:41郑英姿
读写算·基础教育研究 2016年28期
关键词:程序

郑英姿

【摘 要】C语言中的循环语句有三种:while,do...while,for;for语句使用最为灵活,它完全可以取代while语句,本文针对简单、嵌套for语句,讲述它的语法格式、执行过程及应用。

【关键词】for语句格式;for语句应用;算法分析;程序

一、引用

在C语言中for循环语句的使用最为灵活,不仅可以用于循环次数确定,而且可以用于循环次数不确定的情况,合理的使用for循环语句可以使程序代码大大简化。如何使用for循环语句来实现循环结构程序设计,解决实际问题,是我们说明的重点。

二、for语句格式

for(表达式1;表达式2;表达式3)循环体语句;

表达式1为循环变量赋初值;表达式2为循环条件;表达式3为修改循环变量。

执行过程:首先计算<表达式1>,然后判断<表达式2>的值,若其值为非零,执行循环体,然后转③,若<表达式2>的值为零,则结束循环,转至④。③求解<表达式3>,转②执行。④执行for语句的下一条语句。

三、for语句的几种形式

1、表达式1可以省略,此时应在for语句之前给循环变量赋初值,并且分号不能省略。2、省略表达式2,则认为循环条件始终为真,程序将陷入死循环。3、表达式3可省略,此时应在循环体内对循环变量进行修改,以保证循环能正常结束。4、三个表达式都省略,此时应在循环体内对循环变量进行修改,用break语句终止循环。5、表达式1、3都可以有一项或多项,若有多项则使用逗号表达式。

四、for语句的应用

1、简单for循环语句的应用

例:猴子吃桃子的问题:有一天,小猴摘下了若干个桃子,当即吃掉了一般,还不过瘾,又多吃了一个;第二天接着吃了剩下的桃子的一半后又多吃了一个;以后每天都吃尚存桃子的一半零一个,到第10天早上要吃时只剩下一个了。问小猴第一天共摘了多少个桃子?

算法分析:已知第10,桃子的个数是1;第i=9;桃子的个数x=(1+1)×2=4;第i=8;桃子的个数x=(4+1)×2=10;.................第i=1;桃子的个数x=(x+1)×2;当i=1~9执行循环体x=(x+1),执行循环体9次,得到第一天的桃子数。

程序如下:

#include"stdio.h"

main()

{

inti,x;

x=1;

for(i=9;i>=1;i--)

{

x=(x+1)*2;

printf("i=%2d,x=%d\n",i,x);

}

}

2、for循环嵌套的应用

在一个循环体内又包含有一个或多个完整的循环结构,称为循环的嵌套。内嵌的循环中还可以嵌套循环即为多重循环。执行过程是外层循环变量改变一次,内层循环完成一次完整的循环。

例:打印九九乘法表。

分析:需要两个循环变量i,j;利用两个for循环语句嵌套实现,i为外层循环变量,j为内层循环的变量,i=1时,j=1,i=2时,j=1~i的值.......

程序如下:

#include

voidmain()

{

inti,j;

for(i=1;i<9;i++)

{

for(j=1;j<=i;j++)

printf("%d*%d=%d",i,j,i*j);

printf("\n");

}

}

3、多重for循环的应用

例:百马百瓦问题。有100匹马,驮100块瓦,大马驮3块,小马驮2块,两个马驹驮1块。问大马、小马、马驹各多少?编程列出所有可能的驮瓦方案。

算法分析:设大马、小马、马驹各有x只、y只、z只,根据题目要求,可以用下列图1方程表示,x的取值范围为1~33,y的取值范围为1~50,z的取值范围为2~98。

程序如下:

#include

猜你喜欢
程序
给Windows添加程序快速切换栏
试论我国未决羁押程序的立法完善
失能的信仰——走向衰亡的民事诉讼程序
“程序猿”的生活什么样
英国与欧盟正式启动“离婚”程序程序
基于VMM的程序行为异常检测
侦查实验批准程序初探
我国刑事速裁程序的构建
浅析德国刑事诉讼程序之调查程序
创卫暗访程序有待改进