計算機程序設計語言范例6篇

前言:中文期刊網精心挑選了計算機程序設計語言范文供你參考和學習,希望我們的參考范文能激發你的文章創作靈感,歡迎閱讀。

計算機程序設計語言范文1

關鍵詞:程序設計語言;程序設計能力;分析要點

Teaching Main Point Analysis of Computer Programming Language Courses

Li Yongliang

(Shandong Transport Vocational College,Weifang261206,China)

Abstract:In computer science and computer non-computer major teaching,almost all schools set up high-level language programming course.Programming language teaching although it is difficult,but very meaningful,it is beneficial to develop creative thinking,help students develop problem-solving through computer awareness and ways.

Keywords:Programming language;Programming skills;Analysis

main points

在教學中與一些應用軟件或工具軟件相比,編程課程的教學具有較大的靈活性。很多學生的學習能力較差,課后不肯花時間,久而久之,導致聽不懂,給計算機編程語言課的教學帶來一定的難度。采用何種教學模式進行教學就成為編程

語言教學的一個關鍵。

一、引言

根據以往的教學經驗和通過與學生、同事之間的交流,得知部分學生反映上課時都能聽懂講解,可在涉及到具體的編程及上機操作時,往往會出現沒有思路、無從下手或錯誤百出,不會調試程序等各種情況,究其原因,在教學方面可能存在以下2個問題。

(一)過于注重對語句語法的講解,缺乏以算法為核心的編程題教學。教師鐘情于舉一反三地對使用語句、語法的深入教學,而不是有機地結合算法思想進行教學,貼近生活并引起學生興趣的編程題講得很少。由于教學不是站在如何應用計算機工具編程解決實際問題或實際項目的角度,就沒有把邏輯與編程解題思路放在主體地位,也就沒有很好講解如何分析問題和解決問題。結果導致學生程序設計能力、上機解題能力訓練不夠,更談不上引導學生進行課題研究和科研探索。

(二)學生厭倦傳統的課堂教學,缺乏師生之間的溝通交流學生對于先講后編、先聽后編這一傳統的課堂教學方式有厭倦心理。課堂成了教師的“一言堂”,教與學不能銜接起來。有時教師為了趕進度,講授法成了唯一的教學方法,師生之間缺乏足夠的交流和溝通,學生沒有有效、實用的學習輔助途徑,也間接影響著學生的學習興趣和學習效果。

二、程序設計能力認識

程序是軟件的本體,程序設計(Programming)是指設計、編制、調試程序的方法和過程。它應排除軟件開發中的工程與管理因素,主要指軟件開發過程中的技術因素,尤其是計算機技術因素。

根據調查分析,合格程序員必須具有:1.扎實的專業基礎知識;2.很強的綜合分析和解決問題的能力;3.熟練的編程調試能力;4.創新能力;5.團隊合作能力;6.持續的自學能力;7.強烈的好奇心;8.較高的英語水平和軟件工程的實踐能力等。

應看到,程序設計能力,并非完全等價于程序員所應具備的專業素質,它還包括其他一些內容,如:1.理解問題,根據已知條件,找出求解該問題的數學方法或建立相應的數學模型;2.歸納程序的基本功能;3.設計數據結構和算法;4.用程序設計語言實現算法描述;5.編譯與調試;6.測試程序,保證程序正常運行。

綜上所述,可以將程序設計能力定義為:依據程序設計思想與觀念,應用程序設計語言,采用相應程序開發技術和環境,進行程序設計并達到預計結果的程度。

三、要點分析

基于對程序設計教學思想、程序設計能力的認識,為使學生充分掌握程序設計的思想和方法,有效實現程序設計課程教學目標,我認為程序設計教學還應注意并強調以下幾個基本的教學任務和要求。

(一)應著重培養學生的結構化程序設計的基本觀念。結構化程序設計的基本思想是采用“自頂向下,逐步求精”的程序設計方法和“單入口單出口”的控制結構,它是程序設計的基本原理之一。貫徹課程始終、通過具體實例潛移默化地培養這一思想,比在軟件工程中空洞的說教,更容易被學生理解和接收。

(二)為了使初學者能盡快地掌握計算機知識,進入計算機的應用領域,在課程講授過程中,要特別注意培養學生的學習興趣。學習興趣就是學生在心理上對學習活動產生愛好、追求和向往的傾向,是推動學生積極主動學習的直接動力。學習興趣直接關系到教學效果的好壞。為提高學生的學習興趣,筆者歸納出6個辦法:1.通過演示程序突出程序語言的實用性;2.通過簡單的編程練習突出語言的易學性;3.運用恰當的類比使復雜問題形象化、簡單化;4.做到一題多解;5.要善于舉一反三;6.通過解決實際問題使學生樂學。

(三)教師在教學過程中引導學生思考和探索教學時發現,學生問不出問題的原因往往在于沒有真正學好。實際上,問題是最好的老師,是學生學習的引導者,沒有問題便沒有深入。在教學過程中,引導學生在問題解決中學習,即提出問題,留給學生時間思考、討論、解決問題,從而更深入地展開學習。實踐證明,這種教學方法充分調動了學生學習的積極性和主動性。

計算機程序設計語言范文2

關鍵詞:計算思維;程序設計方法;c語言程序設計;教學方法

