循环结构与C++编程实例

141、固定计数循环和可变条件循环有什么区别?

  • 固定计数循环 中,条件用于记录已经发生的重复次数,当执行了固定次数的计算或打印了固定行数后,就会退出代码的重复部分;
  • 可变条件循环 中,测试条件不依赖于达到某个计数,而是依赖于一个在每次循环中可以交互变化的变量,当遇到指定值时,无论已经发生了多少次迭代,重复都会停止。

142、编写一个程序,生成一个从 -10 摄氏度开始,到 60 摄氏度结束,以 10 度为增量的摄氏度与华氏度转换表格。

以下是重写后的程序:

```cpp
#include <iostream>
#include <iomanip>
using namespace std;

// A program to convert Celsius to Fahrenheit
int main()
{
    const int MAX_CELSIUS = 60;
    const int START_VAL = -10;
    const int STEP_SIZE = 10;
    int celsius;
    double fahren;

    cout << "DEGREES DEGREES\n"
         << "CELSIUS FAHRENHEIT\n"
         << "------- ----------\n";

    celsius = START_VAL;
    while (celsius <= MAX_CELSIUS)
    {
        fahren = (9.0/5.0) * celsius + 32.0;
        cout << celsius << " " << fahren << endl;
        celsius = celsius + STEP_SIZE;
    }

    return 0;
}

##143、对于以下程序,确定显示的项目总数以及打印的第一个和最后一个数字:#include <iostream> using namespace std; int main() { int num = 0; while (num <= 20) { num++; cout << num << " "; } return 0; }
显示的项目总数为20个,第一个数字是1,最后一个数字是21。

##144、编写一个 C++ 程序,将加仑转换为升。程序应显示从 10 到 20 加仑以 1 加仑为增量的加仑数以及对应的升数。使用 1 加仑 = 3.785 升的换算关系。
以下是实现该功能的 C++ 程序:

```cpp
#include <iostream>
int main() {
    double liters;
    for (int gallons = 10; gallons <= 20; gallons++) {
        liters = gallons * 3.785;
        std::cout << gallons << " 加仑 = " << liters << " 升" << std::endl;
    }
    return 0;
}

这个程序使用 for 循环从 10 到 20 遍历加仑数,每次循环将当前加仑数乘以 3.785 得到对应的升数,并将结果输出。

145、编写一个将英尺转换为米的 C++ 程序。该程序应显示从 3 英尺到 30 英尺,以 3 英尺为增量的英尺数以及对应的米数。使用 1 米 = 3.28 英尺的换算关系。

以下是实现该功能的 C++ 程序:

#include <iostream>
using namespace std;
int main() {
    cout << "Feet\tMeters" << endl;
    for (double feet = 3; feet <= 30; feet += 3) {
        double meters = feet / 3.28;
        cout << feet << "\t" << meters << endl;
    }
    return 0;
}

此程序使用 for 循环遍历从 3 到 30 的英尺数,每次增加 3 英尺。在每次循环中,将英尺数除以 3.28 得到对应的米数,并将英尺和米数输出。

146、一辆汽车以每小时55英里的平均速度行驶4小时。编写一个C++程序,显示汽车在1小时、2小时,以此类推直至行程结束时所行驶的英里数。

以下是解决该问题的C++程序:

#include <iostream>
using namespace std;

int main() {
    int speed = 55;
    int totalHours = 4;
    for (int hour = 1; hour <= totalHours
评论
成就一亿技术人!
拼手气红包6.0元
还能输入1000个字符  | 博主筛选后可见
 
红包 添加红包
表情包 插入表情
 条评论被折叠 查看
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值