最美情侣中文字幕电影,在线麻豆精品传媒,在线网站高清黄,久久黄色视频

歡迎光臨散文網(wǎng) 會員登陸 & 注冊

P2.數(shù)據(jù)類型 (基本數(shù)據(jù)類型)

2023-08-22 15:48 作者:創(chuàng)世十鷹  | 我要投稿

整數(shù)類型?

基本介紹:

C語言的整數(shù)類型就是用于存放整數(shù)值的,

比如 12 , 30, 3456等等?

案例演示: int num = 10;


3) C語言的整型類型,分為有符號 signed 和無符號 unsigned 兩種,默認是 signed ?

4) C程序中整型常聲明為int型,除非不足以表示大數(shù),才使用long long

5) bit(位): 計算機中的最小存儲單位。byte(字節(jié)):計算機中基本存儲單元。 1byte = 8bit [?二進制再詳細說,簡單舉例一個 short 3 和 int 3 ]

示意圖:?

short 3 在內(nèi)存中占有 2字節(jié)?

int 3 在內(nèi)存中占有 4個字節(jié)


我的源碼及注釋:?

#include <stdio.h>

void main(){

//int 默認就是帶符號整數(shù)(signed int)(就是分整數(shù)和負數(shù))

int num = -2147483648;

signed int num2 = 2147483648;//越界,就不會得到我們想要的結果


long num3 = 666;

long int num4 = 2147483648;

long long num5 = 12147483648;


//查看系統(tǒng)int類型有幾個字節(jié),sizeof(類型或變量名都行),查看字節(jié)數(shù),

printf("int的字節(jié)數(shù)=%d\n",sizeof(int));//輸出 int的字節(jié)數(shù)=4

printf("num=%d num2=%d\n",num,num2);// 輸出 num=-2147483648 num2=-2147483648


printf("long型字節(jié)數(shù)=%d long int型字節(jié)數(shù)=%d long long型字節(jié)數(shù)=%d\n",sizeof(num3),sizeof(num4),sizeof(long long));


//輸出long型數(shù)據(jù)是要加上l(%ld),long long型加上兩個ll(%lld),不加就會得不到正確結果(和沒寫long long一樣)

//雖然在我電腦上long型和int型都是4個字節(jié),寫不寫%ld一樣(但是在其他系統(tǒng)不一定一樣,比如linux),%lld必須寫,所以都要給我寫上

printf("num3=%ld num4=%ld num5=%lld",num3,num4,num5);//輸出 num3=666 num4=-2147483648 num5=12147483648

getchar();


//以我系統(tǒng)為例

//有符號整數(shù)int默認是signed int,它們就是一個東西,所以基本上全都用int,很少用signed int

//4個字節(jié),32個bit,int范圍:-2^31 到 2^31-1(-2147483648 到 2147483647),因為第一個要表示符號(正負號)

//無符號整數(shù)(unsigned int) 0 到 2^32-1(0到4294967295)(因為沒有符號啦,全是正數(shù))

//其他類型差不多一樣

}


/*

注意:

1.各類型是存儲大小與操作系統(tǒng)、系統(tǒng)位數(shù)和編譯器有關

signed char 1個字節(jié) -2^7 到 2^7-1

unsigned char 1個字節(jié) 0到2^8-1? 無符號字符類型數(shù)據(jù)

//整型

int(或是signed int) 2或4個字節(jié) 2字節(jié)的范圍(-2^15到2^15-1) 4字節(jié)范圍(-2^31到2^31-1)

unsigned int 2或4個字節(jié) 2字節(jié)的范圍(0到2^16-1) 4字節(jié)范圍(0到2^32-1)

//短整型

short(signed short) 2個字節(jié) -2^15 到 2^15-1

unsigned short 2個字節(jié) 0到2^16-1

//長整型

long(signed long) 4個字節(jié) (-2^31到2^31-1)

unsigned long 4個字節(jié) (0到2^32-1)

還有很多

long long 8個字節(jié)

long int 4個字節(jié)


2.C語言中整數(shù)類型,分為有符號(signed)和無符號(unsigned)兩種。默認是signed(也就是說 不指定就是signed)

3.C程序中整型數(shù)據(jù)常聲明為 int型,除非不足以表示大的數(shù),才使用long long

4.比特(bit)(位):計算機最小存儲單位。字節(jié)(byte):計算機基本存儲單元。1byte=8bit

5.short型的數(shù)據(jù)3占有 2個字節(jié),但是int型的數(shù)據(jù)3占有 4個字節(jié)

*/

