C語言 變數(variable)

更新於 發佈於 閱讀時間約 10 分鐘

說明

在電腦中儲存資料的容器,就像是一個人的稱呼。如小明(變數名稱)是個男生(值),因此當我們聽到小明(變數名稱)這個名字,第一時間會意會到他是個男生(值)。

重點

  供回來複習時學習,如果是初學者可以先跳到分類開始,遇到不會的或者是自己有疑問的,再回來這查詢便可。

△定義變數

  當我們想要設置一個變數的時候,只要遵守這個格式就行了。
<變數類型> <變數名稱> = <值>;
  = ;
int a = 1;//定義一個整數a,並賦值1
<儲存類> <變數類型> <變數名稱> = <值>;
   = ;
auto int a = 1;//定義一個自動變數,並賦值1
  由於本篇主要在講變數,因此不細談儲存類,若想更多加了解儲存類,歡迎點我

△文字的定義

  在電腦世界裡,我們會用' '以及" "括弧內容去區分文字。' '是專門括弧字元的,而" "則是括弧字串的。字元與字串在下方有解釋喔~

△文字與數字的差別

  '1'與1同樣都是1,卻有很大的不同。文字的特點在於,無論內容是否是我們常見的數字,它都無法用於計算,因為它只是"文字",而數字才是可以用來計算的。

△整數與浮點數

  首先,浮點數雖然看起來很奇怪,但其實它就是小數的意思。而電腦當中的整數與小數也是不共通的。當一個變數類型是整數時,我們是無法給它一個小數的值。反之小數也不能擁有整數的值,即使是整數也必須在後方補上小數點以及數個0。
#include "stdio.h"
float a=1;//定義小數a,並賦值1
int main(void){
  printf("%f",a);
}
--------------------------------結果---------------------------------
1.000000

signed(有號)unsigned(無號)的區別

  由於電腦的容量有限,每一個變數所占空間都要用得很小心,因此程式語言中的所有變數都有一個範圍,以防止空間的濫用。在所有跟整數有關的變數中,範圍都是由負數範圍一直到正數範圍,如short的範圍在-32768~32767之間。但剛才我們也說了,我們要盡可能省下空間。因此,當今天我們確定這個數字不會有負數時,就可以使用unsigned(無號)去掉負號讓它的空間只會包含0~正數,以此擴大它的範圍。而unsigned short 就會把-1~-32768的空間給予正數,變成範圍在0~65535之間。
<有無號> <整數類型> <變數名稱> = <值>;
unsigned/signed   = ;
unsigned int a =1;//定義一個無號的整數a,並賦值1

e是什麼符號?

  我們經常會看到e這個符號,特別是在浮點數的範圍能看見,如3.4e-38的意思其實就是3.410的-38次方,即是(x)e(y)為x*10的y次方,且x與y可為正或負數。

分類

  平常,我們可能不會太在乎數字與文字的差別,認為它們就是一堆可認知的符號。但實際上在程式語言當中,所有的資料都有嚴密的分類。如:

△字元、字符(char)

  簡單來說就是指單個字,但嚴格來說是1byte能夠表達的字,也就是ASCII碼當中小於(不含)128的所有字。至於一般的中文字由於不能由1位元表達出來,因此不被視為字元喔。

△字串、字符串(string)

    也就是所謂的一串字,但在C語言中它卻是以字元的集合存在。每一個字串的最後一個字都會是"\0",相當於是告訴電腦,這一串字已經結束了。

△短整數、短整型(short int)

  2bytes能表達的數字類型,範圍在-32768~32767之間。
  若為unsigned short,範圍則是在0~65535之間,

△整數、整型(int)

  4bytes能表達的數字類型,範圍在-2147483648~2147483647之間。
  若為unsigned int範圍則是0~4294967295。

長整數、長整型(long int)

  4bytes能表達的數字類型,範圍在-2147483648~2147483647之間。
  若為unsigned long範圍則是0~4294967295。