《c語言程序設計》是計算機相關專業及其他理工科專業的基礎課,它是一門實踐性很強的計算機基礎課程。教學目標是通過課程的學習,學生不僅要掌握C語言程序設計的語言知識、編程技術和基本算法,更重要的是在實踐中逐步掌握程序設計的思想和方法,培養學生問題求解和程序語言的應用能力,為后續專業課程的學習打好基礎。

由上述的教學目標我們知道C語言程序設計這門課程中教師不僅講授C語言語法知識,還要幫助學生掌握程序設計的能力。但目前c語言程序設計課程教學中只注重知識講解,而忽略了程序設計思維的培養,導致學生只會看不會寫。鑒于此,本文提出基于“計算思維”培養程序設計能力的教學方法,并將其運用于《c語言程序設計》課程教學實踐。

1C語言教學存在的問題

對于程序設計的初學者,編寫程序包含至少兩個方面的要素:1)程序設計語言的語法知識;2)計算思維,即算法,也就是用計算機的思維把客觀世界的問題分解成計算機所能處理的步驟,并描述出來。

目前大學《c語言程序設計》教學普遍存在的關鍵問題是:重語法,輕算法,注重傳授知識,忽略程序設計思維培養。大多數教師強調C語言語法知識的講授,造成學生死記硬背C語言的語法知識,卻不會運用,導致理論與實踐相分離,使學生誤以為C語言是枯燥的理論課程,從而產生厭煩情緒,失去C語言課程學習的興趣和動力;部分教師并沒有在課堂上帶領學生一起完成程序從無到有的編寫過程,學生不能形成程序設計思維,導致學生產生這樣的疑問:“程序為什么要這樣寫?”,大部分學生處于“看得懂別人寫的程序,但自己不會寫程序”的狀態。

著名國內計算機教育專家譚浩強教授指出算法是程序的靈魂,在他所編寫的《c程序設計》一書中,“算法”這一章里用了幾種方法闡述如何描述算法,這其實包含了把客觀世界中問題的解決方法轉換成為用計算機思維解決問題這一重要思想!筆者與同行交流討論時發現,竟然有部分老師跳過“算法”這一章節,這是典型的重語法,輕算法,只注重傳授知識,而忽略程序設計思維培養。

2以計算思維培養程序設計能力教學法的運用

據筆者多年從事計算機程序設計語言教學工作經驗及教學過程中所做的調查了解到這樣一種情況:許多學生面對某個編程題,不知道如何下手,并非學生不會用所學的數理化知識解決該問題,只是不知道如何用計算機編程來解決問題。這種情況的根本原因就是學生不知道如何把解決該問題的方法轉換成計算機思維表示出來。進一步說就是沒有形成計算思維。

計算思維的含義是運用計算機科學的基礎概念進行問題求解、系統設計以及人類行為理解等涵蓋計算機科學之廣度的一系列思維活動。其本質內容體現了抽象、約簡、規劃、關注點分離、遞歸、優化、分解等思維特征-引。顯然如果學生不明白計算思維,不理解計算機是如何解決問題的,那么他一定不會編寫程序。因此想要培養學生程序設計能力那么必須使學生養成計算思維,使用計算思維去把客觀問題的解決方法轉換成計算機所能處理的步驟(即算法)描述出來,最后再將算法轉換成程序語言代碼,即編寫出程序。

2.1通過案例驅動逐步建立計算思維

對于程序設計初學者,在開始時先通過案例讓學生逐步了解計算思維,讓學生知道計算機是怎樣來解決問題的,更具體的來說是讓學生知道計算機是通過什么樣基本步驟的組合或者重復來解決問題的,從而學生知道要讓計算機來解決問題,就要把問題分解成計算機所能處理的基本步驟,計算機通過重復執行這些基本步驟即可解決問題。通過反復的練習與加強讓學生逐步建立計算思維,掌握分析問題和用計算機的思維方式來解決問題的能力。

下面通過案例w現計算思維。

題目:計算1+2+3+…+100。

計算機程序設計語言范文3

論文摘要:現存的非計算機專業編程語言的教學弊端種種,本文提出了一種新的思路。即:使用VBScript語言在記事本中編寫程序,在IE瀏覽器環境下來運行之,且通過實例論證該方法的實用性,使其真正為每個用戶服務。

0引言

說起我國非計算機專業編程語言教學的走向,就不得不提到我國高等學校計算機基礎教育發展的歷史。我國的計算機基礎教育始于20世紀80年代初期,從80年代初以來,高校的計算機基礎教育大致上經歷了三個發展階段:80年代是起步階段,90年代是規范階段,進入21世紀,開始了第三階段,即深化提高階段。

計算機基礎教育是指面向大學中非計算機專業學生的計算機教育,這部分學生約占全體大學生的95%以上。非計算機專業中進行計算機教育的目的是培養大批能使用計算機的人才,而不同于計算機專業的培養計劃,可以說他們是計算機應用人才,學習計算機的目的完全為了應用,計算機只是作為一種現代工具來掌握,而不能當做純理論的課程來學習。明確了這個培養目標,那就可以有的放矢。

