簡單學C——第一天

                  基本功函數

一.數據類型:spa

  在C語言中,有數據類型這一說法。爲什麼有這一說法?是由於在現實生活中存在着不一樣的數據,(例如整數,小數,字符即a b c d , . ; "  之類)。因爲計算機中全部的數據都是由01串來表示的,因此數據類型的出現就很明顯了,它能夠知道你輸入的數據究竟是表示了什麼,是表示整數呢,小數呢仍是字符。3d

 

 好好理解一下,而後,,,上圖:code

     此時的你看基本類型那一欄就好。注:浮點型即我上面說過的用來存儲小數的。從上圖能夠發現,在整型以後,還存在三個類型,爲何還須要三個類型,整型用一個類型來表示不就行了嗎?不是的,的確,它們都能存儲整數,可是,它們存儲的整數的大小是不同的,。各個類型的取值範圍以下:ps.若是你存儲的值超出你所取得數據類型的取值範圍程序會出錯。blog

1. char -128 ~ +127 (1 Byte)
2. short -32768 ~ + 32767 (2 Bytes)
3. unsigned short 0 ~ 65535 (2 Bytes)
4. int -2147483648 ~ +2147483647 (4 Bytes)
5. unsigned int 0 ~ 4294967295 (4 Bytes)內存

6. long long -9223372036854775808 ~ +9223372036854775807 (8 Bytes)
7. double -1.7 * 10^-308 -1.7 * 10^308(8 Bytes)io

由上面能夠看到,出現了一個陌生的名詞「unsigned」,它表明着在它以後的那個類型不存在負數,這樣可使數據範圍擴大一倍,例如上面的2和3。class

 

能夠反思,爲何一個整數能夠有這麼多類型來表示,直接用 「 long long 」來表示一個整數不就好了嗎?範圍這麼大,若是想表示一個很大的數也不容易出錯。基礎

爲何,由於計算機的內存是寶貴的,若是你只須要存0到65536之間的數,那用long long類型也太大材小用了。而用unsigned short 則恰好合適。變量

 

下面舉出實際的C程序:也要本身寫一下比較好@.@。

 1 /* 1在C語言程序中,全部的變量都須要被定義類型之
 2 才能使用下面是定義的過程:在定義的過程當中已經
 3 給變量分配了此類型應該有的儲存空間。若是上述名詞
 4 有不懂得地方,敬請百度 */
 5 //  2雙斜線(//)註釋掉一行如2,/*...*/ 能夠註釋掉多行,如1;
 6 //  2註釋以後的類容不參與程序運行,能夠刪去。
 7 
 8 #include<stdio.h> //2必須的頭文件
 9 int main()    //2必須的主函數
10 {
11     
12    int a,b,c;  //2定義了a,b,c三個整型變量。
13    double e;  //2定義了一個double雙精度類型變量。
14 }

 

二.輸入輸出語句。

   固然上面的程序是沒有問題的。可是運行是不會有任何結果的,爲何呢?由於你還不知道輸入輸出語句。一個經典的程序。運行一個程序,讓它能輸出「Hello World」,無引號。

運行結果如圖:

 

運行代碼:

1 #include <stdio.h>
2 int main()
3 {
4     printf("Hello world!\n"); //輸出語句
5     return 0;
6 }

 

好,如今提出以下問題,怎麼輸入一個整數,一問:再把這個數輸出出來,二問:若是我想讓輸出的結果加一呢?

明確一下步驟

1.定義一個變量

2.從鍵盤上輸入一個數字,把這個數字傳給變量

3.按下回車,屏幕上顯示想要的結果

 

運行結果:

1.從鍵盤上輸入 12345

2.按一下回車,輸出12345

 

運行代碼:

1 #include <stdio.h>
2 int main()
3 {
4   int a; //1.定義一個整型的變量a
5   scanf("%d",&a);//2.輸入語句,從鍵盤上輸入a的值
6   printf("%d",a);//3.輸出語句,從屏幕上顯示a的值
7   return 0;
8 }

 

從上面的代碼中,咱們又發現了一些陌生的東西: scanf ,printf ,%d, &,這些是什麼鬼。。。

一一道來:  1.scanf 是什麼?我很想說,百度一下,其實這個百度一下真的能讓你明白,因此,百度一下。

                2.同理,百度一下。只要搜對關鍵字,這都能解決。

                3.%d是什麼,這是一個格式控制符,%d表明下面將輸入或輸出一個整數。因而下面就出現了這個表。。。

                  

                4.爲何scanf裏面有個&符號,而printf裏面沒有?由於&是一個尋址符號,它可以找到變量a所表明的存儲空間的地址,同理不懂能夠把有關類容直接複製百度,你會獲得你想要的。

 

    下面作第二問是否是感受會很輕鬆呢?我直接附上代碼和結果。

運行結果:

1 #include <stdio.h>
2 int main()
3 {
4   int a; //1.定義一個整型的變量a
5   scanf("%d",&a);//2.輸入語句,從鍵盤上輸入a的值
6   a=a+1;//把a這個數的值加一,而後再賦值給原來的a。
7   printf("%d",a);//3.輸出語句,從屏幕上顯示a的值
8   return 0;
9 }

運行結果:

 

好了,基礎功就這些了吧。

課後題目:

從鍵盤中輸入兩個數,兩數之間用空格隔開,按回車,而後出現兩個數的和。

運行結果:

所寫的文章基本沒有怎麼用顏色標註,一個是比較懶,還有就是都以爲挺重要的。

代碼就本身寫寫吧,本身多練習。記得,不懂能夠多百度......

相關文章
相關標籤/搜索