今天帶大家了解一下學C語言必備的基本數據類型和基本算法,適合剛學C以及零基礎的小夥伴!
話不多說,我們一起來學習吧~
數據類型
● 基本類型
基本類型就是我們在使用C語言時最基礎的數據類型,包括整形(短整型,基本整型,長整型)、字符型、浮點型(單、雙精度)以及枚舉類型。
● 構造類型
在編程的過程中只使用基本類型是遠遠不夠的,為了滿足需求,因此還要使用基本類型之外的類型,構造類型就是其中的一種。
構造類型可以使用基本類型構造出新的數據類型來滿足實際開發中的需求。構造類型有3種形式:數組類型、結構體類型、共用體類型。
● 指針類型
指針是C語言的精華所在,許多程式語言中都支持某種形式的指針,但最著名的是C語言。
指針的特殊性在於它的值是一個內存地址。關於指針後面我們會詳細說明。
● 空類型
空類型(void)的主要作用就是限定函數的返回和限定函數的參數。
為了便於記憶,我將數據類型做了一個簡單的思維導圖,如下:
● 常量
這塊內容就不在用過多的文字贅述了,從下面的思維導圖我們可以直觀的理解。
關於符號常量我們來看一段簡單的代碼,你就能夠明白啦~
#include
#define PI 3.14/*定義符號常量*/
int main() {
double r=5.0;/*定義半徑*/
double area;/*面積變量*/
area = PI*r*r;/*計算面積*/
printf("圓的面積是:%f\n",area);/*列印輸出*/
return 0;
}
基本算法
算法的特性和算法的表示。
算法的基本特性
算法包含兩方面的內容:算法設計和算法分析
算法設計其實就是針對某一特定類型的問題而設計的一個實現過程。算法有以下幾個特性:
有窮性
確定性
可行性
輸入
輸出
也就是說我們在設計算法是的滿足上面所說的特性。當然算法也是有好有壞的,那麼我們怎樣去衡量一個算法的優劣呢?
算法分析其實就是在衡量一個算法的優劣,通常會從一下幾個方面來分析:
正確性
可讀性
健壯性
時間複雜度和空間複雜度
算法的表達方式
在描述一個算法時通常使用的方法有:自然語言、流程圖、N-S圖等。
自然語言
自然語言這種表達方式通俗易懂,我們通過一個具體的實例了解一下。
需求:任意輸入3個數,求出其中的最小數。
(1) 定義4個變量分別是a,b,c和min。
(2) 輸入大小不同的三個數分別賦值給a,b,c。
(3) 判斷a是否小於b,如果小於,則將a的值賦給min,否則將b的值賦給min。
(4) 判斷min是否小於c,如果小於,則執行(5),否則將c的值賦給min。
(5) 輸出min。
這種表達方式的好處就是簡單易懂,但是當遇到複雜的算法時自然語言就顯得不是很方便了。
流程圖
流程圖就是用一些圖框來代表各種不同性質的操作,用流程線來指示算法的執行方向。他的特點就是直觀形象,應用很廣泛。
下圖介紹了流程圖的符號以及含義:
流程圖有三種基本結構,即順序結構、選擇結構和循環結構。
順序結構:順序結構就是簡單的線性結構
選擇結構:選擇結構也稱為分支結構
循環結構:反覆執行一系列操作,知道條件不成立時終止。
我們再把上面的需求用流程圖來表示一下
N-S流程圖
N-S流程圖是將全部的算法寫在一個矩形框內,省去了流程圖中的流程線。下面繼續看一個實例:
需求:輸入一個數,判別是否為素數。
算法的基本特性和算法的表示介紹到就結束了。
—— END ——