第一篇:C++可視化程序設計實踐要求
C/C++可視化程序設計實踐安排
一、課程設計任務
1.學生成績管理系統
2.圖書管理系統
3.通訊錄管理系統
4.自選
對于管理系統要求程序必備如下功能:(1)所有記錄保存在一個數據文件中;(2)具備記錄添加功能;(3)查詢功能(如按學號查詢成績);(4)計算統計功能(如統計某門課程的平均程序);(5)排序功能(如按成績排序);(6)修改功能。
二、要求
1.分組設計,1-3人一組(自由組合),明確分工。(1)小組負責人一般進行總體設計(包
括總體設計流程圖、模塊函數原型接口設計);(2)模塊的程序設計由組長、成員分別完成,并獨立調試自己的程序;(3)組長至少完成2個功能模塊的設計,成員至少完成3個功能模塊的設計;(4)模塊組裝調試共同完成;
2.在網上、圖書館等查找相關資料,搜集、整理相關模塊的程序源代碼;
3.一個小組完成完成一份課程設計報告。內容包括:
(1)封面扉頁(見模板文件)
(2)設計任務書
(3)成績評定表(見模版文件)
(4)目錄
(5)總體設計方案(包括流程圖)
(6)使用說明及運行實例(包括界面)
(7)成員設計內容簡介
(8)項目源程序代碼(注意注釋的使用)
(9)課程設計心得
4.專用教室:新教學樓A-112(機械1101-1104),A114(機械1105-1109)
A-111(機械1110-1114),A-115(機械115-117),A-113(工程實驗班)。專用教室作為學生看書、編程、交流、寫報告的地方。
5.報告格式:一級標題:三號黑體,二、三級標題小四黑體,正文小四宋體,行距23,程
序代碼5號宋體,統一用膠裝訂(封面由裝訂點提供)
6.進程安排
1.課程設計時間:第18周~19周2.輔導答疑:機電工程院A-620(夏建芳),D-315(樊廣軍)
3.上機安排:上機見進度安排表。
4.提交報告與答辯:第19周星期四~星期五
地點機電工程院D-317(夏建芳),D-315(樊廣軍)
三、考核
(1.)據課程設計報告的內容、工作量、難度、合理性;
(2)程序演示情況
(3)匯報、回答問題情況
綜合上述三方面進行考核,評定成績。
2012年6月1日
C++可視化程序設計教研組
第二篇:可視化程序設計試卷A
★編號:(學信息2009-2010-2)考字第()號第 1 頁 20 09 /20 10 學年第 2 學期考試試卷(A)卷
課程名稱:可視化程序設計適用專業/年級:
選課課號:(2009-2010-2)-1405070-600035-2抽(命)題人:
本卷共1頁,考試方式:機試,考試時間: 180 分鐘
上機考試題
1. 題目
利用BCB的常用組件及串口通訊組件MSComm實現一個簡單的文件傳輸程序,程序的功能應包括以下幾個部分:(60分)
1)程序在構造函數中進行必要的初始化操作,包括串口初始化、顯示區清空等;(5分)
2)程序在析構函數中進行串口關閉操作;(5分)
3)程序能選擇文件進行發送,發送功能用菜單實現;(15分)
4)接收到發送的文件后,應能在程序中進行顯示,并能選擇文件名將接收到的文本進行保
存,保存功能用菜單實現;(15分)
5)菜單中應包括程序關閉的功能;(5分)
6)可以編輯并清空顯示區和接收區的文本,清空功能用按鈕實現;(5分)
7)在程序的主界面上顯示姓名、學號和專業班級,并可方便地顯示和隱藏該部分信息。(10
分)
(提示:顯示區、接收區及文件的操作可用Memo組件實現,串口的接收端和發送端短接以實現程序自收自發,選擇文件名進行打開或保存可用Dialog組件實現)
2. 基本要求(40分)
1)軟件界面(20分)
2)程序代碼中必要的注釋(10分)
3)程序是否能正常運行(10分)界面布局提示:
3. 結果提交
最終結果全部保存到文件夾下,文件夾命名規則:自應本08-01-2008440001-姓名班級學號
第三篇:C++程序設計總結
第一章面向對象編程原理
?近五十年間,軟件技術經歷了多個階段的發展演變 ? 目前為止最流行的技術還是面向過程編程(POP)
? 面向過程編程采用了自頂向下的設計方案,問題被看做多個執行任務的序列。為完成這些任務,須實現一些函數。
? 面向過程有兩大不足,即:(1)數據可在程序內自由遷移,程序內任何函數都會引起數據的更改,增加了數據的脆弱性。(2)它并不能很好地建模現實世界。
? 為了克服面向過程編程中的不足,人們發明了面向對象編程(OOP)。它采用自底向上的編程方案,在程序開發中,把數據視為重要元素,不允許數據在系統內自由遷移。它還將數據和函數緊密綁定于成為類的數據結構中,函數可操作類中的數據。此特性稱為數據封裝。
? 在面向對象編程中,問題被視為一系列稱為對象的實體的集合。對象是類的實例; ? 將數據與程序的直接訪問隔絕,這稱為數據隱藏。
? 數據抽象指的是,將各種必要特性合并,而不引入背景細節。? 繼承是這樣的一個過程,即某類的對象得到另一類對象的屬性。
? 多態指的是,一個名稱,多種形態。在程序中,我們可以借此定義多個同名函數。此特性亦可重載運算符,這樣一來,同一個運算符在不同的實例下,會有不同的行為。? 動態綁定指的是,給定過程的代碼,直到運行期被調用時才確定。? 消息傳遞涉及對象名,函數(消息)名以及發送的信息。
? 與傳統的編程技術相比,面向對象技術具有諸多優勢——最顯著的當屬重用技術。? 在實時系統等幾乎所有的計算機領域,面向對象編程的應用程序都已受到重視。? 不少語言都支持面向對象編程,流行的語言包括C++、Smalltalk和Java。
第二章C++入門
? C++是C語言的超級
? C++在C語言的基礎上,添加了一些面向對象的特性,諸如對象、繼承、函數重載和運算符重載。這些特性加強了程序的清晰性,可擴展性,使程序容易維護。
? C++可用于開發各種系統,諸如編輯器、編譯器、數據庫、通信系統以及其他更多復雜的實際系統。
? C++支持交互式輸入輸出,并引入了新的注釋符號//,可用于注釋單句。它也支持C語言的注釋風格。
? 和C程序一樣,所有C++程序的執行入口都是main()函數,并以return()語句作為結束。頭文件iostream應包含于所有使用輸入輸出操作的程序開頭。? 所有標準C++程序都要包含using namespace std指令
? 典型的C++程序包括四個基本部分:也就是頭文件包含部分、類聲明部分、成員函數部分和主程序部分
? 和C程序一樣,C++程序可用于任何文本編輯器創建
? 大多數編譯器提供了集成開發運行環境。流行的編譯器系統有UNIX AT&T C++、Turbo C++和微軟公司的Visual C++
第三章符號、表達式和控制結構
? C++有不同的符號,包括關鍵字、標識符、常量、字符串和操作符 ? 標識符指的是變量名、函數名、數組名、類名等 ? C++中增加了void的一個用途,可用于聲明通用指針
? C++中枚舉數據類型略有不同,枚舉類型名稱為新的類型名。這樣我們就可以聲明枚舉類型的變量
? 在C++中,字符數組的大小應比字符串的實際長度大1 ? C++增加了指針常量和常量指針的概念,對于前者我們不能修改賦予它的地址值,對于后者,我們不能修改它指向的內容。
? 在C++的內存管理和多態實現中,指針被廣泛地使用。
? C++中提供了const修飾符,用于聲明常量,常量也是變量,只是其值不可變更。const修飾符默認修飾整型。
? C++的變量類型檢查非常嚴格,它不允許不同類型變量之間的賦值。類型轉換是打破此規的唯一辦法。
? C++允許我們在程序中隨處聲明變量,而且可以利用聲明處的表達式,在運行期完成初始化。
? 引用變量給之前定義的變量提供了一個別名。它們都指向內存中的同一個數據對象。所以,改變其中一個的值,另一邊量的值也會隨之改變。
? 引用變量必須在聲明時初始化,這建立了它和要引用的變量之間的對應關系。? 作用于解析操作符(::)的主要用于類,以識別成員函數所屬的類
? 除了malloc()、calloc()、free()函數外,C++提供了兩個一元操作符,即new和delete,以更好和更方便地分配和釋放內存
? C++也提供了操縱器,來格式化輸出數據。最常用的操縱器為endl和setw ? C++支持七種表達式類型。表達式中數據類型混用時,C++使用特定規則,自動地進行類型轉換。
? 使用類型轉換操作符,C++也可顯示地進行變量和表達式的類型轉換
? 和C語言一樣,C++也支持三種基本的控制結構,也就是順序結構,分支結構和循環結構,并使用各種控制語句實現它們,比如if、if…else、switch、do…while、while以及for。
第四章C++中的函數
? 在程序的不同處,調用函數可減少程序的大小。
? 在C++中,main()函數向操作系統返回一個整型值。因為函數的返回值類型默認是整型,所以main()函數中的關鍵字int是可選的。而如果沒有返回語句,大部分C++編譯器會提示一個警告。
? 函數原型向編譯器提供了函數的細節,比如參數的數目和類型,以及返回值的類型。? C++的引用變量使我們可以傳引用參數給函數。函數也可以返回引用變量。
? 當函數聲明為內聯時,編譯器用相應的函數代碼替換了函數調用。一般情況下,小函數才使用內聯。
? 編譯器可能會忽略函數的內聯聲明,如果函數聲明太長或過于復雜,編譯器將按常規函數編譯它。
? 當函數聲明時,C++允許我們把默認值賦給函數參數。這種情況下,我們可以無需指明所有參數,便可調用函數。默認參數總是由右到左添加。? C++中,函數的參數可聲明為常量,表示函數不可更改此變量。
? C++允許函數重載,也就是說,我們可以定義多個同名函數。通過檢查參數數目和類型編譯器會準確地匹配函數調用和函數代碼。
? C++支持兩種新的函數類型,亦即友元函數和虛函數。
? C++標準庫支持很多數學庫函數,使用它們可以完成許多數學計算。
第五章 類和對象
? 類是結構體數據類型的擴展,一個類有多個成員變量和成員函數。? 默認情況下,類的成員是私有的,而結構體的成員是公用的。
? 只有成員函數可以訪問私有數據成員和私有函數。但是類外可以訪問公用成員。? 在C++中,類變量稱為對象。利用對象并使用點操作符,我們可以訪問類的公用成員。? 我們可以在類內或類外定義成員函數。成員函數和常規函數的區別在于,成員函數的頭
部有一個隸屬標識符,以表明所屬類。
? 對象聲明時,內存空間才會分配。每一對象的成員變量空間單獨分配,而成員函數的空間則統一分配。
? 類的一個成員變量可聲明為靜態成員,一般用于維護整個類的通用值。? 靜態成員變量必須定義于類外。
? 靜態成員函數可訪問聲明在同類的靜態成員,調用靜態成員函數時需要用到類名。? C++允許我們使用對象數組。? 對象可用作函數自變量。
? 友元函數不在友元聲明類的作用域類,它可以訪問累的所有私有數據。? 函數可以返回對象。
? 如果成員函數不改變類內的任何數據,我們可以將其聲明為常量成員函數,只要在函數原型中加上關鍵詞const(聲明和定義都要加)。
? 我們也可以在函數內定義和使用類。這種類稱為局部類。
第六章構造函數和析構函數
? C++提供了一種稱為構造函數的特殊成員函數,它能幫助對象在創建時完成初始化。這一過程被稱為對象的自動初始化。? 構造函數名和類名一致。
? 構造函數通常用來初始化變量,以及分配內存。? 和常規函數一樣,構造函數也可以被重載。
? 當對象同時被創建和初始化時,復制構造函數被調用。? 我們可以聲明一個常量對象,其數據值不能改變。
? C++還提供另一種成員函數,稱為析構函數。當對象不再需要時,會調用這種函數來銷毀對象。
第七章運算符重載和類型轉換
? 運算符重載是C++的重要特性之一。又被稱為編譯時多態性。
? 使用重載特性,我們可以對兩個用戶自定義數據類型,比如說對象,執行相加的操作,使用的語法就和基本數據類型一樣。
? 我們可以重載幾乎所有C++的運算符,下面幾個是例外:
? 類成員訪問符(.,.*)。? 作用域解析符(::)。
? 大小運算符(sizeof)。? 條件運算符(?:)。
? 運算符重載是通過一種稱為運算符函數的特殊函數完成的,該函數定義了運算符的特定任務。
? 運算符重載時有一些限制。運算符函數必須是非靜態的成員函數或者友元函數。重載的運算符必須有至少一個用戶自定義類型的操作數。
? 編譯器不支持用戶自定義數據類型的自動類型轉換,我們可以使用自定義的轉換運算符函數,以實現自定義數據類型的自動類型轉換。? 轉換運算符函數應符合下列條件:
? 必須是類成員。? 必須不指定返回值。? 必須沒有參數。
第八章繼承:類的擴展
? 從舊類派生一個新類的機制被稱為繼承。繼承提供了可重用性的概念。通過繼承,C++的類可以被重用。
? 派生類繼承了基類的一部分或所有特性。? 只有一個基類的派生類被稱為單繼承。? 可從多個類繼承,這被稱為多繼承。? 可從另一派生類繼承類,這被稱為多級繼承。
? 當某類的屬性被多于一個類繼承時,這被稱為層次繼承。? 不管是在公用模式還是私有模式,類的私有成員都不可被繼承。
? 以公用模式繼承的保護成員仍為派生類的保護成員,而以私有模式繼承的保護成員,則變成派生類的私有成員。
? 友元函數和友元類的成員函數可直接訪問私有和保護數據。
? 派生類的成員函數只能直接訪問保護和公用數據。不過他們可通過基類的成員函數訪問私有數據。
? 多路繼承可能引起祖父基類的繼承成員的重復。通過將共同的基類設為虛基類,我們可以避免祖父基類成員的重復。
? 在多繼承中,基類的創建次序與他們在派生類中的聲明次序一致。? 類可包含其他類的對象。這被稱為包含關系或嵌套。
第四篇:可視化程序設計
1Visual C++、C++概述不斷問世,是一個可視化軟件開發工具。
2001年推出Visual C++.NET(即1993Visual C++ 7.0年Microsoft)公司推出,它只適用于Visual C++ 1.0Windows 2000 / XP,新版本/ NT 4.0 了解它的集成開發環境。Visual C++開發環境。已成為專業程序員進行軟件開發的首選工具。
Visual C++集成開發環境中的程序開發工具很多,要真正掌握它們要使用 Visual C++編程,首先要必須結合具體的編程內容。本章只簡單介紹 Visual C++集成開發環境的一般特點、界面風格和簡單工具的使用,使我們對Visual C++有一個感性的認識。2源程序用、Visual C++C++的特點語言編寫,支持面向對象設計方法,使用功能強大的微軟基礎類庫
MFC(Microsoft Foundation Class)。
開發出來的軟件穩定性好、可移植性強。可以編制各種各樣Windows應用程序,包括對話框程序、文檔 / 視圖程序和組合界面程序。作為Visual Studio可視化組件家族中最重要的一個成員,與其它可視化開發工具如Visual J++發,乃至一個系統軟件的設計。、Visual Basic及Visual C#緊密地集成在一起,適用于特殊、復雜和綜合軟件項目的開
聯機幫助系統MSDN(Microsoft Developer Network Library)功能強大。它既能與集成開發環境有機地結合在一起,使得用戶在編程時隨機查詢需要的內容信息,又能脫離集成開發環境而獨立地運行。3Visual C++ IDE、C++的組成和Help等9個主菜單組成,每個主菜單又由多個菜單項和子菜單組成。菜單項提供的功能中的菜單欄由File、Edit、View、Insert、Project、Build(Debug)、Tools、Window幾乎可以完成所有的Developer Studio功能。
除了主菜單,在Visual C++ IDE中窗口的不同地方單擊鼠標右鍵還可彈出相應的快捷菜單。1.ClassView類視圖2.ResourceView文件到項目中,在工作區窗口中將顯示被添加的文件與其它文件之間的關系。若要刪除項可通過File菜單和Project菜單中的有關命令添加資源視圖3.FileViewC++文件視圖源文件、資源文件和其它
目中的某個文件,選中要刪除的文件,然后按Delete鍵即可。菜單欄的組成4Window、Visual C++ IDE中的菜單欄由File、Edit、View、Insert、Project、Build(Debug)、Tools供的功能幾乎可以完成所有的和Help等9個主菜單組成,每個主菜單又由多個菜單項和子菜單組成。菜單項提、Developer Studio功能。
5來越受到重視并得到廣泛的應用。、C++語言是由貝爾實驗室的BjarneStroustrup 在1980年創建的。自90年代后,C++越6C++、C++和數據類型、結構化的程序設計方法、高效的機器代碼、良好的可移植性。是由的主要特點C擴充而來,因此,除了與
C兼容,C++還繼承了C的以下特點:豐富的運算符 支持面向對象程序設計的方法。
C++C++的錯誤檢查機制強,提供了專門的機制檢查類和異常處理功能。的Borland C++有很多成熟的編譯器:和IBM的VisualAge C++Visual C++、Inprise。(被Borland兼并)的C++ Builder、Borland7(、1C++)C++程序與程序與C程序的比較:C程序的結構完全相同。
(2)C源程序文件的擴展名為C,C++源程序文件的擴展名為CPP。
(3)C注釋使用符號“/*”和“*/”,表示符號“/*”和“*/”之間的內容都是注釋;C++除了支持這種注釋,還提供了一個雙斜線“//”注釋符,表示“//”之后的本行內容是注釋,注釋在行尾自動結束。
(4)C程序所包含的標準輸入、輸出的頭文件是stdio.h,輸入、輸出通常通過調用函數來完成;而C++程序可以包含標準輸入、輸出流的頭文件iostream.h,輸入、輸出可以通過使用標準輸入、輸出流對象來完成。8(、1)當函數定義放在函數調用之后時,C++對C的一般擴充
C程序函數原形(function prototype)有時可省略,而C++函數原形(聲明)必不可少。一個不帶參數的C函數原形必須使用void,而C++可以使用空參數列表。C++還要求函數所有參數在函數原形的圓括號中聲明。
(2)在C語言中,函數和語句塊(花括號“{}”之間的代碼)的所有變量聲明語句必須放在所有執行語句之前。而C++中變量聲明語句不要求放在函數和語句塊的開始位置,可以把變量聲明放在首次使用變量的附近位置,這樣可提高程序的可讀性。
(3)C++用new和delete運算符取代C的內存分配和釋放函數malloc()和free()。(4)標準C++提供了字符串類,可以替代C函數庫中的字符數組處理函數。
(5)進行輸入、輸出操作時,C++用控制臺輸入、輸出流對象(在頭文件iostream.h中進行了類的聲明)替代C的stdio函數庫,利用“>>”流提取運算符或“<<”流插入運算符,分別將數據對象從輸入流提取出來或插入到輸出流,從而完成數據的輸入和輸出。
9(、利用使用1)啟動Visual C++C++面向流的輸入、輸出方式提高了程序的可讀性,減少了錯誤的發生。Visual C++編制和運行,執行“FileC++|New…”程序
菜單命令,在New對話框的Projects頁面左側項目類型列表中選擇Win32 Console Application項,在對話框右側的Location和Project Name框中分別輸入路徑和項目名稱,單擊OK按鈕。(2)進入Win32 Console Application step-1 of 1對話框,選擇An Empty Project項,單擊Finish按鈕。最后在New Project Information對話框單擊OK按鈕完成項目的建立。
(3)建立和編輯C++源程序文件。執行“Project|Add to Project|New…”菜單命令,在New對話框的File頁面選擇C++ Source File項,在File框中填入C++源文件名,確認選擇Add to project4,單擊OK按鈕將打開文本編輯器。輸入并編輯C++源程序代碼。
程序有語法錯誤,則在屏幕下方的輸出窗口中顯示錯誤信息。)建立可執行程序。執行“Build|Build…”菜單命令(快捷鍵F7)即可建立可執行程序,若(5)執行“Build|Execute…”菜單命令即可在偽DOS狀態下運行程序,也可進入DOS狀態后運行已建立的程序。
注意不能在Windows中直接運行一個控制臺程序。
菜單命令直接創建一個也可采用另一種簡單的方法編寫C++源文件,在執行C++Build程序,即執行命令時再建立項目工作區。“File|New|Files|C++
Source File”10和表達式等。、C++程序基本要素: C++程序基本要素主要包括標識符、關鍵字、常量、變量、運算符11標識符是程序員或系統定義的符號,用以標識變量、函數、對象等。、標識符
標識符由字母、數字和下劃線組成,它必須以字母或下劃線開始。
為標識符取名時,盡量使用能夠反映其用途的單詞或縮寫,這樣可提高程序的可讀性。12關鍵字是、關鍵字C++
編譯器預定義的、具有固定含義的保留字,在程序中它們不能被作為一般的標識符使用。
C++13增加了C不具有的關鍵字,并且不同C++編譯器含有不同的關鍵字。在程序中使用的數據有常量和變量兩種形式;、常量和變量
常量是不能被程序改變的固定值; 變量是可以被程序改變的數據。
常量和變量的主要區別在于:常量不占內存空間,不能為常量賦值;而變量需要占內存空間,可以給變量賦不同的值。
不管常量還是變量,程序中使用的每一個數據都屬于一種特定的數據類型。在使用變量之前,必須先利用標識符聲明變量 14個表達式由常量、變量、函數調用和運算符組成,每個表達式都將產生一個值,并且具有、運算符和表達式
某種類型(稱為該表達式的類型)。
15構造類型包括數組、結構和枚舉等類型。、C++數據類型:C++中的數據類型分為:基本數據類型、指針類型和構造類型三大類。
16型、整數型、實型(單精度和雙精度)和無值型。、基本數據類型:基本數據類型是C++預定義的數據類型,C++的基本數據類型包括字符17下標進行越界檢查,程序運行時系統也不會提出越界警告。因此在對數組元素進行操作時、數組:在編譯C++源程序時,為了保證程序編譯和運行的效率,C++編譯系統不對數組應格外注意,以免破壞其它存儲單元的數據,否則可能造成不可預料的后果。
18地址的變量。每一個指針變量都有相應的數據類型,該類型用以說明指針所指內存單元中、指針:任何變量都有一個內存地址,這種地址稱為指針,而指針變量是一種存放內存存放的數據的類型。指針與數組:
指針與數組關系密切,編程時可以用指針代替下標引用數組元素,指針使數組的使用更為靈活、有效;
當聲明一個數組后,編譯程序會按照數組的類型和長度為它分配內存空間,數組名表示數組在內存中的首地址;
當用一個指針變量存儲數組首地址時,該指針就指向這個數組,就可以通過指針運算間接訪問數組的元素。20C++、字符串:
字符串末尾必須加上一個字符串結束符語言沒有提供字符串類型,字符串變量是作為一維字符數組來處理。“ 主站蜘蛛池模板: 国产午精品午夜福利757视频播放| 人人妻人人狠人人爽| 亚洲av综合a色av中文| 国产成人精品午夜二三区波多野| 艳妇臀荡乳欲伦69调教视频| 国产精品扒开腿做爽爽爽视频| 鲁大师影院在线观看| 色欲aⅴ亚洲情无码av| 免费国产污网站在线观看不要卡| 精品一区二区三区在线观看视频| 亚洲精品无码不卡| 无码免费的毛片基地| 免费人成网站在线视频| 成年片免费观看网站| 级r片内射在线视频播放| 国产精品香港三级国产av| 国产真实伦在线观看| av免费网址在线观看| 少妇精品久久久一区二区三区| 久久精品成人免费国产| 无码日韩人妻精品久久| 精品国产一区二区三区av色诱| 无遮挡18禁啪啪免费观看| 业余 自由 性别 成熟偷窥| 美女裸奶100%无遮挡免费网站| 亚洲av午夜成人片精品电影| 青青草国产精品一区二区| 亚洲色欲久久久综合网东京热| 亚洲深深色噜噜狠狠爱网站| 少妇仑乱a毛片| 精品一卡2卡三卡4卡乱码精品视频| 国产成人尤物在线视频| 亚洲一区二区三区日本久久九| 国产蝌蚪视频在线观看| 99热精国产这里只有精品| 国产精品免费大片| 精品国产一二三产品价格| 国产偷国产偷精品高清尤物| 免费无码不卡中文字幕在线| 久久www成人免费直播| 黑人巨大白妞出浆|