Ycr's Blog
喜欢你的人一直有空,什么都懂,无所不能。
Ycr's Blog

C++循环结构

while循环语句

格式:

    while (循环条件)
    { 
        循环语句 
    }

do while循环语句

格式:

    do
    {
        提前执行一次
    }
    while (循环条件)
    {
        循环语句
    }

for循环语句

格式:

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

嵌套循环

顾名思义,就是一个个循环套在一起。

示例:

int a = 0;
    for (int i = 1; i <= 10; i++)
    {
        a++;
        for (int j = 0; j <= 10; j++)
        {
            a++;
        }
    }
    cout << a;

输出结果是?

注意

  1. 计算机计数从0开始,计算循环次数时应从0开始算,而不是1。若提供一个数n,你想要循环n次,那应该这样写:
    for (int i = 1; i <= n; i++)

  2. while的循环条件判断中,若是布尔类型,则True (1)会进入循环,反之false (0)不会进入。如果你想要简单写一个无限循环,即可while (1)

示例题目

  1. P1423 小玉在游泳

1.1 题目描述

小玉开心的在游泳,可是她很快难过的发现,自己的力气不够,游泳好累哦。已知小玉第一步能游 2 米,可是随着越来越累,力气越来越小,她接下来的每一步都只能游出上一步距离的 98\%。现在小玉想知道,如果要游到距离 x 米的地方,她需要游多少步呢。请你编程解决这个问题。

1.2 输入格式

输入一个实数 s(单位:米),表示要游的目标距离。

1.3 输出格式

输出一个整数,表示小玉一共需要游多少步。

1.4 样例 #1

1.4.1 样例输入 #1

4.3

1.4.2 样例输出 #1

3

1.5 提示

数据保证,0 \leq s \leq 100,且 s 小数点后最多只有一位。

1.6 思路解析

1.6.1 变量类型

首先看到这个题目,我们就要先用一个变量来存储输入。因为它是一个小数,那用int类型肯定肯定是不行的。

1.6.2 大体思路

定义一个变量表示小玉一次的游泳距离,每游一次就把她游一次的距离乘98%,并把游泳次数加一,当游过的距离大于输入的距离时,跳出循环并输出游泳次数。所以这里我们就可以用一个while循环来解决。

1.6 题解

#include<iostream>
using namespace std;
int main()
{
    long double a; //记录输入数据
    long double d = 0; //记录小玉游过的距离
    long double s = 2; //小玉又一次的初始距离
    int sum = 0; //记录小玉游的次数,因为是整数,int即可。
    cin >> a;
    while (a > d)
    {
        d = d + s;
        s = s/100 * 98;
        sum ++;
    }
    cout << sum << endl;
    return 0;
}

说两件事

  1. 科创社硬件和编程社软件的差别

    小游戏示例:省赛获奖-时间刺客
    智能硬件示例:Smart-Lock

  2. 自己方向的选择(大家都重新填下 上次那个只有上课的人填了) 链接

发表回复

textsms
account_circle
email

Ycr's Blog

C++循环结构
while循环语句 格式: while (循环条件) { 循环语句 } do while循环语句 格式: do { 提前执行一次 } while (循环条件) { …
扫描二维码继续阅读
2022-10-06