跳到主要内容

变量操作

在本课程中,您将学习通过以下方式对变量执行各种操作:

  • 向其写入值
  • 使用数学表达式修改它们
  • 在控制台中显示其内容

您还将学习如何启用简单的用户与程序交互。

用户交互

当我们允许用户与程序交互时,程序会变得更有趣。我们将通过使用 cincharacter input)添加一条新指令来实现这一点。

#include <iostream>

int main()
{
std::cout << "Please enter your age: ";

int age;
std::cin >> age;

std::cout << "You're " << age << " years old.\n";
}

cin 允许我们将所谓的“标准输入”(stdin)的内容保存到 >> 字符后传递的变量中。这允许用户在控制台中输入一些内容,然后该值被放入变量中。

请注意

  • cout 使用 << 运算符
  • cin 使用 >> 运算符

此外,您可以看到我们没有为 age 分配初始值。初始值是不必要的,因为我们在创建变量后立即使用 std::cin,它会为变量赋值。之后,变量现在被初始化

记住

您可以轻松记住箭头的方向

  • cout - 文本输出到控制台 - << 指向 cout
  • cin - 文本输入到变量 - >> 指向变量

数学运算

存储数字的变量可以使用典型的数学符号(运算符)自由修改

操作含义
公共a + ba 加 b
公共a - ba 减 b
公共a * ba 乘以 b
公共a / ba 除以 b
公共a % ba 除以 b 的余数
注意

这些不是所有数学运算符。我们稍后会讨论其余的。

警告

^ 符号不是幂运算!

让我们在实践中看看这些运算符

#include <iostream>

int main()
{
std::cout << "Please enter your age: ";

int age;
std::cin >> age;

std::cout << "In 10 years, you'll be " << (age + 10) << " years old\n";
std::cout << "5 years ago, you were " << (age - 5) << " years old\n";
std::cout << "When you are twice as old, you'll be " << (age * 2) << " years old\n";
std::cout << "Someone twice as young is " << (age / 2) << " years old\n";
std::cout << (age % 10) << " years ago your age was divisible by 10";
}
对齐

请注意,您使用空格还是制表符来对齐代码并不重要。

上述运算符都不会影响它们所作用的变量。 age 的内容不会改变

通过输入年龄 20,我们将得到以下结果

控制台
In 10 years, you'll be 30 years old
5 years ago, you were 15 years old
When you are twice as old, you'll be 40 years old
Someone twice as young is 10 years old
0 years ago your age was divisible by 10
描述
(age: 20 => + 10 = 30)
(age: 20 => - 5 = 15)
(age: 20 => * 2 = 40)
(age: 20 => / 2 = 10)
(age: 20 => % 10 = 0)

正如我们所看到的,变量 age 的值在每个步骤中都保持不变(始终保持值为 20)。
这是因为在符号中

a + b

a + b 表达式会产生一个值,并且变量的内容保持不变

修改变量

通常,我们希望通过赋予变量新值来更改其值。您可以简单地再次对变量使用赋值运算符 = 来赋予它新值。

在下面的示例中,变量 age 最初创建时值为 20。然后,我们为其分配了一个新值 37

int age = 20;
age = 37;

例如,如果我们要将变量增加 10,我们必须这样分配一个加法表达式的结果

age = age + 10;

由于这种模式非常常见,C++ 为此提供了一种简写语法

age += 10;

您可以在下面的示例中看到它是如何工作的

main.cpp
#include <iostream>

int main()
{
std::cout << "Please enter your age: ";

int age;
std::cin >> age;

std::cout << "You're now " << age << " years old\n";
age += 30;
std::cout << "In 30 years, you'll be " << age << " years old";
}
结果
You're now 20 years old
In 30 years, you'll be 50 years old

让我们按顺序分析该程序执行的步骤。考虑变量 age

  • 7 行定义了一个名为 ageint 类型变量,没有初始值。
  • 当执行第 8 行时,程序会在此处等待,直到用户输入内容并按 回车
    • 收到输入后,std::cin 将读取的值放入 age 中。由于我们输入了 20,所以 age 现在是 20
  • 当执行第 10 行时,std::cout 打印出 age 的值,仍然是 20。
  • 11 行将值更改为 20 + 30 的结果,即 50age 现在的值是 50
  • 最后,执行第 12 行,显示值 50

除了上面介绍的运算符 +=,还有许多其他运算符可以修改变量的内容;以下是最常见的几种

简写运算符等同于
公共a += ba = a + b
公共a -= ba = a - b
公共a *= ba = a * b
公共a /= ba = a / b

以及这些运算符在实际操作中的演示

下面是输入数字 20 后程序运行的演示。

您将在接下来的课程中了解更多关于变量的可能性。

