【C語言編程入門系列】—— 第一章,初識程序!

導(dǎo)讀:計算機(jī)程序無時不刻的影響著人類的生活,現(xiàn)代社會已經(jīng)離不開程序,程序的作用如此巨大,那么程序到底是什么呢?本文主要討論程序的概念,喚起讀者對程序的興趣,同時對C語言程序與其它語言程序進(jìn)行比較,說明作為一個C語言程序員需要具備的基本理論知識。

1.1什么是計算機(jī)程序

  從字面上理解,程序就是完成一件事所需要進(jìn)行的步驟,舉個生活的例子,買醬油!需要哪些步驟:

第一種做法:首先要準(zhǔn)備好100塊錢,然后出門要穿好衣服鞋襪,出門到便利店,拿到醬油付完錢,店家找錢,返回家中。

第二種做法:打開手機(jī),打開外賣的APP,選擇醬油,外賣小哥到來后,開門,取醬油。

  完成買醬油需要步驟,生活上的點點滴滴都有它的步驟,步驟不局限于一種方法,正所謂條條大路通羅馬,步驟也是各式各樣。如果把生活上步驟關(guān)聯(lián)到計算機(jī)程序上也是一樣的,其實寫計算機(jī)程序就是寫步驟。

  計算機(jī)程序一般也稱作計算機(jī)代碼,專業(yè)的說,計算機(jī)程序是一組計算機(jī)能識別和執(zhí)行的指令,運行在電子計算機(jī)上,滿足人們某種需求的信息化工具。當(dāng)然程序不僅僅運行在計算機(jī)上,還可以運行在手機(jī),路由器,導(dǎo)航儀,往大點說,程序運行在航空母艦上,說不定運行在遙遠(yuǎn)外太空外星人正準(zhǔn)備入侵地球的太空飛船上。

圖1.1? ET外星人

?  那為什么要程序呢?因為有些事情靠人動手處理效率實在太低,試想想,如果要計算一個復(fù)雜的方程式,靠筆算或者算盤來計算那效率實在低下(注意:不過這里要像我國兩彈一星的元勛們致敬,當(dāng)時他們在計算工具落后的情況下,用算盤計算原子數(shù)據(jù))。所以人類發(fā)明了計算機(jī),而計算機(jī)工作需要運行程序來完成各種任務(wù)。

注意:程序只是工具,所以程序能做到的事情,人類一定能做到,但隨著人工智能的發(fā)展,程序已經(jīng)可以做人類意想不到的事情了,這塊讀者可以自行去了解。


1.2?為什么選擇C語言

  計算機(jī)語言有很多種,比如匯編程序,C語言程序,C++程序,JAVA程序,PYTHON程序等等。為什么偏偏選擇C語言呢?

原因列舉幾點如下:

  1. C語言入門比較容易,相比較別的語言C語言入門比較容易,不像匯編那樣完成一個功能需要寫大量代碼,有時候1行C語言代碼完成任務(wù)用匯編說不定需要10行。也不像JAVA那樣,類的思想,繼承的思想等等搞暈初學(xué)者。

  2. 很多高級語言都有C語言的影子,變量聲明這些,循環(huán)語句這些等等,所以C語言可以做學(xué)習(xí)別的語言的跳板。

  3. C語言廣泛的應(yīng)用在嵌入式領(lǐng)域,說明市場需求也大。

  4. 它的執(zhí)行效率很高,可以直接操作內(nèi)存,后續(xù)學(xué)習(xí)指針會更加理解這塊。

  5. 讀者自行了解。。。


1.3?需要具備的基礎(chǔ)

  本節(jié)討論一個C語言程序員需要具備哪些基礎(chǔ)知識。

1.3.1簡單的英語單詞理解

  國內(nèi)的程序員不一定是英語高手,因為只是用鍵盤敲打代碼,不需要考驗聽力,不需要考驗口語,甚至可以直接借助翻譯軟件。C語言中常用的詞匯,如:

main(主要的;重要的),include(包括;包含),define(定義;闡明),后續(xù)還有一些C庫函數(shù)單詞,如:printf(輸出函數(shù);格式化輸出;輸出格式化字串),還可以把庫函數(shù)拆分理解,如:fopen(可以理解為file open的組合,即文件打開的意思),strcmp(可以理解為string compare,詞組的意思就是字符串對比)。