目前各高校非計算機專業編程語言教學的現狀是:學時是有限的,學習內容是繁雜的,由此對學生產生的學習壓力不僅苦不堪言,而現實更是多數非計算機專業的學生在畢業后,對于大學期間學習的編程語言大部分是忘記,若想拾起來重新使用,也不是一件易事。如何解決非計算機專業編程語言教學和實際使用二者之間存在的矛盾這個問題,是我們每個從事高等計算機基礎教育的老師不得不思考的問題。

1非計算機專業編程語言教學的現狀

對于現存的高等院校非計算機專業編程語言教學的弊端,我們做以下幾點分析說明:

(1) 非計算機專業編程語言教學培養目標定位有誤

對于非計算機專業學生進行的編程語言教學,應與計算機專業的學生有所不同。計算機專業培養的是計算機專門人才,將來從事信息技術理論研究、科研教學、系統開發等專業性的工作,而在非計算機專業中進行編程語言教學的目的是培養大批能使用計算機的新型人才,他們需要達到的程度僅僅是使用計算機這個工具。作為高等院校非計算機專業編程語言教學計劃的制定者,對于專業和非專業要達到的目標一定要明確,否則有可能南轅北轍。

(2) 非計算機專業的編程語言教學設置好大喜功

經過作者在國內各大高校做的調查,幾乎各大高校對于非計算機專業編程語言教學一般從大學一年級就開始,陸續開有VB、C、FoxPro、SQL、C++、PB、Delphi、Java等,有的院校在高年級非計算機專業還開有計算機編程語言課程,美名其曰:多學點東西,增加就業砝碼。

誠然多學點東西是不會有什么害處,但是不知道說這個話的人有沒有想過:對于非計算機專業的學生來說,能有多少比例的學生在真正學這些開設的計算機編程語言課程,更多的恐怕是在各種考試之間疲于應付。當大家手捧畢業證書的時候,手拿四年所修的學分成績單的時候,當大家面試應聘的時候,留在大家腦海中的計算機編程語言可能屈指可數,可以炫耀的可能僅僅是修過的計算機課程的數量。

作為從事高等教育的老師,我們不能為了這些表面的假象自欺欺人。如何在有限的學時內進行優化選擇,使學生學到最需要的知識。當然不僅是指當前最需要,而且也包括今后踏上工作崗位,對于需要用到的計算機編程語言知識的時候也可以信手拈來,不用再重新學過。因此,對于非計算機專業的學生,我們應該敢于摒棄學習那些當前為了考試,今后根本用不多,僅僅是為了增加學分的計算機編程課程。

(3) 系統本身龐大,掌握的知識有限,學不能使其精

對于現存的計算機程序設計的任何一門語言,如VB、Visual Fox、SQL等,系統都是很龐大的。以一個簡單的例子,VB為例來說明,VB采用的事件驅動的編程機制,提供了動態數據交換(DDE)和對象鏈接與嵌入(OLE)等技術。在數據庫方面,VB具有很強的數據庫管理功能,不僅可以管理MS Access格式的數據庫,還能訪問其他外部數據庫,如FoxPro、Paradox等格式的數據庫。另外,VB還提供了開放式數據連接(ODBC)功能。

對于VB強大功能,我相信學過VB的用戶,都是普遍承認的,這個不需要多說,但是對于這么大的一個系統,如何能通過簡簡單單的幾個學時就能夠完全掌握呢?即使說你上課的時候多么專心地聽講,多么用功地做筆記,都是無濟于事的,非要通過系統地做上幾個項目才能掌握一二,更不要說是對于僅僅是通過教材上的幾個簡單例子學習的學生了,這幾乎是不太可能的事情。那么有沒有學習起來比較容易上手的工具了,答案是肯定的。

(4) 快速記憶,快速忘記

在高等院校里不排除有些用功的學生,學習每門功課都是用功之極,當然也不排除用功是為了在考試中拿個高分,爭取獎學金的可能性存在。一個學期,說的更多一點一年對一門語言的學習,在短時間之內掌握某一項技能之后,一旦長時間不使用,肯定會生疏,這是人類不能抗拒的生理現象。而且目前高校里的學生學習的現狀是:平時基本不看,考前拼命熬夜苦讀,這種短時間內強迫大腦記憶的東西,肯定是經不起時間的考驗的,尤其是在一個人不愿意學習這門功課的時候,這是自然規律。

假設你當時學會了VB,而且在大學畢業參加工作的時候也沒有忘記,是不是說你就能很好地做自己的事情了呢?答案也是否定的,因為你掌握的是VB,而在工作單位的PC機上或許并沒有安裝VB的運行環境,這樣是不是就為你的使用又出了一道難題。

有沒有一勞永逸的工具,只需要簡單的學習,而且不論在安裝或者未安裝VB運行環境的PC機上都能很好的完成自己想做的工作。通過作者親身實踐,本文中提倡的這個方法就可以達到這樣的功效。

(5) 支持知識產權保護

如何做才能既使用正版,又不卷入知識產權的糾紛中呢,這里我們提倡在高校中推廣,使用VBScript腳本語言在記事本環境下編程,在IE瀏覽器中運行,就可以達到這樣雙重效果。

(6) 程序交流困難

