計算機程式設計 - 變數



變數是您賦予計算機記憶體位置的名稱,用於在計算機程式中儲存值。

例如,假設您想在程式中儲存兩個值 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
廣告

© . All rights reserved.