?  編寫程序中需要給變量取名,還有給函數(shù)取名,為了編寫的程序能夠讓別人更好的理解,以及規(guī)范和統(tǒng)一,所以希望讀者盡量使用標(biāo)準(zhǔn)的英文單詞,如果不懂怎么寫可以借助翻譯軟件。

注意:“變量”和“函數(shù)”是程序中的一部分,讀者目前如果不能理解它的意思,就先擱著。


1.3.2 計算機(jī)基本組成

  計算機(jī)俗稱電腦,它的核心組件有CPU,內(nèi)存,存儲,網(wǎng)卡,顯示器,鍵盤,鼠標(biāo)等等。文章是與C語言入門有關(guān),所以只需要知道一切運算都在CPU中進(jìn)行,C語言程序由指令、變量和常量等等組成,指令運行在CPU上,指令從內(nèi)存中取變量。至于內(nèi)存和存儲的區(qū)別以及更詳細(xì)內(nèi)容,后續(xù)章節(jié)指針中會再次提到。

圖1.2? 計算機(jī)構(gòu)成簡圖:

  這里簡單的描述一個windows計算器程序運行的過程。

  計算器的可執(zhí)行程序是存放在硬盤上的。筆者電腦使用的win10系統(tǒng),計算器程序?qū)儆谙到y(tǒng)自帶的程序,所以存放在系統(tǒng)盤,系統(tǒng)盤是C盤,所以計算器的可執(zhí)行程序存放在C:\Windows\System32\calc.exe。

知道了calc.exe的存放位置后,先打開任務(wù)管理器,看看正在運行的程序有哪些,這時候還沒有點擊calc.exe,所以看不到,如圖1.3所示,

圖1.3? ?還未打開計算器的任務(wù)管理器列表

  點擊運行calc.exe,可以發(fā)現(xiàn)任務(wù)管理器多了一個運行的程序叫做計算器,如圖1.4所示,

圖1.4? 打開計算器后任務(wù)管理器列表

  點擊運行calc.exe后(也就是運行計算器程序),計算器程序會在操作系統(tǒng)程序下,由CPU做主要工作,把計算器程序從硬盤放到到內(nèi)存上,這時候顯示器根據(jù)顯存內(nèi)容會顯示計算器界面,可以通過鼠標(biāo)點擊也可以通過鍵盤進(jìn)行加減乘除等等運算,所有的這些運算都會通過內(nèi)存和CPU的交互來完成,最終把計算的數(shù)值顯示出來。

1.4 自學(xué)C語言的途徑

  1. 可以通過本系列博客,博主會在評論區(qū)回答問題,雖然博主不是靠自學(xué)的,但是自己希望能夠幫助到新手。

  2. 最好是通過專業(yè)書籍,一般大學(xué)課程都是使用譚浩強(qiáng)的C語言教材,雖然坑很多,但是能讓入門,也算是經(jīng)典中的戰(zhàn)斗機(jī)了!

  但是看再多資料都不如不停的代碼練習(xí)來的效果佳!請期待下一章節(jié)的發(fā)布。。。


自學(xué)C/C++不易,此路應(yīng)攜手前行。

如果你想跟著小編一起學(xué)編程的話!

可以來我專欄的C語言/C++編程學(xué)習(xí)交流俱樂部,【點擊進(jìn)入】

還有(源碼,零基礎(chǔ)教程,項目實戰(zhàn)教學(xué)視頻),歡迎初學(xué)者和正在進(jìn)階中的小伙伴們!? ?

?著作權(quán)歸作者所有,轉(zhuǎn)載或內(nèi)容合作請聯(lián)系作者
【社區(qū)內(nèi)容提示】社區(qū)部分內(nèi)容疑似由AI輔助生成,瀏覽時請結(jié)合常識與多方信息審慎甄別。
平臺聲明:文章內(nèi)容(如有圖片或視頻亦包括在內(nèi))由作者上傳并發(fā)布,文章內(nèi)容僅代表作者本人觀點,簡書系信息發(fā)布平臺,僅提供信息存儲服務(wù)。

友情鏈接更多精彩內(nèi)容