一個用戶編寫的程序如果僅僅是自己使用,這個時候程序的使用有一定的局限性,如果能夠拿出去跟別的用戶交流,就具有了更大的價值。假設有兩個用戶A和B,A在VB環境下編寫了一段程序,在自己的機器上可以正常運行,當A把這段程序拷貝到B的機器上和B交流的時候,B機器上恰好沒有安裝VB環境,此時對于二者的交流可能存在障礙。

針對上述,我國高校計算機基礎教育體制中存在的諸多問題,作者提出了一種新的思路。

對于一臺安裝了操作系統(Windows XP、Windows 2000 Professional、Windows ME、Win 98等)的PC機來說,擁有IE瀏覽器和記事本是再簡單不過的事情,作者推薦給大家的就是使用VBScript語言來完成自己想要做的工作。下面我們通過例子來做進一步的說明,以此來演示如何更好的結合二者,使之發揮作用。

在數學或工程應用中,常常存在著大量的數值計算和數值分析問題,如:復合梯形公式、復合Simpson公式、Romberg求積公式等。通過編寫簡單的程序,就可以讓計算機代替人類來做一些復雜的計算任務,在這里以數值計算中一個常見的問題來說明一下如何使用提倡的方法完成計算任務,這里以復合Simpson公式的計算為例。程序是通過輸入給定的三個初始值:a、b和n,如圖1所示。

圖1 數據輸入界面

計算設計大致上分為三個步驟:

(1) 在記事本中編寫程序代碼如下示:

圖2 程序源代碼

從上述源代碼中可以看出:第一,VBScript使用的僅僅是VB中簡單的程序設計思想的三種結構:順序、選擇和循環,不涉及復雜的結構,對于非計算機專業的用戶來說是非常容易的事情。第二,在程序開始寫了一個自定義的函數,在后面對該函數進行了調用,可以達到程序復用的作用。

(2) 將該文件保存為一個html格式的文件,如:a.html。

(3) 運行該程序只需要雙擊該文件圖標就可以在IE瀏覽器環境下運行,在指定的文本框中輸入符合計算要求的數據點擊確定就可以得到計算的結果,如圖3和圖4所示。

圖3 程序初始界面

圖4 運行結果

3小結

通過上述例子我們可以得出以下結論:

(1) 在記事本環境下,僅僅使用了一些簡單的VBScript腳本語句就可以完成復雜的數值計算任務。VBScript是介于HTML語言和Visual Basic、Java等高級語言之間的一種腳本語言,它接近于高級語言的大部分功能,但卻比高級語言簡單易學。

(2) 在運行該程序時,不像其他的程序設計語言需要經過編譯或解釋等步驟,以此來生成目標文件、連接文件以及可執行文件等,使用VBScript在記事本中編寫的程序需要做的工作僅僅是雙擊該文件名,而不會生成其他的中間文件,這樣就大大節省了系統的存儲空間。

(3) 在運行該程序時,對運行環境沒有提出特別的要求,僅僅是需要一個IE瀏覽器。這對于擁有一臺PC機的用戶是輕而易舉的事情。

(4) 當你還在費盡心思考慮程序的在多臺機器之間傳遞的時候,使用在此提倡的方法無需有這方面的顧慮。對于在任何一臺PC機上編寫的 .html文件,你可以輕松在多臺機器上拷貝和運行,而無需進行額外的路徑配置等工作。

當然,我們提倡的這種方法并不是十全十美,如:對于需要大量使用界面圖形來處理的問題,或者需要使用數據庫的問題,該方法就有所欠缺,但是該方法對于僅僅是為了自己方便,進行一些數據處理來說,是再合適不過的了。

全社會的計算機普及,為大學的非計算機編程教育創造了良好的氛圍和外部環境,使廣大非專業人員學習和使用計算機編程語言變得更加容易,如何使學有所用,使高等教育成為社會發展的推動力量,是高校非計算機專業編程教學面臨的嚴重的挑戰,這也是本文的初衷。

參考文獻

[1] 施吉林, 劉淑珍, 陳桂芝.計算機數值方法[M].高等教育出版社.

計算機程序設計語言范文4

關鍵詞:C語言;C++語言;程序設計

中圖分類號:G642 文獻標識碼:B

文章編號:1672-5913(2007)14-0022-02

1引言

大學計算機科學專業的程序設計語言課程,一般分為必修和選修兩種。C和C++都作為必修課;而VB和Java等一般作為選修課?,F在大多數高校計算機科學專業開設程序設計語言課程的順序都是,先開C語言,再開C++語言。然而,我們在教學實踐中發現,學生學習C語言程序設計,接受了“自頂向下,逐步求精”的模塊化程序設計思想,在學習C++語言時,對C++語言的特色:類和模板所提供和支持的“自底向上”的面向對象程序設計思想,很難適應、理解、接受和掌握。同時,由于課時的壓縮,兩門語言都要開設,學時更顯不足,致使學生兩門語言課程都沒有充分的時間學通、學透;更有甚者,正常的教學內容不能完成,學生一知半解、似懂非懂,課程的難點知識沒有時間講和學。這種結果直接影響后續課程(比如,數據結構)的學習;同時學生動手開發軟件的能力也將受到影響。

本文在分析比較C和C++程序設計語言異同的基礎上,結合多年的教學實踐經驗,提出在大學計算機科學專業中,直接開設C++程序設計語言,不再開設C語言的觀點。并根據作者的教學實踐經驗,給出直接開設C++時,教學內容、教材選擇和開設時間的建議。

