计算机编程 - 变量



变量是您赋予计算机内存位置的名称,用于在计算机程序中存储值。

例如,假设您想在程序中存储两个值 10 和 20,并在稍后使用这两个值。让我们看看您将如何做到这一点。以下是三个简单的步骤:

  • 创建具有适当名称的变量。
  • 将您的值存储在这两个变量中。
  • 检索并使用变量中存储的值。

创建变量

在 C 编程中,创建变量也称为**声明变量**。不同的编程语言在程序内部创建变量的方式不同。例如,C 编程有以下简单的方法来创建变量:

#include <stdio.h>

int main() {
   int a;
   int b;
}

以上程序创建了两个变量,以使用名称**a**和**b**保留两个内存位置。我们使用**int**关键字创建了这些变量以指定变量**数据类型**,这意味着我们希望在这两个变量中存储整数值。类似地,您可以创建变量来存储**long**、**float**、**char**或任何其他数据类型。例如:

/* variable to store long value */
long a;

/* variable to store float value */
float b;

您可以通过将类型相同的变量放在一行中并用逗号分隔来创建它们,如下所示:

#include <stdio.h>

int main() {
   int a, b;
}

以下是关于变量的一些关键点,您需要注意:

  • 一个变量名只能保存一种类型的值。例如,如果变量**a**已定义为**int**类型,则它只能存储整数。

  • C 编程语言要求在程序中使用变量之前创建变量,即声明。您不能在程序中使用变量名而无需创建它,尽管像 Python 这样的编程语言允许您在不创建变量的情况下使用变量名。

  • 您只能在程序中使用一次变量名。例如,如果变量**a**已定义为存储整数值,则您不能再次定义**a**来存储任何其他类型的值。

  • 有一些编程语言,如 Python、PHP、Perl 等,不需要您在创建变量时指定数据类型。因此,您可以在不指定其数据类型的情况下存储整数、浮点数或长整数。

  • 您可以为变量赋予任何名称,例如**age**、**sex**、**salary**、**year1990**或任何您喜欢的名称,但是大多数编程语言只允许在其变量名中使用有限的字符。目前,我们建议您在变量名中仅使用**a....z、A....Z、0....9**,并使用字母而不是数字开头。

  • 几乎没有任何编程语言允许使用数字开头变量名,因此**1990year**将不是有效的变量名,而**year1990**或**ye1990ar**是有效的变量名。

每种编程语言都提供了更多与变量相关的规则,当您深入了解该编程语言时,您将学习这些规则。

在变量中存储值

您已经看到了上一节中我们是如何创建变量的。现在,让我们在这些变量中存储一些值:

#include <stdio.h>

int main() {
   int a;
   int b;
   
   a = 10;
   b = 20;
}

以上程序有两个额外的语句,我们将在其中将 10 存储在变量**a**中,并将 20 存储在变量**b**中。几乎所有编程语言都以类似的方式在变量中存储值,我们将变量名放在等号 = 的左侧,我们将要存储在变量中的任何值放在右侧。

现在,我们已经完成了两个步骤,首先我们创建了两个变量,然后我们在这些变量中存储了所需的值。现在变量**a**的值为 10,变量**b**的值为 20。换句话说,我们可以说,当执行上述程序时,名为**a**的内存位置将保存 10,内存位置**b**将保存 20。

访问变量中存储的值

如果我们不使用变量中存储的值,那么创建变量并在其中存储值就没有意义。我们知道上述程序有两个变量**a**和**b**,它们分别存储值 10 和 20。所以让我们尝试打印这两个变量中存储的值。以下是一个 C 程序,它打印其变量中存储的值:

#include <stdio.h>

int main() {
   int a;
   int b;
   
   a = 10;
   b = 20;
   
   printf( "Value of a = %d\n", a );
   printf( "Value of b = %d\n", b );
}

当执行上述程序时,它会产生以下结果:

Value of a = 10
Value of b = 20

您一定在上一章中看到了**printf()**函数,我们在其中使用它来打印“Hello, World!”。这次,我们使用它来打印变量的值。我们正在使用**%d**,它将替换为**printf()**语句中给定变量的值。我们可以使用单个**printf()**语句打印这两个值,如下所示:

#include <stdio.h>

int main() {
   int a;
   int b;
   
   a = 10;
   b = 20;
   
   printf( "Value of a = %d and value of b = %d\n", a, b );
}

当执行上述程序时,它会产生以下结果:

Value of a = 10 and value of b = 20

如果您想在 C 编程中使用**float**变量,则必须使用**%f**而不是**%d**,如果您想打印字符值,则必须使用**%c**。类似地,可以使用不同的 % 和字符打印不同的数据类型。

Java 中的变量

以下是使用 Java 编程语言编写的等效程序。此程序将创建两个变量**a**和**b**,并且与 C 编程非常相似,它将在这两个变量中分别赋值 10 和 20,最后以两种方式打印这两个变量的值:

public class DemoJava {
   public static void main(String []args) {
      int a;
      int b;
   
      a = 10;
      b = 20;
   
      System.out.println("Value of a = " + a);
      System.out.println("Value of b = " + b);
      System.out.println("Value of a = " + a + " and value of b = " + b);     
   }
}

当执行上述程序时,它会产生以下结果:

Value of a = 10
Value of b = 20
Value of a = 10 and value of b = 20

Python 中的变量

以下是使用 Python 编写的等效程序。此程序将创建两个变量**a**和**b**,并同时在这些变量中分别赋值 10 和 20。

Python 不需要您在创建变量时指定数据类型,并且无需提前创建变量。

a = 10
b = 20
   
print "Value of a = ", a
print "Value of b = ", b
print "Value of a = ", a, " and value of b = ", b

当执行上述程序时,它会产生以下结果:

Value of a =  10
Value of b =  20
Value of a =  10  and value of b =  20

您可以在 C 和 Java 编程中使用以下语法同时声明变量和赋值:

#include <stdio.h>

int main() {
   int a = 10;
   int b = 20;
   
   printf( "Value of a = %d and value of b = %d\n", a, b );
}

当执行上述程序时,它会产生以下结果:

Value of a = 10 and value of b = 20
广告