循环的初识

生活中我们总是要重复做一些事情,比如我们每天都要上学,每天都要吃饭,每天都要睡觉….在C++中,把重复做某些事情叫做“循环”。循环是非常重要的语言结构,正是有了它才让我们从枯燥的重复性工作中解脱出来。首先,我们学习最常用的循环结构——for循环:

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

让我来解释一下:
初始化:这是循环开始前要做的事情,通常是设置一个变量,并对这个变量赋值。这部分代码只执行一次。

条件:是一个逻辑表达式,如果最后的结果为真(true),循环就会继续;否则,循环立即结束。

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

循环体:这里存放的就是要重复的工作。

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

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

条件部分是你决定是否继续跑步的标准。当你每跑完一圈时,都会检查一下自己是否已经跑完了10圈。如果还没有跑完10圈,你就继续跑下一圈;如果跑够了10圈就立刻停下来休息。在C++中,通常在这里写一个条件表达式,比如i <10,表示只要计数器变量i小于10,就要继续跑(继续循环)。

更新部分是你每跑完一圈后要做的事情。在这个例子中,你可以想象成你每跑完一圈,都会按一下手腕上的计数器,告诉自己已经完成了第几圈。在C++中,我们通常在这里更新计数器变量,比如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 输出10-1所有的整数,每个整数一行。参考代码:

for (int i = 10; i >=1; i--)
{
       cout << i << endl;
}

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

for (int i = 1; i <= 99; i = i + 2)
{
      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;

cin>>n;
for (; n ; )
{
      sum = sum + n % 10;
      n = n / 10;
}

cout << sum << endl;

我们可以看到for()循环中,只有两个分号是必须得,其他部分可以为空。上面的代码也可以写成:

int n, sum = 0;

cin>>n;
for (; n ; n = n / 10)
{
      sum = sum + n % 10;
}

有的时候我们需要构建一个死循环(一定慎用!!!)。那么可以写成:

for(;;)
{
      //循环体
}
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包

打赏作者

呱呱呱~

你的鼓励将是我创作的最大动力

¥1 ¥2 ¥4 ¥6 ¥10 ¥20
扫码支付:¥1
获取中
扫码支付

您的余额不足,请更换扫码支付或充值

打赏作者

实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

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

余额充值