2程序設計語言C與C++的比較

2.1C與C++的共性

C++是C的增強版,是在C的基礎上增加了數據抽象和面性對象的程序設計這些新特點,很自然C++擁有C語言的基本功能。它支持結構化的程序設計,任何用C寫的程序都可以在C++環境下運行。

在C和C++語言中,標識符、變量、常量、基本數據類型、指針、表達式、運算符的優先級等的規定都相同。枚舉類型和結構體類型的定義方法也相同。關系和邏輯運算、條件語句、循環語句這些控制流語句的定義和使用也都相同。C和C++中數組的定義和使用相同。函數的定義與調用基本相同,只是C++引入了引用參數。也正是由于引用參數的引入,使得C++的使用比C更方便。關于動、靜態變量及其范圍的規定在C和C++中相同。因此。可以說,C語言所擁有的功能,C++都有,而且也是C++的基本部分。但是,C++比C具有更強的功能,具有C所沒有的特性――數據的抽象和支持面向對象的程序設計。同時,關于枚舉變量,結構體變量的聲明C++的語法約定更簡潔方便。

2.2C與C++的不同

C與C++在程序設計的思想與規模、動態存儲管理、文件使用、枚舉和結構體類型、輸入和輸出,以及程序注釋等方面存在差異。C++不僅具有C的所有功能,可以實現所有C語言所能實現的功能,而且C++的功能更強大,使用更簡潔方便。因此,使用C語言設計程序所能解決的實際問題,使用C++語言設計程序也一定能夠解決,而且實現起來更方便。

2.3C++的特色

C++最大的特色是提供了數據的抽象和實現數據抽象類型的機制――類,以及支持面向對象程序設計的封裝、繼承和多態等特性。由于類的出現,使得C++中的數據類型不再局限于系統所提供的固有類型,用戶可以根據自己的實際需要設計創建新的數據類型。同時,由于類的使用,使得數據和操作被封裝在具體的類中,實現了信息的隱藏。C++提供了兩種構造新類的方法:繼承和構成。這兩種構造方法使得C++具有面向對象程序設計的特性。C++還提供了虛函數機制,這使得類的操作可以實現動態邦定。C++中的重載機制使得C++的使用更方便快捷和人性化。C++的模板使得C++具有多態特性。另外,C++的異常處理機制使得程序的調試變得容易和方便。還有C++的虛基類,使得它非常適合用來開發面向對象的程序。

C++中的引用類型,使得函數的參數可以采用引用參數,避免了C語言中函數參數的單向值傳遞所帶來的弊端。而且使用起來非常方便。

C++還提供了作用域限定運算符(::),該運算符可用于解決名稱沖突。還可用于指定標識符的有效范圍,如名稱空間中標識符的使用。

標準C++還支持名稱空間[3~5],除了系統提供的標準名稱空間std外,用戶還可以定義自己的名稱空間。名稱空間的使用給程序設計帶來了很大的方便。

C++的上述諸特色,顯示了C++不僅能實現C程序設計語言所支持的結構化程序設計,而且還支持面向對象的程序設計。可以開發出更大更復雜的應用軟件。

以上C與C++的比較可見,C++的基本部分與C語言基本相同,而且C++的語法相對于C語言的語法更簡潔方便易使用。因此,C++完全可代替C來完成程序設計,完全可以在大學計算機科學專業的本科生中直接開設C++程序設計語言課程,而不用先開設C語言,再開C++。這樣,可以將節省出一部分學時分給C++課程,使得C++的學時更充足些,學生也掌握地更好些。

3程序設計語言C與C++開設建議

通過以上的分析比較,可見在高校計算機科學專業程序設計語言課程的開設中,可以不用開設C程序設計語言,而直接開設C++語言程序設計。

C++的教學內容應該包括:基本知識部分:程序設計與問題解決概述;C++語法、語義以及程序開發過程;數值類型、表達式與輸出;程序輸入與軟件設計過程;條件、邏輯表達式與選擇控制;循環;函數;作用域和生命期;高級控制結構;固有數據類型和用戶定義的簡單數據類型。C++高級知識部分:結構體、數據抽象和類;數組;基于數組的表;面向對象的軟件開發;指針、動態數據和引用類型;鏈結構;模板與異常;遞歸。

C++課程開設時間放在一年級第二學期比較適宜。因為學生在第一學期已經學習了一些關于計算機的入門知識,對計算機科學有了一定的了解,這時開設C++程序設計語言,學生接受起來比較自然。而且直接學習C++語言,沒有別的計算機語言的影響,學習起來更易于接受。C++的課時建議為周學時4,以保證學生有足夠的學習、吸收和消化知識的時間。另外,這個學期開設C++可為學生后續專業課程(如,數據結構)的學習做鋪墊。更重要的是作為計算機科學專業的本科生,在當前的形勢下掌握C++這一通用的編成語言,不僅為將來的發展奠定良好基礎;也為今后參與社會競爭打下堅實基礎。

