7.4 for循环

C语言学习栏目目录

目录

举个栗子


for循环把上节(7.3不确定循环和计数循环)叙述的3个行为(初始化、测试和更新)组合在一处。程序清单使用for循环修改了7.2 用关系运算符和表达式比较大小中最后一个程序清单的程序。

/************************************************************************
 功能:使用for循环的计数循环
 ************************************************************************/

#include <stdio.h>
int main(void)
{
	const int NUMBER = 22;
	int count;
	for (count = 1; count <= NUMBER;count++)
		printf("我爱学习!\n");
	system("pause");		//暂停控制台
	return 0;
}

关键字for后面的圆括号中有3个表达式,分别用两个分号隔开。第1个表达式是初始化,只会在for循环开始时执行一次。第 2 个表达式是测试条件,在执行循环之前对表达式求值。如果表达式为假(本例中,count大于NUMBER时),循环结束。第3个表达式执行更新,在每次循环结束时求值。7.2 用关系运算符和表达式比较大小中最后一个用这个表达式递增count 的值,更新计数。完整的for语句还包括后面的简单语句或复合语句。for圆括号中的表达式也叫做控制表达式,它们都是完整表达式,所以每个表达式的副作用(如,递增变量)都发生在对下一个表达式求值之前。下图演示了for循环的结构。

程序清单

/************************************************************************
 功能:使用for循环创建一个立方表
 ************************************************************************/
#include <stdio.h>
int main(void)
{
	int num;
	printf("n 立方\n");
	for (num = 1; num <= 6; num++)
		printf("%5d %5d\n", num, num*num*num);
	system("pause");		//暂停控制台
	return 0;
}

程序清单打印整数1~6及其对应的立方,该程序的输出如下: 

    n   立方
    1     1
    2     8
    3    27
    4    64
    5   125
    6   216
请按任意键继续. . .

for循环的第1行包含了循环所需的所有信息:num的初值,num的终值(其实num的最终值不是6,而是7。虽然最后一次循环打印的num值是6,但随后num++使num的值为7,然后num<= 6为假,for循环结束)和每次循环num的增量。

 

举个栗子

/************************************************************************
 功能:使用递减运算符来递减计数器
 ************************************************************************/
#include < stdio.h>

int main(void)
{
	int secs;
	for (secs = 5; secs > 0; secs--)
		printf("%d 秒!\n", secs);
	printf("点火!\n");
	system("pause");		//暂停控制台
	return 0;
}

该程序输出如下

5 秒!
4 秒!
3 秒!
2 秒!
1 秒!
点火!
请按任意键继续. . .

源码

©️2020 CSDN 皮肤主题: 猿与汪的秘密 设计师:上身试试 返回首页