「程序猿計劃」C語言概述

2020-12-14 一家科技大喵族

科技喵:大家好鴨~我是科技喵本喵~今天是第一次程序猿計劃的專題文章,我帶來了一個好盆友:程序喵~

程序喵:各位大盆友小盆友叔叔阿姨爺爺奶奶弟弟妹妹們好!我叫程序喵~鑽研編程已有4年啦!不知各位喵友們的水平怎麼樣呢?對了喵,在編程上有什麼問題都可以私信我哦~

科技喵:程序喵,你知道今天要講什麼喵語言嗎?

程序喵:當然是要講C語言啦!科技喵,你先給大家講講C語言的歷史沿革吧!

科技喵:好嘞!

計算機
計算機

C語言是計算機使用的語言,使用C語言可以讓計算機做出你想要的任何效果。它最初是由丹尼斯裡奇在貝爾實驗室用來開發一個作業系統用的。

程序喵:哪個作業系統?

科技喵:最早的作業系統。

程序喵:哪個最早的作業系統?

科技喵:很厲害的最早的作業系統。

程序喵:………………我問你它是啥!

科技喵:是個作業系統啊!

程序喵:算了,我來說吧!它就是Unix作業系統。

C語言最早是在1972年DEC PDP-11上實現了。

1978年,布萊恩柯林漢和丹尼斯裡奇製作了第一個對於C的描述《The C Programming Language》,現在成為K&R(布萊恩和丹尼斯名字開頭首字母)標準。

科技喵:現在,C已經成為了通用的標準專業語言主要因為,因為……這幾點!

簡單易學,適合編程初學者。

屬於結構化語言。

效率高。

可處理由上層至下層所有的活動。

可以在多個平臺上編譯。

程序喵:一種計算機語言之所以能如此出名,是因為它有不同於甚至優於其它語言的地方。C有著許多特點。

1、語言緊湊,簡潔,使用方便,靈活。下面將C語言和PASCAL語言作比較,讓大家體驗一下。

C語言 { } PASCAL BEGIN……AND 複合語句

看到了吧,PASCAL的語句比較C語言要複雜得多。

(這難道就是使用PASCAL語言的程序猿禿頭的原因?!我好想知道了某些不得了的事情。)

2、運算符豐富。C語言共有34種運算符。

科技喵:什麼是運算符?是可以吃的東東嗎?

程序喵:……不是的,運算符是讓計算機進行邏輯,數學等多方面運算的指導符號。

科技喵:

3、數據結構豐富,具有現代化的數據結構。常用的數據結構有:麥當勞,肯德基,漢堡王……

不對啊,我在說什麼呢喵?!難道……誒呀,我的肚子餓了,我先去吃飯啦!

程序喵:好嘞!我幫你們接著講。有整形、實形、字符型、數組類型、指針類型、結構體類型、共用體類型等等,他們能用來實現鍊表、樹、棧等複雜的運算。

4、具有結構化的控制語句,如if else語句,while語句,do while語句,switch語句,for語句等等。C語言用函數模塊實現程序模塊化。

醒醒!我知道你已經患上了一種病,叫因為腦中多巴胺分解少而引起的上眼皮合攏半植物人狀態,請不要睡覺!

5、語法限制較為寬鬆。例如你的喵爪不小心打錯了下標,下標越界了,編譯器這位友好的大哥不會給你檢查出來。要程序猿自己檢查。

(但是,你的老闆可就沒有那麼仁慈了,說不定會把你的喵頭擰下來!)

6、允許直接訪問物理地址。C語言能進行位(bit)操作,可直接對硬體進行操作。

(這年頭,程序猿都要學物理了?!)

7、代碼質量高,執行效率高。一般只比彙編語言效率低20%~10%。

(額……誰告訴我%20怎麼計算?)

8、可移植性好。基本上不做修改就可以應用到所有計算機上。

(當然,如果是98或者95,我建議你更新一下Windows……)

程序喵:我回來啦!今天吃了香辣雞翅,奧爾良雞腿堡,薯條,可樂,雞塊……啊!麥當勞真好恰!

麥當勞 McDonald's

(請親愛的審核人員不要不通過啊!我不是打廣告,我是順便說一下而已)

科技喵:今天就到這裡啦,下一次程序猿計劃要講的是C語言的數據類型,盡情期待呀!

程序喵:拜拜!咦,我的錢包怎麼空了?

科技喵:啊,我拿錯錢包了,用了你的錢……

程序喵:科!技!喵!我跟你沒完!還我血汗錢!

(完)

參考資料:啊哈磊《啊哈!C語言》人民郵電出版社 譚浩強《C程序設計》清華大學出版社 菜鳥教程——C語言 百度百科——C以及喵民們自己的知識寶庫