以上觀點的有效實施依賴于C++程序設計語言教材的選擇。在選擇教材時,必須選擇適宜作為入門語言學習的C++教材。在此建議采用參考文獻[3]中的教材――美國Jones and Bartlett Publishers出版的原版教材“Programming and Problem Solving with C++ (Third Edition/Fourth Edition)”。該教材知識講述邏輯性強,內容安排循序漸進,講解非常透徹清晰,是國內許多中文教材無法媲美的;而且沒有任何先驅課程要求,學生學習起來很容易理解和接受,該教材是美國大學計算機及相關專業程序設計語言的入門教材,是美國最暢銷的計算機科學教材,也是教育部推薦使用的計算機專業類影印版教材。作者在過去4年中使用該教材對計算機科學專業的學生講授C++程序設計(雙語教學)。4年以前作者曾多次講授C語言程序設計。結合多年的教學實踐,作者提出在大學計算機專業的程序設計語言課程設置中,直接開設C++程序設計語言的觀點。關于教材的選擇,也可選用其他一些翻譯過來的國外優秀教材,如參參考文獻[5]中的《C++大學教程》(第五版),該書是針對一學期的課程設置的,英文版在國外也是作為計算機專業的大學一年級教材;或者考文獻[4]中的《C++核心思想》。作者的經驗是最好選用國外原版教材,而且以參考文獻[3]為最好。

參考文獻:

[1] 譚浩強. C程序設計(第二版)[M]. 北京: 清華大學出版社, 1997.

[2] 龔杰民, 金益民, 殷勇. 標準C語言程序設計及應用[M]. 西安電子科技大學出版, 1995.

[3] Nell Dale, Chip Weems, Mark Heading. Programming and Problem Solving with C++(Third Edition)[M]. 美國: Jones and Bartlett Publishers, 2003.

[4] [美]Cay Horstmann著, 晏海華等譯. C++核心思想(第三版)[M]. 北京: 電子工業出版社, 2004.

[5] [美]戴特爾等著, 張引等譯. C++大學教程(第五版)[M]. 北京: 電子工業出版社. 2006.

作者簡介:謝娟英(1971-),女,陜西西安人,副教授,主要從事智能信息處理方面的應用研究。

通信地址:陜西師范大學98# 郵編710062

Tel: 029-85307830(home),13088965815

計算機程序設計語言范文5

[關鍵詞]C語言程序設計 可視化 系統觀 計算思維

中圖分類號:G4 文獻標識碼:A 文章編號:1009-914X(2016)06-0235-02

1 引言

計算思維是當前國際、國內的計算機科學界、教育學界關注的重要課題,計算思維的研究和發展對我國的計算機教育有著十分重要的意義。

2006年3月,美國卡內基梅隆大學的計算機科學系主任周以真教授最早給出了計算思維的概念:計算思維是運用計算機科學的基礎概念進行問題求解、系統設計,以及人類行為理解等涵蓋計算機科學之廣度的一系列思維活動[1]。

目前國外關于計算思維的發展有一定的成效,2007年3月,卡內基梅隆大學和微軟公司宣布建立“微軟――卡內基梅隆計算思維中心 ”(Microsoft Carnegie Mellon Center for Computational Thinking),該中心將致力于計算機科學新興領域的研究,特別是那些能夠對其他學科的思維產生影響的領域;美國計算機協會(ACM)在網上公布的對CC2001 (CS2001)進行的中期審查報告(CS2001 Interim Review)中就清楚表明,要求將“計算思維”的概念及其本質加入到“計算機導論”課程當中去;美國國家計算機科學技術教師協會(CSTA)了名為《計算思維:一個所有課堂問題解決的工具》(Computational Thinking: A problem solving tool for every classroom)的報告,報告對什么是計算思維進行了詳細的闡述,并且得到了微軟公司(Microsoft Corporation)的大力支持。

國內也有一批專家學者在計算思維方面做出了一些頗有成效的研究, 我國對計算思維的關注主要時間是高等學校計算機教育研究會于2008年10月在桂林召開的關于“計算思維與計算機導論”的專題學術研討會,此會議專題探討科學思維與科學方法在計算機課程教學中的推動和創新作用。對此,多數高校在研討會之后分別在自己所在高校開展了關于計算思維的研究,桂林電子科技大學計算機學院也開設了以計算思維為核心培養的計算機導論精品課程。

培養學生的計算思維能力應該成為計算機公共基礎教學的核心任務[2]?!禖語言程序設計》是一門重要的理論性和實踐性都很強的計算機公共基礎課,初學者普遍反映難學。計算思維的培養面臨著許多挑戰[3],目前仍沒有有效的教學模式,仍然處于探索階段。C語言程序設計的學習和計算思維的培養是相互促進的,計算思維能力提高后,可以更高效和深入的學習C語言程序設計,C語言程序設計的學習又能促進計算思維能力的提高。本文通過采用可視化教學模式在C語言程序設計的教學中的應用,以直觀的方式講解C語言中抽象的知識,以動態的可視化方式展示隱含在C語言程序設計中的計算思維,從而達到降低學生的認知負荷,在提高C語言程序設計的學習效果的同時,增強計算思維的能力。

2 C語言程序設計可視化教學模式的設計和計算思維的培養

《C語言程序設計》的知識蘊含了計算思維,掌握好C語言程序設計知識有助于計算思維能力的提高,計算思維能力的提高又促進和加深C語言的學習,這是個相輔相成、互相促進的關系。《C語言程序設計》的計算思維教學方法應重視從以下幾個方面實施可視化教學模式。

