C++ for循环语句

1.语法:

for (起始表达式 ; 条件表达式; 末尾循环体)  { 循环语句 }

1.1 起始表达式:

用于变量的声明和赋值.

特别地,通过这种方式定义的变量, 只能在这整个 for 循环语句中使用,对于该循环语句之外的代码,这个变量视为未声明.

若已经在起始表达式中定义过一个变量,那么在这整个for循环语句中都不能再次定义这个变量,只能赋值.

起始表达式可以不写,但是表达式后的分号还是要打. 

起始表达式只在第一次循环之前执行一次, 不参与之后的循环.

如:

#include <iostream>
using namespace std;
int main()
{

	double a = 15.45f;

	for (int a =0; a < 100; a++)   //a从每次增加1直到99,100时不再执行
	{
		cout << sizeof(a) << endl;  //检查变量a占用的内存空间大小
	}



	cout << a << endl;
	cout << sizeof(a) << endl;    //检查变量a占用的内存空间大小
	return 0;
}

这段代码能够通过编译,并且输出100个4,之后输出15.45,再输出一个8.

从中我们可以知道,起始表达式定义的变量与该循环语句外的同名变量是相互独立的,并不冲突.但为避免混淆,最好还是不要这样做.

1.2 条件表达式:

相当于while 和 do……while循环中的条件判断, 实际上是一个逻辑表达式.

当条件表达式值为1(true) 时, 才执行下面的循环语句.

注意,判断条件表达式为真后, 先执行{ 循环语句 } , 再执行末尾循环体.

条件表达式也可以不写, 不写时视为值为1, 即一直执行循环语句,但后面的分号还是要打.

条件表达式中使用的变量必须是已经定义过的变量,如在起始表达式中定义过,或在for循环语句之前就已经定义过.


1.3 末尾循环体:

满足条件并执行完循环语句后,再执行末尾循环体,再开始判断条件(新一轮循环).

注意末尾循环体后不要写分号.

特别地, 即便是在循环语句之后执行, 末尾循环体中使用的变量也必须是已经定义过的变量,如在起始表达式中定义过,或在 for 语句之前就已经定义过

也就是说程序读到 for 这一行的时候就会检查末尾循环体的合法性.

如果这样就是错的,因为 for 之前没有声明过变量 b.

for (int a = 0; a < 100 ; b++)
{
  int b = 0;
  cout << b << endl;
}

1.4 循环语句

for 循环的循环语句中,可以直接使用循环语句外声明的变量.

但是, 你也可以重新声明循环语句外已经定义过的变量,即使它们同名,也不会相互冲突.

但为避免混淆, 最好还是不要这样做.

#include <iostream>
using namespace std;
int main()
{

	double a = 15.45f;

	int b = 0;
	for (int a =0; b < 20; b++)
	{
		double b = 15.45;
		cout << sizeof(b) << endl;
	}



	cout << a << endl;

	cout << sizeof(b) << endl;
	return 0;
}

 

1.5 示例

for ( int i = 0; i < 100; i++)
{
   cout << i << endl;
}

这段代码意为输出 0~99 的所有整数,包括99.

2 区别

for循环相比 while 和 do……while 循环, 语句更加简洁、清晰.

  • 0
    点赞
  • 2
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值