相關焦點

  • 「程序猿計劃」C語言的數據類型
    今天我和程序喵要來講講C語言的數據類型。程序喵……咦?程序喵:呼……呼……科技喵:(我竟無言以對)那……就讓我來先講講程序的主要組成吧!作為程序猿,我們要認真考慮數據結構以及操作步驟。(這啥玩意兒?看著78號字的稿子都讓我頭暈目眩!)程序喵:呼……呼?數據結構……操作……?!我醒了!你在說什麼?科技喵:!
  • 自學編程:C語言的概述
    C語言概述1.為什麼學習C語言1).C的起源和發展C語言是在B語言的基礎上發展起來的。 1960年出現了一種面向問題的高級語言ALGOL 60 。1972年美國貝爾實驗室的Dennis M.Ritchie為克服B語言的諸多不足,在B語言的基礎上重新設計了一種語言,取其第二字母C,故稱為C語言。
  • 李老師帶你做二級C語言選擇題真題,輕鬆過級「13」
    李老師帶你做二級C語言選擇題真題,輕鬆過級「9」第【10】期(輸入輸出6-10題):李老師帶你做二級C語言選擇題真題,輕鬆過級「10」第【11】期(輸入輸出11-15題):李老師帶你做二級C語言選擇題真題,輕鬆過級「11」第【12】期(輸入輸出16-20題):
  • 李老師帶你做二級C語言選擇題真題,輕鬆過級「10」
    #c語言李老師帶你做二級C語言選擇題真題,輕鬆過級「7」第【8】期(基本語法36-41題):李老師帶你做二級C語言選擇題真題,輕鬆過級「8」第【9】期(輸入輸出1-5題):李老師帶你做二級C語言選擇題真題,輕鬆過級「9」第【10】期、輸入輸出(6-10題)
  • 程序猿的崛起,一篇文章看懂程式語言
    由於他在計算機邏輯結構設計上的偉大貢獻,諾先生被譽為「計算機之父」。由上圖可以得知,直到93年,我們現在一般用戶熟知的window作業系統才誕生。電腦程式運行的基本原理是什麼?感謝諾先生,沒有他的發明,小編今天就不能夠在電腦面前給大家科普了。接下來小編首先給大家分析一下開啟計算機主機的那一瞬間,桌面蹦出來的畫面是怎麼回事。
  • 跟光磊學C語言-C語言概述與開發環境搭建
    語言和計算機語言的區別是計算機語言只要語法沒有問題就會無條件執行。個關鍵字就可以完成無數的功能執行速度快(機器語言/彙編語言/C語言)功能強大(C語言是當前最流行的語言)編程自由(語法檢測不是非常嚴格,初學者容易出錯,不同的環境編譯的結果可能不一樣)可移植性好(windows,linux,macOS都支持C語言,嵌入式,物聯網都支持C語言)
  • 李老師帶你做二級C語言選擇題真題,輕鬆過級「9」
    全國計算機等級考試二級C語言選擇題練習講解-4第【5】期(基本語法計算機等級考試二級C語言選擇題練習講解-5第【6】期(基本語法26-30題):李老師帶你做二級C語言選擇題真題,輕鬆過級「7」第【8】期(基本語法36-41題):
  • 由雷軍的「髮際線」浮想「一往無前」
    我不想談演講的內容,只談談雷軍的「髮際線」。雷軍的「髮際線」身邊的很多男性友人,已人到中年。不管是不是「程序猿」,他們的「髮際線」都隨「啤酒肚」步步逼近,逐步退守陣線。這一年,心懷夢想的雷軍——41歲,帶著十位創始人團隊,喝著小米粥,扛著濃密的「髮際線」,離開已成就輝煌的金山,又開始了新一輪創業「小米手機」。
  • C語言之文件操作
    這就要用到我們今天要講到的內容——「文件操作」。關於文件在我們比較熟悉的Windows系統下,文件類型的區分是用「擴展名」來進行的。但其實擴展名並不是指「文件格式」,它只是一個「門牌號」而已。至於它到底對不對,那系統就不知道了。可能有很多的新手,在遇到格式的問題的時候,會認為直接更改擴展名,就能實現格式轉換。不瞞你們說,我小時候也有過這種想法。但是後來發現,不行。舉個例子,現在有一個 MP3 的文件,要轉成 AAC。這兩個文件從編碼上來講,就是不一樣的。
  • 肖不斯說:華為「天才少年計劃」百萬年薪,和編程有什麼關係?
    華科三位「天才少年」脫穎而出從去年12月至今,單是華中科技大學,便有三位「天才少年」入圍這項計劃。△左鵬飛左鵬飛拿到的是華為「天才少年」計劃的薪資最高檔△張霽張霽也入圍了華為「天才少年」計劃,薪資也是最高檔
  • PHP-語言基礎「程式設計師培養之路第三十一天」
    <br>";};list(只用於索引數組)list($a,$b,$c,$d,$e) = ["張三","李四","王五","小明","小紅"];echo $a,$b,$c,$d,$e;>數組的輸出$b = 3.1; $c = TRUE; var_dump($b,$c);/* 輸出: float(3.1) bool(true)*/複製數組$arr1=
  • 「C語言C++編程入門」——編譯機制和語言標準
    用 C 語言編寫一個程序時,你將編寫的內容保存在一個被稱為原始碼文件的文本文件中。大多數 的系統,都需要該文件的名稱以 .c 結尾。 例如,hello world.c 。名稱中小點前的部分被稱為基本名,小點後的部分被稱為擴展名。
  • PHP丨PHP基礎知識之條件語IF判斷「理論篇」
    if語句是指程式語言(包括c語言、C#、VB、java、php、彙編語言等)中用來判定所給定的條件是否滿足,根據判定的結果(真或假)決定執行給出的兩種操作之一。if語句概述if語句是指程式語言(包括c語言、C++、C#、java、php、VB、彙編語言等)中用來判定所給定的條件是否滿足,根據判定的結果(真或假)決定執行給出的兩種操作之一。if的返回值為真或假,可以用bool型變量進行存儲,佔用一字節。
  • 百度聯合發起「千言」計劃,共建中文自然語言處理數據
    知情人士透露,蘋果計劃最快在8月底重新開放上述零售店,在大多數情況下,這些門店將採取預約的方式展開運營,即只有提前預約過的消費者才可以進入店內。百度聯合發起「千言」計劃,共建中文自然語言處理數據在8月25日的百度大腦語言與知識技術峰會上,針對數據匱乏、算力不足和知識技術研發中面臨的問題,百度聯合中國計算機學會、中國中文信息學會發起中文自然語言處理數據共建計劃「千言」。
  • BERT是否完美,語言模型又是否真正地「理解了語言」呢?
    」,也可以是「預定」。顯然有很多詞不能從現實中找到指代物 --「如果」、「可能」-- 但它們表達了一定意思。可上面提到的「歐巴馬」、「北京」這些專有名詞的意義似乎只有指代了吧?Frege's Puzzle 卻讓這種觀點站不住腳。例如「魯迅是周樹人」這句話 (魯迅:又關我什麼事),假如「魯迅」和「周樹人」的意義就是指代,這句話便等價於「魯迅是魯迅」-- 一句廢話。
  • C語言到底重不重要,難不難
    隨著計算機在各領域的廣泛應用,古老的計算機語言早已不再是我們程序猿的菜,目前「計算機語言」在不同的領域,不同的地區,甚至是不同公司使用的「計算機語言」都各有不同,因此「計算機語言」多種多樣,作為零基礎的我們程序猿學起來也是前途一片迷茫。
  • TIOBE 1 月程式語言排行榜:C 語言再度「C 位」出道!
    整理 | 屠敏在 2020 年初雪來臨之際,TIOBE 官方在最新發布的 1 月程式語言榜單中為我們最終揭開了「 2019 年度程式語言」的神秘面紗,然意料之外情理之中,獲此殊榮的並非是風風火火吵鬧了一年又一年的 Python,而是一位低調的老兵——C 語言。
  • 除了github,給開發者推薦這些C語言相關的練習項目
     對代碼、編程感興趣的可以關注「老K玩代碼」公眾號和我交流!本課程講解 C 語言的開發環境以及對 C 語言的剖析,引入大量的 C 語言程序案例,把算法和語法結合起來,通過引導大家由淺入深地編寫 C 程序,讓大家掌握 C 語言。
  • 「記」詳解C語言之格式
    文@侍郎不是狼啦#C語言初學#在開始說明本文主題之前,我想有必要科普下C語言的歷史:C語言誕生於美國的貝爾實驗室,由D.M.Ritchie以B語言為基礎發展而來,在它的主體設計完成後,Thompson和Ritchie用它完全重寫了UNIX,且隨著UNIX的發展,c語言也得到了不斷的完善。
  • Go語言11歲了,網友:他喵的,終於確定出「泛型」了
    與此同時,還進行了許多性能上的改進,包括「更快的defer」和真正「搶佔式的goroutine調度」,目的就是為了減少調度和垃圾收集延遲。(Go generics)的最新設計草案,以及原型工具和「泛型」實驗語法的playground。