小學生學習C++是以編程為主還是算法為主?

盤紹東


作為一名計算機專業的教育工作者,我來回答一下這個問題。

首先,小學階段開始學習編程語言是可以的,而且隨著編程語言的重要性不斷提升,早一點接觸編程語言不僅可以鍛鍊孩子的邏輯思維能力,同時也能夠在一定程度上提升孩子的信息力,這也會為孩子以後學習能力的提升奠定基礎。

但是,在小學階段學習C++編程語言還是需要慎重考慮一下,畢竟C++語言是面向對象編程語言,抽象程度比較高,在理解上會有較大的困難,而且C++語言的實驗過程也相對比較複雜,很多實驗的結果並不算直觀(畫面感不強),對於理解能力有限的小學生來說,很難會形成一個持續的學習過程。相對於C++語言來說,在小學階段學習Python語言是不錯的選擇。

如果已經開始學習C++語言了,而且孩子的理解能力也比較強,那麼在學習的過程中,應該首先以瞭解C++基本的編程語法為主,建立通過編程語言來解決問題的思路。其實算法無非就是通過編程語言來解決各種計算問題,根源是數學問題,所以早期並不需要過多關注算法的學習,在學習到一定階段之後,必然會涉及到算法知識。

小學生學習編程語言重點並不是通過編程語言去解決業務問題,重點應該放在思維方式的培養上,比如通過編程語言來解決一些數學問題就是不錯的學習方式,這一方面會培養孩子的編程能力,另一方面也會鍛鍊孩子解決問題的能力。

最後,未來更多的人工智能產品將走進教育領域,掌握一定的編程語言知識也能更好地與智能體進行交流。

我從事互聯網行業多年,目前也在帶計算機專業的研究生,主要的研究方向集中在大數據和人工智能領域,我會陸續寫一些關於互聯網技術方面的文章,感興趣的朋友可以關注我,相信一定會有所收穫。

如果有互聯網、大數據、人工智能等方面的問題,或者是考研方面的問題,都可以在評論區留言!


IT人劉俊明


不太贊同樓上所答“不能把編程和算法隔離開”,實際上廣義的算法即“計算的方法”,是一套可以應用於不同領域的解決問題的辦法,甚至一個算法中可以不包含狹義的數學計算。

那麼回到題主的問題,小學生學C++應以編程為主還是算法為主?

首先我們應該思考小學生學C++的目的到底是什麼。

一般成年人學習某個技能技術或知識,目的主要有兩個:其一是為了生活,其二是為了興趣。

但是小學生學C++,顯然不是也不應該是為生活所迫。那麼是否只能為了興趣而學呢?也不盡然。其實小學生學習編程最重要的隱含目的是提高思維能力。


既然是提高思維能力,顯然就不應該拘泥於具體的語法和規則,而是通過編程的思想,盡力去發揮創造力想象力。

由於C++的語法和特性都過於複雜,所以確實不適合讓小學生來學習,更好的選擇有Scratch或者ROBOLAB。

圖形化的操作界面以及圖形化的結果展示,都更利於提高小孩子的興趣,並且也不會由於缺乏英語基礎而出現障礙。

所以我們可以知道既然不是“為了編程而編程”,所以編程本身是不重要的。

算法作為思維的具體展現,這才是小學生應該要著重學習的。

但是,不是要小學生學習大套的經典算法,什麼快排堆排,什麼鏈表二叉樹,都不適合。更好的辦法是,給出一個具體的問題,讓他通過編程的手段來進行解決。比如機器人編程中,通過簡單的基本指令,讓機器人從起點經過指定的路徑走到終點。


不會編彙編


首先給結論:算法為主。

這裡面的本質問題是:編程和算法哪個是更底層,更基礎的東西?

而回答上面的這個問題就變成了:如何判斷哪個東西更底層,更基礎?

一個東西或者能力越是經過長時間不變,那麼它就是越基礎的,越底層的東西。比如說在遊戲開發裡面,遊戲的核心代碼是不經常改變的,而上層的界面顯示等邏輯代碼是經常變化的,所以我們說核心代碼更加底層。同樣在這個問題,以20年的一個角度來看,算法還是不會過時的,且可以應用到別的語言上。而編程由於社會的進步,變化的程度遠大於算法的變化。比如說10年前用 java寫安卓遊戲,而現在大家跨平臺的引擎來開發遊戲。

算法對於編程而言是它基礎的一部分,基於此也是算法優先。另外一個很重要的原因是小學生應該考慮長遠的發展,所以應該先打基礎。這和我們現在國家的大學教育方式是一樣的。直接上手編程,就是專科方式,它們後面的發展很容易看的到。


終上所述,小學生應該以算法為主。


幽默抓搞笑


這個問題的提問者可能本身是位小學生的家長,沒有接觸過計算機編程知識,我們不能把編程和算法隔離開,算法是編程的一部分,你的問題可能是問學習C++這門編程語言的語法為主,還是學習算法為主?

包括C++在內每一種編程語言都有一系列規則,描述在那種語言中你用手敲出來的字符串被認為是有效程序的代碼。這些規則定義了這種語言的語法。

所謂算法就是你掌握好這門編程語言的語法後用來解決問題的思想和方法。

用小學生的常見的脫式計算來打個比方。

你根據既定的語法規則,為了解決一個問題,用普通的算法,可以寫出一個算式: 563×852+437×852,然後,先算乘,再算加,來得出結果。你也可以根據所學的知識,選用另一個計算速度更快的算法去計算。把算式寫成(563+437) ×852後計算。

回到C++編程中,你首先得會語法,掌握基礎,然後用簡單的算法去解決問題。兩者缺一不可。

對於小學生來說,隨著以後知識水平的增加,在學習數學、數據結構,操作系統等專業知識後,對於算法會有更深的認識,所以,語法靠熟練,算法看鑽研!

算法這種抽象思維的建立,沒有語法的支持,就是海市蜃樓,人們正在是運用不同的算法寫出不同代碼後,才比較出來哪種算法比較合適,沒有語法的支持,根本無法驗證自己抽象出來的算法是否正確!一個沒有見過汽車模樣和構造的人,讓他去想辦法改進汽車,可能嗎?


獨醉無言


小學生學C++,沒有搞錯吧!小學生接觸計算機並學習挺好的,但是小學還處於認識的基礎階段,以興趣為主,您這連算法都上來了,簡直有點.....如果教育變成了胡來其實挺嚇人的!您想想小學生能接觸哪些算法,另外你要想明白一個問題,小學生學C++做什麼?如果是為就業做準備,那我沒話說!其實大家弄錯了一個問題,而導致了盲目的跟風,那就是小學生或中學生學編程的目的!如果把學生朝著程序員方向培養就是有問題了,因為那不是這個階段要做的事情!這個階段是要用計算機解決他們面臨的學習過和效率相關的現實問題,哪怕是和遊戲相關,之前孩子會發現計算機的用處,這樣才會有興趣!

個人觀點,不代表任何組織!如有冒犯見諒!


考試石磊


給小孩教算法,遞歸,他們能懂嗎?奉勸家長,數學不好,還是別玩編程。我們培養過數學和信息學的雙料省隊選手。這是經驗之談。


新曙光劉利新


小學生學習C++學習語法基礎,配合思維題,C++語法複雜,目前以參加競賽為主,學習枯燥,開始不建議學習C++


小鎮與青年


小學生不適合學c++,除非是自學


分享到:


相關文章: