for循环结构

作者: qiqi 分类: c++ 发布时间: 2024-07-05 15:46

你知道什么是循环吗?对了,循环就是重复做同一件事。比如,我们每天都要上学,每天都要吃饭,每天都要睡觉,这就是生活中的循环。在编程中,循环也是让计算机重复执行一段代码的方法。

在C++中,循环有很多种类型,最常用的一种叫做“for循环”。for循环的结构是这样的:

for (初始化; 循环条件; 更新) {

// 循环体

}

让我来解释一下:

初始化:这是循环开始前要做的事情,通常是设置一个变量。这部分代码只执行一次。

条件:这是循环继续执行的条件,如果条件为真,循环就会继续。

更新:这是每次循环结束后要做的事情,通常是改变变量的值。

循环体:这是每次循环要执行的代码。

假设你是一名酷爱跑步的学生,每天都要在操场上跑10圈。我们可以用一个for循环来模拟这个过程:

初始化部分就像是你开始跑步前的准备动作。你可以想象成你站在起跑线上,准备开始第一圈,手腕上带了一个计数器用来记录你跑了几圈。在C++中,通常设置一个计数器变量,比如int i =0,i用来表示跑完了几圈,i=0说明你还没开始跑。

条件部分是你决定是否继续跑步的标准。你可以想象成你每跑完一圈,都会检查一下自己是否已经跑完了10圈。如果还没有跑完10圈,你就继续跑下一圈。在编程中,通常在这里写一个条件表达式,比如i <10,表示只要计数器变量i小于10,就要继续跑(继续循环)。

更新部分是你每跑完一圈后要做的事情。在这个例子中,你可以想象成你每跑完一圈,都会按一下手腕上的计数器,告诉自己已经完成了第几圈。在编程中,我们通常在这里更新计数器变量,比如i++,表示每完成一次循环,计数器变量i就增加1。

循环体部分是你在跑每一圈时要做的事情。在这个例子中,你可以想象你边跑边喊:“我已经跑完X圈了!”。在编程中,我们通常在这里写需要重复执行的代码,比如打印出当前跑的是第几圈。

for (int i = 0; i <10; i++) {

cout << “我已经跑完” << i << “圈了!” << endl;

}

当你运行这段代码时,一共会输出10行内容:

我已经跑完0圈了!

我已经跑完1圈了!

我已经跑完2圈了!

我已经跑完3圈了!

我已经跑完4圈了!

我已经跑完5圈了!

我已经跑完6圈了!

我已经跑完7圈了!

我已经跑完8圈了!

我已经跑完9圈了!

 

理解了这个例子以后,我们试着解决西面几个问题:

问题1 输出1-10所有的整数,每个整数一行。

参考代码:

for (int i = 1; i <= 10; i++)

{

cout << i << endl;

}

问题2 输出下面的序列:1 3 5 7 …..99,每个整数一行。

参考代码:

for (int i = 1; i <= 99; i = i + 2)

{

cout << i << endl;

}

问题3 输出10-1所有的整数,每个整数一行。

for (int i = 10; i >= 1; i–)

{

cout << i << endl;

}

问题4 计算1+2+3+…+100的和。

参考代码:

int sum = 0;

for (int i = 1; i <= 100; i++)

{

sum = sum + i;

}

cout << sum << endl;

问题5 输入一个整数n,求该整数各个位上的和。比如输入一个整数123,那么各个位上的和就是1+2+3等于6。这个问题主要的难度在于不知道这个整数是几位。

参考代码:

int n, sum = 0;

for (cin >> n; n; n = n / 10)

{

sum = sum + n % 10;

}

cout << sum << endl;

也可以写成:

int n, sum = 0;

cin >> n;

for (; n; n = n / 10)

{

sum = sum + n % 10;

}

cout << sum << endl;

本人更推荐第二种做法。尽量不要把cin与写到循环中。另外从这个例子中我们可以看到for循环里面的三个部分不是必须的(但两个分号是必须有的)。比如下面的示例:

for (; 😉

{

 

}

这个循环是符合C++语法的。只是他是一个死循环。

发表回复

您的邮箱地址不会被公开。 必填项已用 * 标注

标签云