变量操作

在本课程中,您将学习通过以下方式对变量执行各种操作:

  • 向其写入值
  • 使用数学表达式修改它们
  • 在控制台中显示其内容

您还将学习如何启用简单的用户与程序交互。

用户交互

当我们允许用户与程序交互时,程序会变得更有趣。我们将通过使用 cincharacter input)添加一条新指令来实现这一点。

#include <iostream>

int main()
{
std::cout << "Please enter your age: ";

int age;
std::cin >> age;

std::cout << "You're " << age << " years old.\n";
}

cin 允许我们将所谓的“标准输入”(stdin)的内容保存到 >> 字符后传递的变量中。这允许用户在控制台中输入一些内容,然后该值被放入变量中。

请注意

  • cout 使用 << 运算符
  • cin 使用 >> 运算符

此外,您可以看到我们没有为 age 分配初始值。初始值是不必要的,因为我们在创建变量后立即使用 std::cin,它会为变量赋值。之后,变量现在被初始化

记住

您可以轻松记住箭头的方向

  • cout - 文本输出到控制台 - << 指向 cout
  • cin - 文本输入到变量 - >> 指向变量

数学运算

存储数字的变量可以使用典型的数学符号(运算符)自由修改

操作含义
公共a + ba 加 b
公共a - ba 减 b
公共a * ba 乘以 b
公共a / ba 除以 b
公共a % ba 除以 b 的余数
注意

这些不是所有数学运算符。我们稍后会讨论其余的。

警告

^ 符号不是幂运算!

让我们在实践中看看这些运算符

#include <iostream>

int main()
{
std::cout << "Please enter your age: ";

int age;
std::cin >> age;

std::cout << "In 10 years, you'll be " << (age + 10) << " years old\n";
std::cout << "5 years ago, you were " << (age - 5) << " years old\n";
std::cout << "When you are twice as old, you'll be " << (age * 2) << " years old\n";
std::cout << "Someone twice as young is " << (age / 2) << " years old\n";
std::cout << (age % 10) << " years ago your age was divisible by 10";
}
对齐

请注意,您使用空格还是制表符来对齐代码并不重要。

上述运算符都不会影响它们所作用的变量。 age 的内容不会改变

通过输入年龄 20,我们将得到以下结果

控制台
In 10 years, you'll be 30 years old
5 years ago, you were 15 years old
When you are twice as old, you'll be 40 years old
Someone twice as young is 10 years old
0 years ago your age was divisible by 10
描述
(age: 20 => + 10 = 30)
(age: 20 => - 5 = 15)
(age: 20 => * 2 = 40)
(age: 20 => / 2 = 10)
(age: 20 => % 10 = 0)

正如我们所看到的,变量 age 的值在每个步骤中都保持不变(始终保持值为 20)。
这是因为在符号中

a + b

a + b 表达式会产生一个值,并且变量的内容保持不变

修改变量

通常,我们希望通过赋予变量新值来更改其值。您可以简单地再次对变量使用赋值运算符 = 来赋予它新值。

在下面的示例中,变量 age 最初创建时值为 20。然后,我们为其分配了一个新值 37

int age = 20;
age = 37;

例如,如果我们要将变量增加 10,我们必须这样分配一个加法表达式的结果

age = age + 10;

由于这种模式非常常见,C++ 为此提供了一种简写语法

age += 10;

您可以在下面的示例中看到它是如何工作的

main.cpp
#include <iostream>

int main()
{
std::cout << "Please enter your age: ";

int age;
std::cin >> age;

std::cout << "You're now " << age << " years old\n";
age += 30;
std::cout << "In 30 years, you'll be " << age << " years old";
}
结果
You're now 20 years old
In 30 years, you'll be 50 years old

让我们按顺序分析该程序执行的步骤。考虑变量 age

  • 7 行定义了一个名为 ageint 类型变量,没有初始值。
  • 当执行第 8 行时,程序会在此处等待,直到用户输入内容并按 回车
    • 收到输入后,std::cin 将读取的值放入 age 中。由于我们输入了 20,所以 age 现在是 20
  • 当执行第 10 行时,std::cout 打印出 age 的值,仍然是 20。
  • 11 行将值更改为 20 + 30 的结果,即 50age 现在的值是 50
  • 最后,执行第 12 行,显示值 50

除了上面介绍的运算符 +=,还有许多其他运算符可以修改变量的内容;以下是最常见的几种

简写运算符等同于
公共a += ba = a + b
公共a -= ba = a - b
公共a *= ba = a * b
公共a /= ba = a / b

以及这些运算符在实际操作中的演示

下面是输入数字 20 后程序运行的演示。

您将在接下来的课程中了解更多关于变量的可能性。