浮點類型?

基本介紹 C語言的浮點類型可以表示一個小數(shù),比如 123.4 ,7.8 ,0.12等等?

案例演示:?

void main() {?

double salary = 10000.56;?

double num1 = 1.3;?

double num2 = 4.5;?

double sum = num1 + num2;?

printf(" sum = %.2f" , sum);//?

getchar();?

}

浮點型的分類?


說明一下:?

1) 關于浮點數(shù)在機器中存放形式的簡單說明,

浮點數(shù)=符號位+指數(shù)位+尾數(shù)位 , 浮點數(shù)是近視值?

2) 尾數(shù)部分可能丟失,造成精度損失。

浮點型使用細節(jié):

1) 浮點型常量默認為double型 ,聲明float型常量時,須后加‘f’或‘F’。?

2) 浮點型常量有兩種表示形式 十進制數(shù)形式:如:5.12 512.0f .512 (必須有小數(shù)點) 科學計數(shù)法形式:如:5.12e2 、 5.12E-2 ?

3) 通常情況下,應該使用double型,因為它比float型更精確。

4) printf("d1=%f ", d1); // 在輸出時,默認保留 小數(shù)點6位


我的源碼及注釋:?

#include <stdio.h>

#include <stdlib.h>

void main(){

//浮點型默認是double類型,聲明float類型時,需要加f或F

float f1 = 69.69696969;//默認是double類型。(編譯鏈接時的提示:從“double”到“float”截斷,就是說double到float丟失精度)

float f2 = 69.69696969f;//這樣才是單精度float型

double f3 = 69.69696969f;//

double f4 = 69.69696969;//這才是該要的

double f5 = 5.12E2;

double f6 = .512e-3;


printf("f1=%f f2=%.15f f3=%.15f f4=%.15f f5=%f f6=%f\n",f1,f2,f3,f4,f5,f6);//這里的f要小寫才行

//輸出 f1=69.696968 f2=69.696968078613281 f3=69.696968078613281 f4=69.696969690000003 f5=512.000000 f6=0.000512

//窗口暫停

system("pause");

}


/*

細節(jié):

1.浮點型默認為double型,聲明float變量是,須在數(shù)后加 F或f(大小寫都行)

2.浮點類型兩種表示形式:十進制形式:5.12,5.12f, .512(和0.512一樣,0開頭的小數(shù),0可以省略不寫)

3.一般情況,應該使用double類型,因為它比float更加精確

4.printf("d=%f",d1);//輸出時,默認保留小數(shù)點后6位。

*/

字符類型(char)?

基本介紹 :

字符類型可以表示單個字符,字符類型是char,char是1個字節(jié)(可以存字母或者數(shù)字), 多個字符稱為字符串,在C語言中 使用 char數(shù)組 表示,數(shù)組不是基本數(shù)據(jù)類型,而是 構造類型[關于數(shù)組我們后面詳細講解.]?

案例演示:?

void main() {?

char c1 = 'A';?

char c2 = '0';?

char c3 = '\t';

printf("c1=%c c3=%c c2=%c", c1, c3, c2); //%c 表示以字符的形式輸出?

getchar();

}

字符類型使用細節(jié):

1) 字符常量是用單引號('')括起來的單個字符。例如:char c1 = ?'a'; char c3 = '9'; ?

2) C中還允許使用轉義字符‘\’來將其后的字符轉變?yōu)樘厥庾?符型常量。例如:char c3 = ‘\n’; // '\n'表示換行符?

