當前位置:
首頁 > 知識 > C語言篇之淺析程序的靈魂演算法

C語言篇之淺析程序的靈魂演算法



C語言篇之淺析程序的靈魂演算法



我們通過以前的學習,了解了C語言的特點,看到了簡單的C語言程序。現在咱們開始從程序的內容方面進行學習,也就一個程序中應該包含什麼信息。或者說,為了實現解題的要求,程序應該向計算機發送什麼信息。

一個程序主要包括以兩方面的信息:


想要一起學習C 的可以加裙二四八八九四四三零,有很多大神一起學習交流,有資源,然後可以訂閱轉發一下


(1)對數據的描述。在程序中要指定用到哪些數據以及這些數據的類型和數據的組織形式。這就一個新的名詞:數據結構(在以後得學習中我們會接觸到)。


(2)對數據的描述。即要求計算機進行操作的步驟也就是演算法。

數據是操作的對象,操作的目的是對數據進行加工處理,以得到期望的結果。舉個例子:


廚師做菜,需要有菜譜,菜譜上一般會說明所需要的配料,即指出為了做出指定的菜,應該使用說明原料操作步驟,即說明了用這些原料,應該按照什麼樣的順序進行加工,才能做出想要的菜。


巧婦難為無米之炊,沒有原料是無法加工出想要的菜的,而對同樣的原料進行不同順序的加工,就能得到不同味道的菜。做程序也是一樣,要想讓計算機跟著自己的思路走,完成想要的功能,就得認真考慮和設計數據結構和操作步驟(也就是演算法)。


一.什麼是演算法


引用官方的解釋就是

「演算法(Algorithm)是指解題方案的準確而完整的描述,是一系列解決問題的清晰指令,演算法代表著用系統的方法描述解決問題的策略機制。也就是說,能夠對一定規範的輸入,在有限時間內獲得所要求的輸出。」。


比較通俗的解釋就是:一件事件的預先規劃好的步驟。


二.演算法的特性


(1)有窮性


(2)確定性

(3)有零個或是多個輸入


(4)有一個或是多個輸出


(5)有效性


三.怎樣表示一個演算法

(1)用自然語言表示演算法


所謂自然語言,就是人們日常使用的語言,可以是韓語、英語或是其他語言。用自然語言表示的演算法,通俗易懂,但是由於是文字表示,內容會冗長,而且會出現歧義。含義也不太嚴格。因此,除了那些簡單的問題以外,一般不用自然語言表示演算法。


(2)用流程圖進行表示


流程圖就是用一些圖框來表示各種操作。優點是直觀形象,易於理解。如下圖:



C語言篇之淺析程序的靈魂演算法



這就是一個簡單的流程圖,顯示了取錢的時候的基本步驟。看起來就十分的清晰明了。


下圖就是在流程圖中常用到的符號:



C語言篇之淺析程序的靈魂演算法



文章末尾,分享一則鍛煉推理能力的思考題吧:


【思考題】


史密斯夫婦邀請另外四對夫婦就餐,已知他們每個人都不和自己握手,不和自己的配偶握手,且不 和同一個人握手一次以上。在大家見面握手寒暄後,史密斯問大家握手了幾次,每個人的答案都不一樣。


問:史密斯太太握手幾次?


有思路的大神可以把自己的思路分享出來。或許會碰撞出思維的火花呢?


想要一起學習C 的可以加裙二四八八九四四三零,有很多大神一起學習交流,有資源,然後可以訂閱轉發一下

喜歡這篇文章嗎?立刻分享出去讓更多人知道吧!

本站內容充實豐富,博大精深,小編精選每日熱門資訊,隨時更新,點擊「搶先收到最新資訊」瀏覽吧!


請您繼續閱讀更多來自 C加加 的精彩文章:

C程序解析:C語言代碼中的每一行都是什麼意思?
C語言編程——數字炸彈遊戲
C語言編程——查詢自動售貨機中商品價格
C語言編程——統計英文字母個數

TAG:C加加 |

您可能感興趣

演算法-程序的靈魂
濫用與語言靈魂之殤
人類靈魂的語言「文字」
詩文是書法的靈魂:以無情之語而欲動人之情,難!
漢簡書法,人類藝術史上的靈魂之作
漢簡——書法史上的靈魂之作
鍾明善:抒情性是書法藝術的靈魂
節奏是書法藝術的靈魂
靈魂之橋好玩嗎 靈魂之橋劇情模式介紹
閱讀之靈魂,精神之主宰
《靈魂之舞》——王玉波油畫新作解析
漢簡,人類藝術史上的靈魂之作
傳統文化的精髓和靈魂
隔時空之靈魂交融——不讀詩無以言
經典遊戲《魂斗羅》系列最震撼的BOSS賞析,那是透徹靈魂的恐懼
馬克筆畫法——解析這些注入靈魂的服裝設計手稿
插畫師結合神話元素的幻想世界,《沙丘的靈魂》插畫作品欣賞
「氣味」——書法藝術的靈魂
書札 靈魂的碎語
靈魂畫師·成語猜猜猜