超長整數、超長整型(long long int)

  8bytes能表達的數字類型,範圍    在-9223372036854775808~9223372036854775807之間。
  若為unsigned long long範圍則是0~18446744073709551615。

△單精度浮點數、單精度浮點值(float)

  4bytes能表達的小數類型,範圍在±3.4e-38~±3.4e+38之間,而有效位數為前7位,但能絕對保證的只有前6位數字。點我看更多關於浮點數

△雙精度浮點數、雙精度浮點值(double)

  8bytes能表達的小數類型,範圍在±1.79E-308 ~ ±1.79E+308之間,而精確位數前16位,但絕對保證的只有前15位數字。

長雙精度浮點數、長雙精度浮點值(long double)

  16bytes能表達的小數類型,範圍在±1.79E-308 ~ ±1.79E+308之間,與double相同,但是精確位數則是前19位,而絕對保證的只有前18位數字。

應用

宣告與輸出

#include "stdio.h"
#define __USE_MINGW_ANSI_STDIO 1
int main(void){
  此處的輸出可參考格式化輸出
  char a = 'A';//字元宣告
  printf("%c\n",a);//%c 指字元
  char b[] = "快樂賣肝:(";//字串(字元集合)宣告
  printf("%s\n",b);//%s指字串
  short d = 1;//短整數宣告
  printf("%d\n",a);//%d指整數
  int e = 1;//整數宣告
  printf("%d\n",e);
  long f = 1;//長整數宣告
  printf("%ld\n",f);//%ld 只是%d 前面加個l表示長整數
  long long g = 1;//超長整數宣告
  printf("%lld\n",g);//同理兩個l 表示超長整數
  float h = 0.5;//單精度浮點數宣告
  printf("%f\n",h);//%f 代表float
  double i = 0.5;//雙精度浮點數宣告
  printf("%lf\n",i);//%lf 代表double
  long double j = 1.5;//長雙精度浮點數宣告
  printf("%Lf\n",j);//%Lf 代表long double
}
--------------------------------結果---------------------------------
A
快樂賣肝:(
有點想睡:(
65
1
1
1
0.500000
0.500000
1.500000

運算符

#include "stdio.h"
int main(void){
  printf("1 + 1的值為: %d\n",1+1);//加法
  
  printf("1 - 1的值為: %d\n",1-1);//減法
  printf("1 * 2的值為: %d\n",1*2);//乘法
  printf("4 / 2的值為: %d\n",4/2);//除法
  printf("10 \% 5的值為: %d\n",10%5);//取餘數
  int a =0;
  a++;//a的值再加上1
  printf("a++ 的值為: %d\n",a);
  int b = 2;
  b--;//b的值再減1
  printf("b-- 的值為: %d\n",b);
  int text = 10;
  int x =1;
  x += text;//相當於是x = x + text的簡寫
  printf("x += text的值為: %d\n",x);
  x -= text;//相當於是x = x - text的簡寫
  printf("x -= text的值為: %d\n",x);
  x *= text;//相當於是x = x * text的簡寫
  printf("x *= text的值為: %d\n",x);
  x /= text;//相當於是x = x / text的簡寫
  printf("x /= text的值為: %d\n",x);
  x = 12;
  x %= text;//相當於是x = x % text的簡寫
  printf("x \%= text的值為: %d\n",x);
}
--------------------------------結果---------------------------------
1 + 1的值為: 2
1 - 1的值為: 0
1 * 2的值為: 2
4 / 2的值為: 2
10 % 5的值為: 0
a++ 的值為: 1
b-- 的值為: 1
x += text的值為: 11
x -= text的值為: 1
x *= text的值為: 10
x /= text的值為: 1
x %= text的值為: 2

結論

  變數是很基本的內容,一定要學好唷。  
為什麼會看到廣告
avatar-img
12會員
18內容數
這裡是來自 高科大 資管系二年級的學生,希望能在學習的過程中,也分享這些知識給大家。
留言0
查看全部
avatar-img
發表第一個留言支持創作者!
咖啡因學習教室 的其他內容
前言 輸出 printf 格式控制字元、格式控制符(format char) 前言 輸出控制字元、輸出控制符 轉義字元、轉義符 格式控制字元、格式控制符 輸入 scanf gets gets與scanf差異
auto(自動)、register(暫存器)、static(靜態)、extern(外部),以作用範圍(scope)、存儲時期(life time)、連結(linkage)的不同作為區別。
前言 輸出 printf 格式控制字元、格式控制符(format char) 前言 輸出控制字元、輸出控制符 轉義字元、轉義符 格式控制字元、格式控制符 輸入 scanf gets gets與scanf差異
auto(自動)、register(暫存器)、static(靜態)、extern(外部),以作用範圍(scope)、存儲時期(life time)、連結(linkage)的不同作為區別。
你可能也想看
Google News 追蹤
Thumbnail
隨著理財資訊的普及,越來越多台灣人不再將資產侷限於台股,而是將視野拓展到國際市場。特別是美國市場,其豐富的理財選擇,讓不少人開始思考將資金配置於海外市場的可能性。 然而,要參與美國市場並不只是盲目跟隨標的這麼簡單,而是需要策略和方式,尤其對新手而言,除了選股以外還會遇到語言、開戶流程、Ap
Thumbnail
嘿,大家新年快樂~ 新年大家都在做什麼呢? 跨年夜的我趕工製作某個外包設計案,在工作告一段落時趕上倒數。 然後和兩個小孩過了一個忙亂的元旦。在深夜時刻,看到朋友傳來的解籤網站,興致勃勃熬夜體驗了一下,覺得非常好玩,或許有人玩過了,但還是想寫上來分享紀錄一下~
Thumbnail
我們在上一篇簡單介紹了 int(整數)是做什麼用的,接下來要介紹常和他一起出現的好朋友 float 浮點數 跟 str 字串。 float 浮點數: 函數的式子寫做 float( ) ,浮點數就是帶有小數點的資料型別,他可以將字串或是數字轉換為有小數點的狀態。前提是字串內的字符必須是數字的格
Thumbnail
今天要來介紹的是Python中資料型別的函數, 這幾天學習的素材是Youtube上“程式柴大大的Python 6 小時初學者課程”,一步一步帶著大家操作並解,學習中也別忘了要多多練習,練習的部分我是把我學到的東西請Chatgpt幫我出類似的題型並讓我練習。 以下我先寫出一個簡單的code,再加以
Thumbnail
這篇內容,將會講解什麼是變數,以及與變數相關的知識。包括變數、資料型態、變數賦值、變數的命名規則、變數的作用區域、變數的可重複性、內建變數。
Thumbnail
這一章節介紹了PHP的各種資料型別,包括內建型別如整數、浮點數、布爾值、字符串、數組、對象、空值和資源,並解釋了型別轉換的方式。此外,還討論了自訂型別、元組型別、集合型別、陣列型別和字典型別的實現方法。
Thumbnail
本文詳細介紹了Python中的各種資料型別,包括整數、字串、清單、元組、集合和字典,並提供了相關的操作範例。此外,還解釋了如何在Python中定義和操作變數,包括如何同時對多個變數進行賦值。
前言: 雖然前面有些定義還沒有完整的解釋,但還是後面再說吧, 誰想一直看理論啊(摔本子)
※ 認識變數: 變數(variable)是在程式裡面把東西存起來的概念。 基於不讓電腦每次都需要重新運算,把需要花時間運算的東西先存起來,之後再直接拿出來使用,所以我們需要變數。 變數儲存的位置在電腦裡的記憶體。變數就像是一個箱子,記憶體就像是一個倉庫。箱子的名稱就是變數名稱,箱子的內容物就是
在求學階段,你已經對代數的計算熟到不能再熟,所以變數(variable)對你來說應該不至於太陌生,先來看看以下這個例子:   
Thumbnail
宣告變數 變數是程式中用來儲存和表示數據的標識符號​,並將變數存放在某個記憶體位子 可以用ID的方法查找變數存在哪個記憶體,此方法有利於以後查找問題用。 在大多數程式語言中,變數需要事先聲明(宣告)並賦值。 而Python是一種動態類型語言,不需要顯式宣告變數類型,而是在賦值時自動進行推斷。
Thumbnail
隨著理財資訊的普及,越來越多台灣人不再將資產侷限於台股,而是將視野拓展到國際市場。特別是美國市場,其豐富的理財選擇,讓不少人開始思考將資金配置於海外市場的可能性。 然而,要參與美國市場並不只是盲目跟隨標的這麼簡單,而是需要策略和方式,尤其對新手而言,除了選股以外還會遇到語言、開戶流程、Ap
Thumbnail
嘿,大家新年快樂~ 新年大家都在做什麼呢? 跨年夜的我趕工製作某個外包設計案,在工作告一段落時趕上倒數。 然後和兩個小孩過了一個忙亂的元旦。在深夜時刻,看到朋友傳來的解籤網站,興致勃勃熬夜體驗了一下,覺得非常好玩,或許有人玩過了,但還是想寫上來分享紀錄一下~
Thumbnail
我們在上一篇簡單介紹了 int(整數)是做什麼用的,接下來要介紹常和他一起出現的好朋友 float 浮點數 跟 str 字串。 float 浮點數: 函數的式子寫做 float( ) ,浮點數就是帶有小數點的資料型別,他可以將字串或是數字轉換為有小數點的狀態。前提是字串內的字符必須是數字的格
Thumbnail
今天要來介紹的是Python中資料型別的函數, 這幾天學習的素材是Youtube上“程式柴大大的Python 6 小時初學者課程”,一步一步帶著大家操作並解,學習中也別忘了要多多練習,練習的部分我是把我學到的東西請Chatgpt幫我出類似的題型並讓我練習。 以下我先寫出一個簡單的code,再加以
Thumbnail
這篇內容,將會講解什麼是變數,以及與變數相關的知識。包括變數、資料型態、變數賦值、變數的命名規則、變數的作用區域、變數的可重複性、內建變數。
Thumbnail
這一章節介紹了PHP的各種資料型別,包括內建型別如整數、浮點數、布爾值、字符串、數組、對象、空值和資源,並解釋了型別轉換的方式。此外,還討論了自訂型別、元組型別、集合型別、陣列型別和字典型別的實現方法。
Thumbnail
本文詳細介紹了Python中的各種資料型別,包括整數、字串、清單、元組、集合和字典,並提供了相關的操作範例。此外,還解釋了如何在Python中定義和操作變數,包括如何同時對多個變數進行賦值。
前言: 雖然前面有些定義還沒有完整的解釋,但還是後面再說吧, 誰想一直看理論啊(摔本子)
※ 認識變數: 變數(variable)是在程式裡面把東西存起來的概念。 基於不讓電腦每次都需要重新運算,把需要花時間運算的東西先存起來,之後再直接拿出來使用,所以我們需要變數。 變數儲存的位置在電腦裡的記憶體。變數就像是一個箱子,記憶體就像是一個倉庫。箱子的名稱就是變數名稱,箱子的內容物就是
在求學階段,你已經對代數的計算熟到不能再熟,所以變數(variable)對你來說應該不至於太陌生,先來看看以下這個例子:   
Thumbnail
宣告變數 變數是程式中用來儲存和表示數據的標識符號​,並將變數存放在某個記憶體位子 可以用ID的方法查找變數存在哪個記憶體,此方法有利於以後查找問題用。 在大多數程式語言中,變數需要事先聲明(宣告)並賦值。 而Python是一種動態類型語言,不需要顯式宣告變數類型,而是在賦值時自動進行推斷。