3) 在C中,char的本質(zhì)是一個整數(shù),在輸出時,是ASCII碼對應 的字符。?

4)可以直接給char賦一個整數(shù),然后輸出時,會按照對應的 ASCII 字符輸出 [97]?

char c1 = 'a';?char c2 = 'b';?char c3?= 97;

5) char類型是可以進行運算的,相當于一個整數(shù),因為它都對 應有Unicode碼. ?

char ch = 'a';

int num= ch + 1;

字符類型本質(zhì)探討:

1) 字符型 存儲到 計算機中,需要將字符對應的碼值(整數(shù))找出來 存儲:字符'a'——>碼值 (97)——>二進制 (1100001)——>存儲() 讀?。憾M制(1100001)——>碼值(97)——> 字符'a'——>讀取(顯示)?

2) 字符和碼值的對應關系是通過字符編碼表決定的(是規(guī)定好)

ASCII 碼介紹(了解)?

1) 在計算機內(nèi)部,所有數(shù)據(jù)都使用二進制表示。每一個二進制位(bit)有 0 和 1 兩種狀態(tài), 因此 8 個二進制位就可以組合出 256 種狀態(tài),這被稱為一個字節(jié)(byte)。一個字節(jié)一共 可以用來表示 256 種不同的狀態(tài),每一個狀態(tài)對應一個符號,就是 256 個符號,從 0000000 到 11111111。?

2) ASCII碼:上個世紀60年代,美國制定了一套字符編碼,對英語字符與二進制位之間的關系, 做了統(tǒng)一規(guī)定。這被稱為ASCII碼。ASCII碼一共規(guī)定了127個字符的編碼,比如空格“SPACE” 是32(二進制00100000),大寫的字母A是65(二進制01000001)。這128個符號(包括32 個不能打印出來的控制符號),只占用了一個字節(jié)的后面7位,最前面的1位統(tǒng)一規(guī)定為0。?

3) 看一個完整的ASCII碼表 [自己百度 看表]?

4) 缺點:?

1.不能表示所有字符。?

2.相同的編碼表示的字符不一樣:比如,130在法語編碼中代表了é,在希伯來語編碼中 (?) 卻代表了字母


我的源碼及注釋:

#include <stdio.h>

void main(){

char c1 = 'a';

char c2 = 'b';

//以%c輸出c3時,就會按照ASCll編碼表97對應的字符輸出。

char c3 = 97;

int num = c2 + 3;


//【非常注意,vs2010編譯器是c89,所以要求變量的定義,必須在執(zhí)行語句之前】


printf("c1=%c c1對應的整數(shù)=%d c2=%c c2對應的整數(shù)=%d c3=%c c3對應的整數(shù)=%d num=%c num對應的整數(shù)=%d",c1,c1,c2,c2,c3,c3,num,num);

//c1=a c1對應的整數(shù)=97 c2=b c2對應的整數(shù)=98 c3=a c3對應的整數(shù)=97 num=e num對應的整數(shù)=101

getchar();

}


/*

字符型數(shù)據(jù) 存儲到計算機中,首先需要將字符對應的碼值(整數(shù))找出來。

以a舉例:

存儲:字符('a')-->碼值(97)-->二進制(1100001)-->存儲

讀?。憾M制(1100001)-->碼值(97)-->字符('a')-->讀取(顯示)

*/

P2.數(shù)據(jù)類型 (基本數(shù)據(jù)類型)的評論 (共 條)

分享到微博請遵守國家法律
泽州县| 清水县| 虎林市| 晋江市| 清水县| 宣化县| 南开区| 新化县| 灵山县| 石渠县| 肥东县| 荣成市| 青铜峡市| 平乐县| 湛江市| 美姑县| 桂平市| 神木县| 积石山| 汤阴县| 阿克陶县| 霸州市| 灌南县| 南丰县| 金平| 两当县| 漳州市| 连江县| 临沭县| 山阳县| 浦江县| 长子县| 交城县| 北川| 赞皇县| 江城| 榆林市| 陆良县| 清原| 云和县| 河北区|