一、C語言的發展過程
C語言是在70年代初問世的。
一九七八年由美國電話電報公司(AT&T)貝爾實驗室正式發表了C語言,同時由B.W.Kernighan和D.M.Ritchit合著了著名的《THE C PROGRAMMING LANGUAGE》一書 ,通常簡稱為《K&R》,也有人稱之為
《K&R》标準。
但是,在《K&R》中并沒有定義一個完整的C語言标準,後來由美國國家标準協會(American National Standards Institute)在此基礎上制定了一個C語言标準,于1983年發表,通常稱之為
ANSI C。
二、當代最優秀的程式設計語言
早期的C語言主要是用于UNIX系統。
由于C語言的強大功能和各方面的優點逐漸為人們認識,到了八十年代,C開始進入其它作業系統,并很快在各類大、中、小和微型計算機上得到了廣泛的使用,成為當代最優秀的程式設計語言之一。
三、C語言的特點
● C語言簡潔、緊湊,使用友善、靈活。
ANSIC一共隻有32個關鍵字:
auto、break、case、char、const、continue、default、do、double、else、enum、extern、float、for、goto、if、int、long、register、return、short、signed、static、sizof、struct、switch、typedef、union、unsigned、void、volatile、while。
● 9種控制語句,程式書寫自由,主要用小寫字母表示(C語言大小寫敏感),壓縮了一切不必要的成分。
● 運算符豐富。
共有34種運算符。C把括号、指派、逗号等都作為運算符處理,進而使C的運算類型很豐富,使用極為靈活,可以實作其他進階語言難以實作的運算。
● 資料結構類型豐富。
● 具有結構化的控制語句。
● 文法限制不太嚴格,程式設計自由度大。
● C語言允許直接通路實體位址,能進行位(bit)操作,可以嵌入彙編語言、實作彙編語言的大部分功能,還可以直接對硬體進行操作。是以有人把它稱為中級語言。
● 生成目标代碼品質高,程式執行效率高。
● 與彙編語言相比,用C語言寫的程式可移植性好。
但是,C語言對程式員要求也高,程式員用C寫程式會感到限制少、靈活性大,功能強,但較其他進階語言在學習上要困難一些。
四、面對過程和面向對象的程式設計思想
● 面向過程“面向過程”是一種以事件為中心的程式設計思想。就是分析出解決問題所需要的步驟,然後用函數把這些步驟一步一步實作,使用的時候一個一個依次調用就可以了。
● 面向對象“面向對象”(Object Oriented,簡稱OO)是一種以事物為中心的程式設計思想。
面向對象的
底層基礎還是面向過程。
以
走這個動作舉例來說明面向對象和面向過程:
面向過程會将走這個動作分成幾個步驟:擡腿、向前邁出指定角度、向下放腿、身體前移、邁出另一隻腳…通過一系列的過程,進而實作整個功能;
而面向對象會将走封裝進一個對象,這個對象的一個執行個體裡有很多方法,包括擡腿、邁出、放腿等,通過調用方法來實作功能。
五、簡單的C程式
學習一門語言首先就是要向世界發出問候hello world ,第一個C程式如下:
#include <stdio.h>
void main()
{
printf("hello world!n");
}
列印:hello world!
main是主函數的函數名,表示這是一個主函數。
每一個C程式都必須有,且
隻能有一個主函數(main函數)。
函數調用語句,
printf函數的功能是把要輸出的内容送到顯示器去顯示。
printf函數是一個由系統定義的标準函數,可在程式中直接調用。
再舉一個例子:
#include <math.h>
#include <stdio.h>
main()
{
double x, s;
printf("input a number:n");
scanf("%lf", &x);
s = sin(x);
printf("sin of %lf is %lfn", x, s);
}
列印:input a number:
1
sin of 1.000000 is 0.841471
程式執行說明:include稱為檔案包含指令;
擴充名為.h的檔案稱為頭檔案;
定義兩個實數變量,以被後面程式使用列印顯示提示資訊;
從鍵盤獲得一個實數x,求x的正弦,并把它賦給變量s;
顯示程式運算結果;
main函數結束。
再看一個稍複雜的例子:#include <stdio.h>
int max(int a, int b);
main()
{
int x, y, z;
int max(int a, int b);
printf("input two numbers:n");
scanf("%d%d", &x, &y);
z = max(x, y);
printf("max num = %d", z);
}
int max(int a, int b)
{
if(a > b) return a; else return b;
}
列印:input two numbers:
10 20
max num = 20
這個簡單的程式實作了比較兩個數的大小并傳回較大的數的功能。
自學C/C++不易,此路應攜手前行。
如果你想跟着小編一起學程式設計的話!
可以來我的
C語言/C++程式設計學習交流俱樂部,【點選進入】!
還有(源碼,零基礎教程,項目實戰教學視訊),歡迎初學者和正在進階中的小夥伴們!