gpt4 book ai didi

c++ - 稍后更新其中一个变量时,计算结果不会改变

转载 作者:行者123 更新时间:2023-11-30 05:19:02 26 4
gpt4 key购买 nike

在下面的代码中,除了最后一个“total of weapons”,当我将 +1 添加到 numberPistols 时,它没有更新,其他一切都很好。我知道 numberPistols 已更新,但在最后一行使用 numberWeapons 时,它不显示新值。

我仍然不明白为什么,有人可以解释我并告诉我我做错了什么吗?

#include <iostream>
using namespace std;

int main() {
int numberPistols = 5;
int numberKnives = 18;
int numberWeapons = numberPistols + numberKnives;

cout << "Number of Pistols: " << numberPistols << endl;
cout << "Number of Knives: " << numberKnives << endl;
cout << "Total of Weapons: " << numberPistols + numberKnives << endl;

cout << "There's a new Pistol available!" << endl;

numberPistols = numberPistols + 1;
cout << "New amount of Pistols " << numberPistols << endl;
cout << "Updated total of Weapons " << numberWeapons << endl;

return 0;
}

最佳答案

在这个程序中,所有的语句都是按顺序执行的,每条语句只执行一次。 您必须重写或循环语句才能重复。

int numberPistols = 5;
int numberKnives = 18;
int numberWeapons = numberPistols + numberKnives;

让我们对您的程序进行试运行:

  • 首先,你声明了一个整型变量numberPistols并用值“5”对其进行初始化。
  • 那么,你声明了一个整型变量numberKnives并用值“18”初始化它。
  • 在下一条语句中,您声明了一个变量numberWeapons。并使用从 numberPistols 的总和中获得的值对其进行初始化和 numberKnives .
  • 打印所有变量后,您将递增 numberPistols 的值1.

错误:

您已更新 numberPistols但你还没有更新 numberWeapons再次。更改 numberPistols 的值或 numberKnives不会影响 numberWeapons 的值因为它已经存储,您必须用新值更新存储值才能使更改发生。

解决方案:

添加此行 numberWeapons = numberPistols + numberKnives;

numberPistols = numberPistols + 1;之后

现在,您的最终代码将是:

#include <iostream>
using namespace std;

int main() {
int numberPistols = 5;
int numberKnives = 18;
int numberWeapons = numberPistols + numberKnives;

cout << "Number of Pistols: " << numberPistols << endl;
cout << "Number of Knives: " << numberKnives << endl;
cout << "Total of Weapons: " << numberPistols + numberKnives << endl;

cout << "There's a new Pistol available!" << endl;

numberPistols = numberPistols + 1;
numberWeapons = numberPistols + numberKnives; //update the numberWeapons here

cout << "New amount of Pistols " << numberPistols << endl;
cout << "Updated total of Weapons " << numberWeapons << endl;

return 0;
}

关于c++ - 稍后更新其中一个变量时,计算结果不会改变,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/41349345/

26 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com