2.1 以靜態圖形展示基本概念

C語言中的很多概念是比較抽象的,不易深入理解,這成了初學者利用C語言的基本語句進行解決問題和創造性思維的攔路虎。理解和使用好這些概念要求學生能夠在計算機能力的限制之下計算性地思考。例如對數組的理解與使用,如果僅僅教會學生“數組是連續排列的相同數據類型的元素集合”這樣的抽象知識,學生仍然難以靈活應用數組去解決問題。為了讓學生直觀的理解數組的特點,可以如下圖所示展示出如何使用數組[4]。這樣,就可以將“不可見”變為“可見”, 將“無關”變為“相關”。

如上圖所示,教師在講解數組之前,先把變量比喻成箱子,不同規格的箱子相當于不同的變量類型,把一維數組比喻成多個無縫隙排列在一條直線上的相同規格的箱子。這樣,學生就容易理解數組的能力和局限性:數組可以通過“箱子編號”隨機訪問數組元素,數組是通過內存的連續區域來存儲數據的,使用數組時不能越界,數組元素的類型必須相同。

2.2 問題的可視化展現

《C語言程序設計》課程講解的問題的邏輯結構、存儲結構往往比較抽象、枯燥。生動、形象的可視化形式引出用有趣的應用實例,例如約瑟夫斯問題和漢諾塔問題,可以極大地激發學生的學習興趣,活躍課堂氣氛,可以使學生迅速、清晰的抓住問題的本質,從而把精力集中于基于計算思維的問題求解上來。

3 C語言程序設計系統觀的教學觀點和計算思維的培養

系統設計的能力是計算思維的應有之意,目前的C語言課程只是強調語法和編程能力的培養,而不能很好地培養學生的系統設計的能力。另外對于計算機硬件系統的相關課程,如數字邏輯、計算機組成原理、匯編語言、計算機微機接口技術等,學習以后,學生對硬件系統知識有一定的了解,但知識都是孤立、片斷性的,更不用說具有系統層面的認知和設計能力,能站在系統的高度考慮和解決計算機系統的應用問題能力[5]。

計算機學科主要研究的是計算機系統各個不同抽象層的實現及其相互轉換的機制,計算機學科培養的應該主要是在計算機系統或在系統某些層次上從事相關工作的人才。獨立學院計算機專業課程的設置按照計算機系統抽象層各層的內容學習對應的課程,如圖1所示。可以清楚地看到,我們將計算機系統的各層的知識分解為一門門獨立專業課程讓學生學習,這些獨立的專業課程好比一節節單獨的火車車廂,而沒有課程幫助他們幫這些火車車廂連接起來,形成一輛完整的火車,而只有完整的火車才有它本來的價值。而完整的火車即是系統觀,即具備能夠站在系統的高度考慮和解決應用問題,具有系統層面的認知和軟件設計能力。

3.1 從系統層面構建知識體系

我們將C語言圍繞C語言程序的編譯、鏈接和執行,從系統層面幫助學生形成計算機學科完整的知識體系,并且注重后續專業課程之間的關系和銜接能促使學生真正做到融會貫通,領略到計算機系統能力的真正涵義[6]。同時學生在大三和大四可以有更多的時間學習各個專業方向的知識,加強專業技能的訓練。

教師以C語言的編譯、連接、執行為主線,結合計算機系統各大部件,具體介紹了各大部件的功能和結構,剖析了高級語言與底層計算機系統之間的關系,從而引起學生對高級語言程序編寫的思考,激發學生從計算機系統的的角度學習,使其能夠站在系統的高度考慮和解決應用問題。

3.2 基于系統觀的教學內容設計

老師在講解各個知識點的同時,要注意以實際生活中的問題和學生實際編程遇到的問題引入,吸引學生的注意。比如, 在講解程序的轉換及機器級表示時,主要講清C語言、編譯、操作系統和硬件結構的關系,并且注意用匯編級的指令系統去解釋C語言程序運行的結果,對出錯的結果能從指令集與硬件系統的角度去理解程序的結果[7]。能從系統的角度去思考與解決問題。

面向系統觀進行教學內容設計可以讓學生更多地了解學習C語言程序設計的意義。學生通過學習計算機系統與C語言的聯系,可以改善編程的過程[8],能夠更迅速地查明故障來源,從而減少程序中的錯誤,提高程序的性能,為進一步應用計算思維解決問題作好鋪墊。

4 結語

基于計算思維的C語言程序設計的教學,是一個需要長期探索的過程,教師應在教學的過程中不斷地總結,根據學生的真實感受與學習情況,加以思考,不斷地進行創新與嘗試,才能設計出科學合理且有吸引力的教學內容。

參考文獻

[1]Wing J putational thinking[J].Communications of the ACM,2006,49(3):33-35.

[2]何欽銘,陸漢權,馮博琴.計算機公共基礎教學的核心任務是計算思維能力的培養[J].中國大學教學,2010(9):5-9.

[3]李廉.計算思維:概念與挑戰[J].中國大學教學,2012(1):7-12.

[4] 杉浦賢 著 李克秋 譯. 程序語言的奧妙:算法解讀[M].北京:科學出版社,2012: 31.

