怎麼培養寫程式的思想,現在C語言作業自己還是做不出來,得看別人的?

時間 2021-05-06 21:40:53

1樓:趙叢劍

這種情況應該是由以下兩個因素綜合造成:

1.對基礎知識掌握不夠熟練

2.解構問題的能力

因素1在解釋完因素2後會給出原因

對於因素2,在大學之前,學校對問題解構能力的培養並不注重,而是通過題海戰術積累解決問題的模式,但是這對解決未知的問題只是起到了乙個一半的作用,這需要我們具有將問題化解為已知模式問題的能力。

所以,對基礎知識的掌握,以及積累解決問題的模式,可以決定了我們解決問題的基礎能力,而對於解構問題的能力則需要思考和培養。

我這裡舉乙個例子,使用c語言,在一串數字中找到能被2整除的數字。

想一想我們如何去解決這個問題呢,首先程式分為資料結構和演算法兩部分,對於資料結構就是我們如何去使用目標語言表示我們的資料,從而可以更好地選擇合適地演算法解決提出的既定問題;然後演算法是我們如何加工和處理我們使用資料結構表示的資料以解決問題。

首先資料結構,我們選擇陣列去儲存這一串數字(這裡就需要你知道陣列,並且知道陣列的特性,這裡就是對因素1的體現),然後我們看看需要什麼演算法表示去解決這個問題,這裡我們選擇迴圈判斷去實現,這樣我們就解決了這個問題。

而對於乙個更大的問題(這裡我感覺更合適的說法應該叫復合問題),例如我們去實現乙個記事本,我們需要將這個問題化解成幾個我們可以解決的小問題,但是在我們基礎知識儲備不足時我們分解問題會走彎路。

2.如何將輸入的資訊存放至硬碟檔案

3.從硬碟檔案讀取並控制顯示

這就是三個我們可以解決的問題

但是這樣分解問題,如果我們基礎知識儲備足夠,或者我們寫出來在實際應用的過程中,就會發現,輸入資訊直接儲存至硬碟會面臨效能問題,所以,我們對問題的分解做出如下調整:

3.如何將記憶體資料存放至硬碟檔案

4.從硬碟檔案讀取恢復記憶體資料並顯示

這個就是乙個問題解決的大概脈絡,既需要基礎,又需要分解能力,基礎決定我們分解問題的準確性,

大一c語言寫不出程式?

馬之人 學生管理系統是什麼梗?怎麼好多學生都要做這個?如果你的問題是 C 語言寫不出程式 那沒問題,你才學一年,離入門遠著呢,到畢業的時候能寫出完整的程式,那你已經是很不錯的了。如果你的問題是 C 語言寫不出學生管理系統 那也沒問題,C 不是幹這個的。用網頁實現更方便。 扶餘城裡小老二 有句話是這麼...

C語言輸入123輸出321這個程式怎麼寫?

intserver int data return int n n?int n 0 NoneType include void function void intmain include using namespace std void function void intmain include i...

C語言可以寫多少個程式,為什麼?

Parsea 答案 如果不考慮現實物理意義上的儲存空間,則為可數無限個,和自然數集的基數是等勢的 否則是有限的。原因 我們設長度為n的C語言程式 包括標頭檔案等 的個數為f n 那麼顯然,對於任意的自然數n,f n 是有限的,因為它最大為x的n次方 x為合法的C語言字符集基數 對於其中能夠編譯通過的...