在编程中使用循环来重复特定的块,直到满足某些结束条件为止。C ++编程中有三种循环类型:
for 循环
while 循环
do... while循环
C ++ for循环语法的
for(initializationStatement; testExpression; updateStatement) {
//代码
}
其中,仅testExpression是强制必须的。
for循环如何工作?
初始化语句(initializationStatement)仅在开始时执行一次。
然后,评估测试表达式(testExpression)。
如果测试表达式(testExpression)为false,则for循环终止。但是,如果测试表达式(testExpression)为true,则执行for 循环体内的代码,并更新update表达式(updateStatement)。
再次评估测试表达式(testExpression),然后重复此过程,直到测试表达式(testExpression)为false。
C ++中for循环的流程图
示例:C ++ for循环
// C ++程序查找数字的阶乘
// n阶乘= 1 * 2 * 3 * ... * n
#include <iostream>
using namespace std;
int main()
{
int i, n, factorial = 1;
cout << "输入一个正整数: ";
cin >> n;
for (i = 1; i <= n; ++i) {
factorial *= i; // factorial = factorial * i;
}
cout<< "计算 "<<n<<" 的阶乘 = "<<factorial;
return 0;
}
输出结果
输入一个正整数: 5
计算 5 的阶乘= 120
在程序中,要求用户输入一个正整数,该整数存储在变量n中(假设用户输入了5)。这是for 循环的工作流程:
最初i等于1,测试表达式为true,阶乘为1。
i 更新为2,测试表达式为true,阶乘变为2。
i 更新为3,测试表达式为true,阶乘变为6。
i 更新为4,测试表达式为true,阶乘变为24。
i 更新为5,测试表达式为true,阶乘变为120。
i 更新为6,测试表达式为false,for循环终止。
在以上程序中,变量i不在for循环外使用。在这种情况下,最好在for循环中(在初始化语句中)声明变量。如下所示:
#include <iostream>
using namespace std;
int main()
{
int n, factorial = 1;
cout << "输入一个正整数: ";
cin >> n;
for (int i = 1; i <= n; ++i) {
factorial *= i; // factorial = factorial * i;
}
cout<< "计算 "<<n<<" 的阶乘 = "<<factorial;
return 0;
}
这个代码实现的效果和上面的代码效果是一致的。