資料型別:基本資料型別;構造資料型別;指標型別;空型別。
1、基本資料型別:不能再分解為其他型別,如整型(int);字元型(char);浮點型(float、double);列舉(enum)
①、整型(int):十進位制;八進位制、十六進製制
a、十進位制:無字首,其數碼為0~9;
b、八進位制:必須以0開頭,數碼取值為0~7;
c、十六進製制:必須以0x或者0x開頭,數值取值為0~9,a~f或a~f;
十進位制轉換成八進位制或十六進製制採用除8(除16)取餘法
十進位制常數158(十進位制為158)、258000l(十進位制為258000);
八進位制常數012l(十進位制為10)、077l(十進位制為63)、0200000l(十進位制為65536)
十六進製制常數0x15l(十進位制為21)、0xa5l(十進位制為165)、0x1000l(十進位制為65536)
②、字元型(char):以ascii碼的形式存放
char a, b;
a = 120;
b = 121;
printf("%c,%c\n",a,b);
printf("%d,%d\n",a,b);
定義a,b為字元型,當格式符為「c」時,對應輸出的變數值為字元,當格式符為「d」時,對應輸出的變數值為整數
③、浮點型(float。double):只採用十進位制,有2種形式:十進位制小數形式,指數形式
a、單精度型(float):精度6,位元數32(4)
b、雙精度型(double):精度15,位元數64(8)
④、列舉(enum): 如enum num= 新創造
輸出結果:
該程式是以四種格式輸出整型變數a的值
資料之間的轉換規則:
1、若參與運算量的型別不同,則先轉換成同一型別,然後進行運算;
2、轉換按資料長度增加的方向進行,以保證精度不降低。如int型和long型運算時,先把int量裝成long型後再進行運算;
3、所有的浮點運算都是以雙精度進行運算的,及時含有float單精度的梁運算,也要先轉換成double型,在做運算;
4、char型和short型參與運算時,必須先轉換成int型;
5、在賦值運算中,賦值號兩邊量的資料型別不同時,賦值號右邊量的型別將轉換成左邊量的型別。
型別自動轉換的規則:
double
long
unsigne
intchar,short
#include
int main(int argc, int **argv)
float f = 5.75f;
printf("(int)f = %d, f = %f\n",(int)f, f);
return 0;
f雖然強制轉換成int型,但只在運算中起作用,是臨時的,二f本身的型別並不改變。因此,(int)f的值為5而f的值仍為5.75.
資料結構 C語言 資料結構 查詢
二 查詢演算法的效能分析 三 基於線性表的查詢 四 基於樹的查詢 五 基於雜湊表的查詢 文章索引 分類typedef struct elemtype typedef struct sstable 從表中第一條 最後一條記錄開始,逐個進行記錄的關鍵字與給定值的比較,若某個記錄的關鍵字和給定值比較相等,...
C語言 資料結構
指標一維陣列 指標陣列 陣列指標 malloc函式 字元陣列 結構體聯合體 報錯問題 亂碼了,阿肆的github,這裡顯示正常,都是傳的md檔案。include include int main void ide根據檔案字尾選擇編譯器,cpp呼叫c 編譯器 c程式進行編譯是以源程式檔案為物件進行的,...
C語言資料結構
1 鍊錶的高階操作 void reverse struct node l p1 next tailp l next p1 鍊錶的反轉 2 鏈式儲存結構的棧 鏈棧 struct snode 棧的節點定義 struct stack 棧的定義 struct stack initstack 棧的初始化 bo...