[5] 王志英,周興社,袁春風等. 計算機專業學生系統能力培養和系統課程體系設置研究[J]. 計算機教育.2013(9):1-6.

[6] 李山山,劉衛東. 面向系統能力的計算機組成原理實驗實施[J]. 計算機教育.2014(15):107-110.

[7] 袁春風.大學計算機專業教育應重視“系統觀”培養[J].中國大學教學.2013(12):41-46.

計算機程序設計語言范文6

關鍵詞:C語言程序設計 教學方法 實踐

中圖分類號:TP312.1 文獻標識碼:A 文章編號:1007-9416(2013)06-0168-02

1 引言

C語言是國際上廣泛流行的計算機高級語言,自1972年問世以來,以其功能強大、使用靈活,既可用于編寫應用軟件,又能用于編寫系統軟件的特點得到迅速推廣[1]。以我院電氣工程系生產過程自動化技術專業為例,它是很重要的一門專業基礎課,一般安排52學時左右(包括上機實驗),通過該課程的學習,學生不僅能夠掌握程序設計的一些基本方法和技巧,也為后續課程的學習打下基礎。但現階段非計算機專業的C語言教學不容樂觀,為了激發學生的學習興趣,在近幾年的實際教學中不斷進行探索和實踐,得到一些有益的啟示。

2 存在問題

2.1 學習不主動,學習方法不科學

近幾年高校擴招緣故,高職學生基礎下降,自我控制能力和自我約束能力較差,對學習沒有興趣。特別是對于非計算機專業的學生認為這門課程不重要,學習時課前不預習,上課注意力不集中,只是機械的聽老師講課,課堂上也不做筆記,課后也不及時復習[2],這樣的惡性循環造成了學生對C語言越學越不會的局面。

2.2 教學方法單一,降低了學習興趣

在傳統的C語言整個教學過程中,教師始終處于主導地位,學生只是被動的接受知識,再加之教師只是一味地給學生灌輸C語言的語法知識,而忽略了編程,學生處于一種“學完忘完”的現象。教學內容的枯燥,教學方法的單一,學生難以發揮學習的主動性和積極性,降低了學習興趣。

3 改進方法

3.1 課堂多互動,調動學生學習興趣

傳統的教學主要以教師講授為主,學生只是被動的接受,我們學院一節課課時長達100分鐘,學生很難集中注意力,不能主動的去分析問題、解決問題。在講課的同時,教師可以通過提問---回答---講解的方式使學生注意力集中,還可以通過分組、進行小組討論,讓學生處于主體,提高學生興趣,活躍課堂氣氛,調動學生積極性。

3.2 教學方法和手段的改革

3.2.1 從問題入手,進行啟發式教學

傳統的教學過程是先介紹基本概念,再講解語法知識,然后圍繞語法知識進行舉例,最后上機編程運行。對于高職學生來說,邏輯思維比較差,對于純理論的東西缺乏興趣。在教學過程中要精心設計各種問題,把教學內容巧妙地隱含在每個任務中,讓學生帶著任務和問題去學習[3]。比如在講數組時先提出問題:如何編寫程序來計算全班同學的平均成績?這個時候學生進入思考過程,能力強一些的甚至試圖動手寫出程序。但由于之前只學過變量,程序中變量設置過多,比較麻煩,這個時候,教師可以引出一批相同類型的數據應該怎么解決-----數組的概念,最終成功解決問題。

3.2.2 作業布置循序漸進,由易到難

教師在布置作業時,要能夠滿足學生的成就心理,以鼓勵的方式進行作業設置。也就是說在作業布置時應該從簡單入手,必要時給出提示或相似的例子,由易到難提高作業難度,這樣可以增強學生自信心,進而解決更難的問題。例如在利用循環的嵌套打印圖形組合的作業中,作業題目由易到難可以做如下布置。

這個題目在先前題目的基礎上,進一步提高了難度,由有規律變換變成了無規律變換的圖形組合,學生通過本題目的練習有意識的會拆分圖形,把無規律變換成為有規律變換,對知識融會貫通,成功解決問題。

由此可見,從所學知識的簡單應用到復雜推廣,可在逐步增加難度的題目中逐漸提高學生的應用能力。

3.2.3 理論與實踐相結合,提高學生實踐能力

C語言程序設計這門課程是實踐性較強的課程,不僅要學習理論知識,更重要的是要學以致用,利用所學到的知識編寫程序解決實際問題。在上機過程中,學生可以通過編譯軟件掌握程序的編寫、調試、運行。在具體的操作中,發現問題、解決問題。本專業理論與實踐課比是2:1,一般兩次理論課后安排一次上機,這樣學生可以吧課堂上的理論知識通過編譯軟件進行練習,進一步驗證程序的可執行行。這樣不但能培養學生動手能力,還能培養學生獨立思考能力,理論與實踐相結合,提高學習的質量和效率。

4 結語

總之,在C語言程序設計的教學過程中,要努力提高學生對該課程的學習興趣和學習熱情,在教學方法和手段上不斷進行改革,加強實踐動手能力。C語言的教學改革是一項長期的過程,需要我們不斷改進、不斷完善,只有堅持不懈的探索實踐,才能達到更好的效果。

參考文獻

[1]譚浩強.C語言程序設計.北京:清華大學出版社,2010.2-6.

亚洲精品一二三区-久久