考試介紹
軟考程式設計師考試屬於計算機軟體水平考試(簡稱軟考)中的一個初級計算機職稱考試。對於軟考程式設計師考試並無學歷及資歷條件限制,更無論年齡、專業與資歷。一年可報考軟考程式設計師考試兩次,但一次考試只能報考一種資格,因此報考了程式設計師考試則無法再報考軟考其他級別或科目的考試。同時軟考程式設計師考試採用筆試形式,考試實行全國統一大綱、統一試題、統一時間、統一標準、統一證書的考試方式。
報名流程
根據《計算機技術與軟體專業技術資格(水平)考試實施辦法》第八條相關規定:符合《暫行規定》(即《計算機技術與軟體專業技術資格(水平)考試暫行規定》)第八條規定的人員,由本人提出申請,按規定攜帶身份證明到當地考試管理機構報名,領取准考證。憑準考證、身份證明在指定的時間、地點參加考試。
各地的報名辦法由考生報考所在地的當地考試機構決定。考生相關報考費用標準由當地物價部門核准。
考生報名方式主要分為:網上報名 與考生本人到指定地點報名兩種。
註:報名時依據的身份證明包括:居民身份證、軍人的證件、護照、戶口本等。
考試目標
通過本考試的合格人員能夠達到軟體開發、項目管理和軟體工程的要求,按照程式設計規格說明書編制並調試程式,寫出程式的相應文檔,產生符合標準規範的、實現設計要求的、能正確可靠運行的程式;具有助理工程師(或技術員)的實際工作能力和業務水平。
考前答疑
1、軟考採取什麼考試形式?考試時間如何規定?
除信息處理技術員和多媒體套用製作技術員採取筆試與上機操作考試相結合的形式外,其他各種考試都採用筆試形式。考試實行全國統一大綱、試題、時間、標準、證書的考試辦法。
高級資格考試設綜合知識、案例分析和論文3個科目;中級、初級資格考試設基礎知識和套用技術2個科目。筆試安排在一天之內。上機考試將分期分批進行。
知識科目採用單項選擇題,考試150分鐘,考生需要用2B鉛筆塗填答題卡;套用技術科目採用問答題,考試時間150分鐘;上機考試時間為150分鐘; 案例分析科目採用問答題,考試時間為90分鐘;論文科目考試時間為120分鐘。各個科目的滿分均為75分。
2、軟考每年考幾次?各次考試是什麼日期?
軟考原則上每年組織兩次,在每年第二季度和第四季度舉行。上半年考試與下半年考試的種類不盡相同,所以,大多數類別的考試每年舉行一次。
3、參加軟考是否需要學歷與資歷條件?是否必須通過初級資格考試,才能報考中、高級資格考試?
由於信息技術發展迅速,計算機軟體是年輕人的事業,為了不拘一格選拔人才,軟考不設學歷與資歷條件,也不論年齡和專業,考生可根據自己的技術水平選擇合適的級別合適的資格,但一次考試只能報考一種資格。
4、軟考的試題是否很難?合格率如何?
軟考屬於專業水平的國家品牌考試,試題注重崗位知識和技能(不是背書),綜合性和靈活性強,創意多,但只要考生掌握了相應崗位所需的基本知識和技能,就會認為考試並不難。對於死記硬背書本的人來說,可能就比較難。由於考試向社會開放,不設學歷資歷條件,知識和能力各個科目都及格才能合格,因此合格率並不高。各級別總平均合格率大約是25%,初級資格的合格率約40%,中級資格的合格率20-30%,高級資格的合格率約20%.社會開放 考試的報考者中水平差異很大,不象學校考試那樣大家水平比較接近,所以,確實掌握了基本知識又有工作經驗的人,沒有必要擔心合格率問題。
軟考並不是競賽,只要成績超過合格標準就能合格,沒有預先規定合格人數界限。
科目內容
基礎知識
1. 計算機科學基礎
1.1 數制及其轉換
二進制、十進制和十六進制等常用數制及其相互轉換
1.2 數據的表示
數的表示(原碼、反碼、補碼錶示,整數和實數的機內表示方法,精度和溢出)
非數值表示(字元和漢字的機內表示、聲音和圖像的機內表示)
校驗方法和校驗碼(奇偶校驗碼、海明校驗碼)
1.3 算術運算和邏輯運算
計算機中二進制數的運算方法
邏輯代數的基本運算和邏輯表達式的化簡
1.4 數學套用
常用數值計算(矩陣、方程的近似求解、插值)
排列組合、套用統計(數據的統計分析)
1.5 常用數據結構
數組(表態數組、動態數組)、線性表、鍊表(單向鍊表、雙向鍊表、循環鍊表)、佇列、棧
、樹(二叉樹、查找樹)、圖的定義、存儲和操作
1.6 常用算法
常用的排序算法、查找算法、數值計算、字元串處理、數據壓縮算法、遞歸算法、圖的相關算
法
算法與數據結構的關係,算法效率,算法設計,算法描述(流程圖、偽代碼、決策表)
2.計算機系統基礎知識
2.1 硬體基礎知識
2.1.1 計算機系統的組成,硬體系統、軟體系統及層次結構
2.1.2計算機類型和特點
微機、工作站、伺服器、大型計算機、巨型計算機
2.1.3中央處理器CPU
運算器和控制器的組成,常用的暫存器、指令系統、定址方式、指令執行控制、處理機性能
2.1.4 主存和輔存
存儲器系統
存儲介質(半導體、硬碟、光碟、快閃記憶體、軟碟、磁帶等)
主存儲器的組成、性能及基本原理
Cache的概念、虛擬存儲的概念
輔存設備的類型、特性、性能和容量計算
2.1.5 I/O接口、I/O設備和通信設備
I/O接口(匯流排、DMA、通道、SCSI、並行口、RS232C、USB、IEEE1394)
I/O設備的類型和特性(鍵盤、滑鼠、顯示器、印表機、掃瞄器、攝像頭,以及各種輔存設備
I/O設備控制方式(中斷控制、DMA)
通信設備的類型和特性(Modem、集線器、交換機、中繼器、路由器、網橋、網關)及其連線
方法和連線介質(串列連線、並行連線,傳輸介質的類型和特性)
2.2軟體基礎知識
2.2.1作業系統基礎知識
作業系統的類型和功能
作業系統的核心(中斷控制)和進程概念
處理機管理、存儲管理、設備管理、檔案管理、作業管理
漢字處理
圖形用戶界面及其操作方法
2.3 網路基礎知識
網路的功能、分類、組成和拓撲結構
網路體系結構與協定(OSI/RM,TCP/IP)
常用網路設備與網路通信設備,網路作業系統基礎知識和使用
Client/Server結構、Browser/Server結構
LAN基礎知識
Internet基礎知識
2.4 資料庫基礎知識
資料庫管理系統的主要功能和特徵
資料庫模型(概念模式、外模式、內模式)
數據模型,ER圖
數據操作(關係運算)
資料庫語言(SQL)
資料庫的主要控制功能
2.5 多媒體基礎知識
多媒體基礎概念,常用多媒體設備性能特徵,常用多媒體檔案格式類型
簡單圖形的繪製,圖像檔案的基本處理方法
音頻和視頻信息的套用
簡單多媒體套用製作方法
2.6 系統性能指標
回響時間、吞吐量、周轉時間等概念
可靠性、可維護性、可擴充性、可移植性、可用性、可重用性、安全性等概念
2.7 計算機套用基礎知識和常用辦公軟體的操作方法
信息管理、數據處理、輔助設計、自動控制、科學計算、人工智慧等概念
文字處理基礎知識和常用操作方法
電子表格處理基礎知識和常用操作方法
演示文稿製作方法
電子郵件處理操作方法
網頁製作方法
3.軟體開發和運行維護基礎知識
3.1軟體工程和項目管理基礎知識
軟體工程基本概念
軟體開發各階段的目標和任務
軟體過程基本知識
軟體工程項目管理基本知識
面向對象開發方法基礎知識
軟體開發工具與環境基礎知識(CASE)
軟體質量管理基礎知識
3.2軟體需求分析、需求定義及軟體基礎知識
結構化分析概念(數據流圖(DFD)、實體關係圖(ER))
面向對象設計、結構化設計基礎知識
模擬設計、代碼設計、人機界面設計要點
3.3程式設計基礎知識
結構設計程式設計,程式流程圖,NS圖,PAD圖
程式設計風格
面向對象設計基礎知識、可視化程式設計基礎知識
3.4程式測試基礎知識
黑盒測試、白盒測試、灰盒測試基礎知識
測試工作流程
3.5軟體開發文檔基礎知識
3.6軟體運行和維護基礎知識
軟體運行基礎知識
軟體維護基礎知識
4. 安全性基礎知識
安全性基本概念
計算機病毒的防治,計算機犯罪的防範
訪問控制
加密與解密基礎知識
5. 標準化基礎知識
標準化基本概念
國際標準、國家標準、行業標準、企業標準基礎知識
代碼標準、檔案格式標準、安全標準、軟體開發規範和文檔標準基礎知識
標準化機構
6. 信息化基本知識
信息化基本概念
全球信息化趨勢,國家信息化戰略,企業信息化戰略和策略常識
有關的法律、法規要點
過程教育、電子商務、電子政務等常識
企業信息資源管理常識
7.計算機專業英語
掌握計算機技術的基本辭彙
能正確閱讀和理解本領域的簡單英文資料
程式設計
1.內部設計
1.1理解外部設計
1.2軟體功能劃分和結構確定
l數據流圖(DFD)、結構圖。
1.3 物理數據設計
l 確定數據組織方式、存儲介質、設計記錄格式,處理方式。
1.4 詳細輸入輸出設計
l界面設計、報表設計等。
1.5 內部設計文檔
l程式接口、程式功能、人機界面、輸入輸出、測試計畫。
1.6 內部設計評審
2.程式設計
2.1 模組劃分(原則、方法、標準)
2.2 編寫程式設計文檔
l 模組規格說明書(程式處理邏輯、輸入輸出數據格式)。
l 測試要求說明書(測試類型和目標、測試用例、測試方法)。
2.3.程式設計評審
3.程式實現
3.1編程
l 編程方法和規範。
l程式設計語言的選擇和使用。
l 人工走查。
l 程式文檔化。
3.2程式測試
l測試環境和測試工具的選擇和使用。
l 測試數據的設計。
l測試報告的編寫。
4.程式設計語言(C語言為必選,再在VB、C++、Java語言中任選一種)
4.1C程式設計語言(C99標準)
4.2C++程式設計語言(ANSI C++標準)
4.3 Java程式設計語言(Java2)
考試方式
(1)計算機硬軟體基礎知識,考試時間為150分鐘,筆試,選擇題;
(2)程式設計,考試時間為150分鐘,筆試,問答題。
其他信息
(1)計算機硬軟體基礎知識
● 在下圖所示的工作表中,若學生的最終成績等於平時成績的30%加上考試成績的70%,那么應在E2單元格中填寫 (3) ,並 (4) 拖動填充柄至E7單元格,則可自動算出這些學生的最終成績。
(3)A.=C2*30%,D2*70%
B.= C2*30%:D2*70%
C.=SUM(C2*30%,D2*70%)
D.=SUM(C2*70%:D2*30%)
(4)A.向水平方向
B.向垂直方向
C.按住Shift鍵向水平方向
D.按住Shift鍵向垂直方向
(2)程式設計
試題一(共15分)
閱讀以下說明和流程圖,填補流程圖中的空缺(1)~(5),將解答填入答題紙的對應欄內。
【說明】
求連續函式f(x)的根(方程f(x)=0的解)的最簡單方法是二分法。為此,首先需要在若干點上檢查函式值的符號,如果發現f(a)與f(b)符號相反(a<b),則在區間(a, b)中必然存在f(x)的根。因為當x從a變到b時,連續函式的值將從正變到負(或從負變到正),必然要經過0。區間(a, b)就是根的初始範圍。
取該區間的中點m,如果f(m)=0,則根就是m。如果f(a)與f(m)符號相反,則根一定在區間(a, m)中;如果f(m)與f(b)符號相反,則根一定在區間(m, b)中。因此,根的範圍縮小了一半。
依此類推,將區間一半一半地分下去,當區間的長度很小(達到根的精度要求,例如0.001)時,或者當區間中點處的函式值幾乎接近於0(即絕對值小於預先規定的微小量,例如0.001)時,近似計算就可以結束了。
以下流程圖描述了用二分法近似計算區間(a, b)中f(x)的根的過程。
【流程圖】
(3)2009年下半年程式設計師考試真題。見參考資料。