欧美色欧美亚洲高清在线观看,国产特黄特色a级在线视频,国产一区视频一区欧美,亚洲成a 人在线观看中文

  1. <ul id="fwlom"></ul>

    <object id="fwlom"></object>

    <span id="fwlom"></span><dfn id="fwlom"></dfn>

      <object id="fwlom"></object>

      C++實(shí)踐報(bào)告

      時(shí)間:2019-05-12 23:31:40下載本文作者:會(huì)員上傳
      簡(jiǎn)介:寫(xiě)寫(xiě)幫文庫(kù)小編為你整理了多篇相關(guān)的《C++實(shí)踐報(bào)告》,但愿對(duì)你工作學(xué)習(xí)有幫助,當(dāng)然你在寫(xiě)寫(xiě)幫文庫(kù)還可以找到更多《C++實(shí)踐報(bào)告》。

      第一篇:C++實(shí)踐報(bào)告

      中南大學(xué)

      本科生課程設(shè)計(jì)(實(shí)踐)任務(wù)書(shū)、設(shè)計(jì)報(bào)告

      (C++程序設(shè)計(jì))

      題 目 學(xué)生姓名 指導(dǎo)教師

      C++程序設(shè)計(jì)實(shí)踐

      * *

      孫 岱

      學(xué) 院 地球科學(xué)與信息物理學(xué)院 專業(yè)班級(jí) 信息物理工程類1106班 學(xué)生學(xué)號(hào)

      01451106**

      計(jì)算機(jī)基礎(chǔ)教學(xué)實(shí)驗(yàn)中心

      2012年 7 月 日

      C++程序設(shè)計(jì)實(shí)踐報(bào)告書(shū)

      C++是一種使用非常廣泛的電腦程式設(shè)計(jì)語(yǔ)言,在當(dāng)今網(wǎng)絡(luò)如此發(fā)達(dá)的時(shí)代能夠運(yùn)用C++語(yǔ)言進(jìn)行編程顯得尤為重要。它是一種靜態(tài)資料類型檢查的,支援多范型的通用程式設(shè)計(jì)語(yǔ)言。C++支援程序化程式設(shè)計(jì)、資料抽象化、面向?qū)ο蟪淌皆O(shè)計(jì)、泛型程式設(shè)計(jì)、基于原則設(shè)計(jì)等多種程式設(shè)計(jì)風(fēng)格。在系統(tǒng)學(xué)習(xí)完《C++程序設(shè)計(jì)基礎(chǔ)》課程后,我們?cè)诶蠋煹闹笇?dǎo)下進(jìn)行了這次C++程序設(shè)計(jì)實(shí)踐,主要以visual C++6.0為編譯環(huán)境,重點(diǎn)使用了visual C++ MFC編程實(shí)現(xiàn)實(shí)踐所要求的功能。

      【任務(wù)描述】

      這次實(shí)踐采用了上機(jī)實(shí)踐與老師集體輔導(dǎo)結(jié)合的方式,以完成輔導(dǎo)老師下發(fā)的《C++語(yǔ)言課程設(shè)計(jì)任務(wù)書(shū)》中指定任務(wù)與要求為目的,要求我們?cè)谝褜W(xué)過(guò)的《C++程序設(shè)計(jì)基礎(chǔ)》所掌握的一些C++語(yǔ)言的結(jié)構(gòu)和函數(shù)的基礎(chǔ)上,以全新的角度去感知和運(yùn)用C++語(yǔ)言進(jìn)行一些具有相關(guān)目的和功能的程序設(shè)計(jì)和編譯。在這次實(shí)踐中,我們統(tǒng)一以visual C++ 6.0為編譯系統(tǒng),使用visual C++ MFC編程來(lái)達(dá)到和完成輔導(dǎo)老師給的《C++語(yǔ)言課程設(shè)計(jì)任務(wù)書(shū)》中給出的題目,其中部分題目以基本對(duì)話框?yàn)閼?yīng)用程序的框架,另一部分則設(shè)計(jì)為單文檔界面(SDI)應(yīng)用程序。這些程序都具有不同的設(shè)計(jì)目的和應(yīng)用功能,運(yùn)用了常用的基本控件,如靜態(tài)文本框、命令按鈕、編輯框、復(fù)選框、列表框、組合框、滾動(dòng)條等。

      本次實(shí)踐可分為三部分:

      一、基于對(duì)話框的Windows應(yīng)用程序:

      這部分以知識(shí)要點(diǎn)掌握與編程實(shí)例主輔結(jié)合的方式,讓我們基本掌握了基于對(duì)話框的應(yīng)用程序的創(chuàng)建過(guò)程,建立基于對(duì)話框的 MFC 應(yīng)用程序框架,放置控件并設(shè)置控件屬性,以及為控件連接變量(即為控件命名),添加并且編寫(xiě)消息處理函數(shù)。在這部分實(shí)踐中,我按照任務(wù)書(shū)中要求按照任務(wù)書(shū)所給的實(shí)例,基本掌握了基于對(duì)話框的 MFC 應(yīng)用程序中各常用的基本控件的使用。在完成對(duì)MFC編程的初步了解后,我們按《C++語(yǔ)言課程設(shè)計(jì)任務(wù)書(shū)》所給出的題目和要求完成了相關(guān)基于對(duì)話框的 MFC 應(yīng)用程序的編譯。實(shí)踐完成了以下任務(wù)和要求:

      1.編寫(xiě)一個(gè)如圖所示的應(yīng)用程序。若單擊“復(fù)制”按鈕,則把上面的編輯框中的內(nèi)容復(fù)制到下面的編輯框中;若單擊“結(jié)束”按鈕,則退出程序的運(yùn)行。

      2.輸入一元二次方程 ax2 +bx+c=0 的系數(shù) a、b、c,計(jì)算并輸出兩個(gè)根 x1、x2。

      3.編寫(xiě)一個(gè)能對(duì)列表框進(jìn)行項(xiàng)目添加、修改和刪除操作的應(yīng)用程序。

      4.設(shè)計(jì)如圖所示的對(duì)話框。若選定了“日期”或“時(shí)間”復(fù)選框,則在對(duì)應(yīng)的只讀編輯框中顯示系統(tǒng)當(dāng)前日期或時(shí)間。

      5.設(shè)計(jì)如圖所示的對(duì)話框。單擊“確定”按鈕后,在列表框中顯示選擇的信息。

      二、文檔/視圖結(jié)構(gòu)應(yīng)用程序:

      文檔/視圖結(jié)構(gòu)的思想是將數(shù)據(jù)的管理與顯示分離,其中文檔用于管理應(yīng)用程序的數(shù)據(jù),而視圖是用戶界面,用于顯示、打印文檔中的數(shù)據(jù),并管理與用戶的交互。在這部分實(shí)踐過(guò)程中,通過(guò)對(duì)任務(wù)書(shū)中介紹的幾種SDI結(jié)構(gòu)的典型應(yīng)用程序來(lái)了解其結(jié)構(gòu)及設(shè)計(jì)方法,學(xué)習(xí)和實(shí)踐了典型應(yīng)用包括:?利用畫(huà)筆、畫(huà)刷等工具及位圖處理的方法實(shí)現(xiàn)文字和圖形的輸出。?利用定時(shí)器控件制作動(dòng)畫(huà)程序。?對(duì)鼠標(biāo)和鍵盤進(jìn)行編程的基本方法。?文件、字體、顏色等幾種通用對(duì)話框的使用方法及自定義對(duì)話框的設(shè)計(jì)、調(diào)用方法。?菜單的設(shè)計(jì)方法。

      通過(guò)課程實(shí)踐,以及與同學(xué)之間的討論,我們完成了這一階段的任務(wù)要求:

      6.編寫(xiě)一個(gè)程序,繪制如圖所示的-2π~2π 之間的 sin 曲線。

      7.設(shè)計(jì)一個(gè)如圖所示的畫(huà)圖程序。要求按下鼠標(biāo)右鍵畫(huà)圓,按住鼠標(biāo)左鍵移動(dòng)畫(huà)線。(圖略)

      8.用定時(shí)器控制蝴蝶在窗口中飛舞,如圖所示。(圖略)

      9.設(shè)計(jì)一個(gè)如圖所示的應(yīng)用程序。若用戶單擊左鍵,則彈出輸入成績(jī)對(duì)話框,選擇 OK 后平均成績(jī)和總分在窗口的客戶區(qū)輸出。(圖略)

      10.設(shè)計(jì)如圖所示的菜單,并編寫(xiě)相應(yīng)用的消息處理函數(shù)。(圖略)

      三、完成綜合題的程序設(shè)計(jì):

      將實(shí)踐過(guò)程中選擇3~5題(或類似的題),做成一個(gè)綜合程序,要求通過(guò)菜單調(diào)用各部分功能??勺孕薪M織和發(fā)揮,使其安排合適。

      【系統(tǒng)設(shè)計(jì)思想】

      首先建立一個(gè)單文檔結(jié)構(gòu)的應(yīng)用程序作為綜合程序的主程序,通過(guò)對(duì)菜單的設(shè)計(jì)完成與所需調(diào)用的各個(gè)對(duì)話框功能相適應(yīng)的編輯。利用對(duì)話框類資源創(chuàng)建自己的對(duì)話框,然后建立成與實(shí)踐中3~5題相對(duì)應(yīng)的對(duì)話框,并分別按要求進(jìn)行相關(guān)功能的實(shí)現(xiàn)。然后建立對(duì)話框類CMyDlg,在調(diào)用的地方建立對(duì)話框類對(duì)象CMyDlg dlg;然后dlg.DoModal();從而實(shí)現(xiàn)主程序?qū)Ω鱾€(gè)對(duì)話框的調(diào)用。在主程序的單文檔界面的菜單中,可以對(duì)所需功能進(jìn)行選擇,然后調(diào)用出不同的對(duì)話框?qū)崿F(xiàn)所系的功能,達(dá)到設(shè)計(jì)程序通過(guò)菜單調(diào)用各部分功能的目的。

      【系統(tǒng)功能】

      設(shè)計(jì)的綜合程序以一個(gè)文檔類的程序界面為依托,實(shí)現(xiàn)其余各個(gè)部分功能的調(diào)用。對(duì)書(shū)目管理、時(shí)間顯示以及教師綜合信息管理者三部分進(jìn)行了整合,達(dá)到了對(duì)各個(gè)部分功能之間的調(diào)用。在主界面中,我們可以對(duì)所需功能進(jìn)行選擇,從而到達(dá)不同的對(duì)話框界面進(jìn)行不同功能的交互。?當(dāng)我們?cè)诓藛沃羞x擇“書(shū)目管理”時(shí),程序自動(dòng)彈出書(shū)目管理對(duì)話框,然后我們能對(duì)列表框進(jìn)行項(xiàng)目添加、修改和刪除操作等。?而我們?nèi)绻谥鹘缑娴牟藛沃羞x擇“時(shí)間顯示”,則系統(tǒng)會(huì)跳至另一個(gè)對(duì)話框界面,這個(gè)界面可以對(duì)當(dāng)前的時(shí)間進(jìn)行顯示,在對(duì)話框中若選擇了“日期”或者“時(shí)間”復(fù)選框,則在對(duì)應(yīng)的只讀編輯框中顯示系統(tǒng)當(dāng)前的日期或時(shí)間,從而實(shí)現(xiàn)了對(duì)系統(tǒng)當(dāng)前時(shí)間信息的捕獲。?如果我們?cè)谧畛醯闹鹘缑娌藛芜x擇了“教師綜合信息管理”,則在彈出的對(duì)話框中我們可以實(shí)現(xiàn)對(duì)教師姓名、性別、愛(ài)好、工齡以及職稱進(jìn)行選擇。

      【設(shè)計(jì)過(guò)程】

      首先打開(kāi)VC++ 6.0編譯系統(tǒng),因?yàn)槲以O(shè)計(jì)的綜合程序以一個(gè)文檔類的程序界面為依托,實(shí)現(xiàn)其余各個(gè)部分功能的調(diào)用。對(duì)書(shū)目管理、時(shí)間顯示以及教師綜合信息管理者三部分進(jìn)行了整合,從而達(dá)到了對(duì)各個(gè)部分功能之間的調(diào)用。所以創(chuàng)建過(guò)程如下:

      ?按照任務(wù)書(shū)要求設(shè)定工程名為“xw1106_0145110626“,利用 AppWizard 創(chuàng)建一個(gè) SDI 應(yīng)用程序框架。

      ?在工作區(qū)中選定“ ResourceView ”,展開(kāi) Menu,雙擊其中的 IDR_MAINFRAME,可以看到由 AppWizard 生成的標(biāo)準(zhǔn)菜單。首先刪除原有菜單項(xiàng),然后添加自己所需要的菜單,添加方式為:雙擊空白菜單框,彈出“ Menu Item Properties ”,輸入菜單項(xiàng)的標(biāo)題(名稱)。若菜單項(xiàng)有一個(gè)子菜單(單擊會(huì)彈出了一子菜單),則選定“彈出”,否則不要選定“彈出”;要輸入一條分割線,則選定“分隔符”。我將菜單欄設(shè)定為三項(xiàng),分別為“菜單”、“小工具”以及“QQ”,其中菜單包含三個(gè)子選項(xiàng)分別為“方程求解/時(shí)間顯示/書(shū)目管理”,小工具包含“復(fù)制/字符游戲”,而“QQ”則是通過(guò)進(jìn)程方式實(shí)現(xiàn)對(duì)外部軟件QQ的調(diào)用。

      ?利用“CDialog dlg;dlg.DoModal();”來(lái)實(shí)現(xiàn)各個(gè)子菜單項(xiàng)所對(duì)應(yīng)的對(duì)話框的調(diào)用,而QQ的調(diào)用是個(gè)人加進(jìn)去的(不是任務(wù)要求),利用了進(jìn)程方式調(diào)用外部exe程序:STARTUPINFO si;PROCESS_INFORMATION pi;ZeroMemory(&si,sizeof(si));si.cb = sizeof(si);ZeroMemory(&pi,sizeof(pi));if(!CreateProcess(NULL, ”G:Program FilesTencentQQBinQQ.exe “,NULL,NULL,FALSE,CREATE_NO_WINDOW,NULL,NULL,&si,&pi)){ MessageBox(”出錯(cuò) “, ”提示 ",MB_OK|MB_ICONINFORMATION);} WaitForSingleObject(pi.hProcess,INFINITE);CloseHandle(pi.hProcess);CloseHandle(pi.hThread);【運(yùn)行情況】

      編譯鏈接后程序運(yùn)行正常,能實(shí)現(xiàn)通過(guò)菜單項(xiàng)調(diào)出相應(yīng)的對(duì)話框的目的,以一個(gè)文檔類的程序界面為依托,實(shí)現(xiàn)其余各個(gè)部分功能的調(diào)用。對(duì)書(shū)目管理、時(shí)間顯示以及教師綜合信息管理者三部分進(jìn)行了整合,達(dá)到了對(duì)各個(gè)部分功能之間的調(diào)用。其中點(diǎn)擊QQ也能很快的彈出QQ登陸界面。在主程序的單文檔界面的菜單中,可以對(duì)所需功能進(jìn)行選擇,然后調(diào)用出不同的對(duì)話框?qū)崿F(xiàn)所系的功能,達(dá)到設(shè)計(jì)程序通過(guò)菜單調(diào)用各部分功能的目的。

      【心得體會(huì)】

      在為期不到兩周的課程設(shè)計(jì)中,我體會(huì)頗多,學(xué)到很多東西。我懂得了如何用 MFC編寫(xiě)可視化界面的應(yīng)用程序,我加強(qiáng)了對(duì)C++的認(rèn)識(shí),復(fù)習(xí)了自己以前的知識(shí),自己的邏輯思考能力也提高不少。從而對(duì)Microsoft Visual C++ 6.0又有了更深入的認(rèn)識(shí)!在這次課程設(shè)計(jì)中,我還懂得了程序開(kāi)發(fā)的一些比較重要的步驟,總之,通過(guò)這次課程設(shè)計(jì),我收獲頗豐,相信會(huì)為自己以后的學(xué)習(xí)和工作帶來(lái)很大的好處。最重要的還是激發(fā)了我編程的興趣和熱情,讓我從理論變成了能做一些小型程序,讓我對(duì)編程更加熱愛(ài)了。整體地評(píng)價(jià)這次課程設(shè)計(jì),我認(rèn)為收獲很大,正如上面所說(shuō)的那樣,通過(guò)課程設(shè)計(jì),既復(fù)習(xí)了以前的舊知識(shí),又學(xué)到了一些新的知識(shí);設(shè)計(jì)增強(qiáng)了我們用所學(xué)知識(shí)去解決具體問(wèn)題的能力,進(jìn)一步培養(yǎng)了我們獨(dú)立思考問(wèn)題和解決問(wèn)題的能力。特別是學(xué)會(huì)了在Visual C++ 集成開(kāi)發(fā)環(huán)境中如何調(diào)試程序的方法。當(dāng)然,老師的悉心指導(dǎo)和同學(xué)的幫助也是不可忽視的,在此感謝本次課程設(shè)計(jì)中所有輔導(dǎo)老師對(duì)我的關(guān)心和幫助,誠(chéng)心誠(chéng)意感謝老師對(duì)我的鼓勵(lì)與教導(dǎo),是老師在我迷茫的時(shí)候給了我些許提示,激發(fā)了我編程的靈感;還有,我在此也十分感謝本次課程設(shè)計(jì)中同學(xué)們對(duì)我的幫助,盡管本次不是團(tuán)隊(duì)合作,但是他們也給了我不少的提示和幫助,我們相互溝通、共同進(jìn)步。

      【參考文獻(xiàn)】

      [1] 楊長(zhǎng)興、劉衛(wèi)國(guó).《C++程序設(shè)計(jì)》.中國(guó)鐵道出版社

      [2] 劉衛(wèi)國(guó)、楊長(zhǎng)興.《C++程序設(shè)計(jì)實(shí)踐教程》.中國(guó)鐵道出版社

      第二篇:中南大學(xué)(C++實(shí)踐報(bào)告)

      中南大學(xué)

      本科生課程設(shè)計(jì)(實(shí)踐)設(shè)計(jì)報(bào)告(程序設(shè)計(jì)基礎(chǔ))題目

      MFC課程設(shè)計(jì)

      學(xué)生學(xué)號(hào)

      學(xué)生姓名

      指導(dǎo)教師

      學(xué)院

      專業(yè)班級(jí)

      計(jì)算機(jī)基礎(chǔ)教學(xué)實(shí)驗(yàn)中心 2015年

      06月 14

      一、引言

      MFC(Microsoft Foundation Class Library, 微軟基礎(chǔ)類庫(kù))是微軟基Windows平臺(tái)下的C++類庫(kù)集合。MFC包含了所有與系統(tǒng)相關(guān)的類,其中封裝了大多數(shù)的API(Application Program Interface)函數(shù),提供了應(yīng)用程序框架和開(kāi)發(fā)應(yīng)用程序的工具,如應(yīng)用程序向?qū)А㈩愊驅(qū)?、可視化資源設(shè)計(jì)等高效工具,用消息映射處理消息響應(yīng),大大簡(jiǎn)化了Windows應(yīng)用程序的開(kāi)發(fā)工作,使程序員可以從繁重的編程工作中解脫出來(lái),提高了工作效率。

      程序設(shè)計(jì)實(shí)踐旨在課堂學(xué)習(xí)的基礎(chǔ)上幫助學(xué)生掌握C++應(yīng)用系統(tǒng)的開(kāi)發(fā)方法和技巧。在系統(tǒng)學(xué)習(xí)完《C++程序設(shè)計(jì)》這門課程后,通過(guò)實(shí)踐對(duì)幾個(gè)小型C++應(yīng)用程序?qū)嵗O(shè)計(jì)與實(shí)現(xiàn)過(guò)程分析,幫助學(xué)生利用C++開(kāi)發(fā)應(yīng)用系統(tǒng)的一般方法和步驟,掌握MFC的基本知識(shí)。

      這次實(shí)踐采用學(xué)生上機(jī)與老師集體輔導(dǎo)的方式,以完成老師下發(fā)的《C++語(yǔ)言課程設(shè)計(jì)任務(wù)書(shū)》為要求和目的,運(yùn)用課堂上學(xué)習(xí)的C++基礎(chǔ)知識(shí),采用Visual C++ MFC編程系統(tǒng),以全新的角度和感知去認(rèn)識(shí)C++語(yǔ)言在編程方面的優(yōu)越性。在實(shí)踐過(guò)程中,基于對(duì)話框的MFC應(yīng)用程序,達(dá)到了解基本控件,如靜態(tài)文本框、命令按鈕、編輯框、列表框、組合框等的使用的目的。還有理解Windows應(yīng)用程序采用“消息傳遞、事件驅(qū)動(dòng)”的運(yùn)行機(jī)制。本次實(shí)踐的任務(wù)主要分為兩個(gè)部分: 使用Visual C++ MFC編程實(shí)現(xiàn)以下功能:

      輸入一元二次方程ax2+bx+c=0 的系數(shù)a、b、c,計(jì)算并輸出兩個(gè)根x1、x2.編寫(xiě)一個(gè)能對(duì)列表框進(jìn)行項(xiàng)目添加、修改和刪除操作的應(yīng)用程序。編寫(xiě)一個(gè)程序,繪制-2π~2π之間的sin曲線。用定時(shí)器控制蝴蝶在窗口中飛舞。等共10道。

      將第一部分中選擇3~5題,做一個(gè)綜合程序,要求有登陸界面和調(diào)用各部分的功能。總體設(shè)計(jì)

      本次實(shí)踐的主要目的就是了解和掌握運(yùn)用MFC編程的一般思想和具體的操作步驟。實(shí)踐主要是基于MFC的多文檔對(duì)話框和單文檔視圖,通過(guò)實(shí)踐完成第一大部分的任務(wù)之后,還要完成第二部分的綜合題目。第二部分的任務(wù)由學(xué)生自主發(fā)揮,自主找資料,詢問(wèn)同學(xué)和老師。第一部分的任務(wù)比較簡(jiǎn)單,具體的就不再描述。關(guān)于第二部分,我做了一個(gè)基于對(duì)文檔對(duì)話框。首頁(yè)為一個(gè)登陸頁(yè)面,需要輸入用戶名和密碼才能登陸,登陸后的頁(yè)面是把第一大部分的幾個(gè)題目連接起來(lái)。達(dá)到預(yù)覽的目的。

      三、詳細(xì)設(shè)計(jì)

      實(shí)踐前首先要認(rèn)識(shí)AppWizard的工作環(huán)境。其項(xiàng)目工作區(qū)一共有三個(gè)選項(xiàng)卡分別為“ResourceView”“ClassView”“FileView”,中間是對(duì)話框設(shè)計(jì)界面,右邊是控件工具欄。實(shí)踐過(guò)程中,我們是先完成第一大部分的任務(wù)。雖然在第一次上機(jī)實(shí)踐前,我仔細(xì)地閱讀了老師給我們下發(fā)的資料,并且結(jié)合《C++程序設(shè)計(jì)實(shí)踐教程》了解相關(guān)知識(shí),但是在實(shí)踐時(shí)結(jié)果不理想。主要是對(duì)創(chuàng)建對(duì)話框程序的步驟沒(méi)有掌握。在經(jīng)過(guò)幾次嘗試失敗后,總結(jié)其一般步驟為:(1)建立基于對(duì)話框的MFC應(yīng)用程序框架;(2)放置控件;(3)設(shè)置控件屬性;(4)為控件連接變量,即為控件命名;(5)添加并且編寫(xiě)消息處理函數(shù)。

      基于對(duì)話框的MFC程序設(shè)計(jì),對(duì)各種控件的了解和使用顯得特別重要。這里就不一一詳細(xì)介紹它們的功能??丶刂茩谝粋€(gè)有26個(gè)控件圖標(biāo),每一個(gè)圖標(biāo)都可以看做一個(gè)對(duì)象,消息便是通過(guò)函數(shù)對(duì)它們進(jìn)行操作。每一個(gè)控件都有兩個(gè)重要而且必不可少的基本屬性:ID和標(biāo)題。ID便是該控件的標(biāo)識(shí),某些函數(shù)需要通過(guò)ID對(duì)控件進(jìn)行操作。了解一定相關(guān)知識(shí)后,對(duì)課程實(shí)踐有了很大的幫助。其中“輸入一元二次方程ax2+bx+c=0 的系數(shù)a、b、c,計(jì)算并輸出兩個(gè)根x1、x2”這個(gè)題目比較復(fù)雜,而且與C++連續(xù)很緊密。其中的有這樣的語(yǔ)句m_x1=(-b+sqrt(b*b-4*a*c))/(2*a);m_x2=(-b-sqrt(b*b-4*a*c))/(2*a),這就是我們?cè)谡n堂上學(xué)習(xí)的C++基本語(yǔ)句,在實(shí)踐過(guò)程中考驗(yàn)學(xué)生的靈活運(yùn)用能力。完成這個(gè)題目的關(guān)鍵是把每個(gè)編輯框(控件)連接好變量和選的數(shù)據(jù)類型,接下來(lái)的就是編寫(xiě)消息處理函數(shù)。這道題很全面地體現(xiàn)了MFC的“消息傳遞、事件驅(qū)動(dòng)”的思想,在操作步驟方面也在很多地方得到了實(shí)踐。

      MFC編程除了基于多文本對(duì)話框以外,還有很重要的一部分是基于單文檔界面的應(yīng)用程序,如Windows自帶的Notepad程序。在本次實(shí)踐的第一大部分的后5個(gè)小題就是基于單文檔的。那么首先要對(duì)其有一定的了解:文檔/視圖結(jié)構(gòu)的思想是將數(shù)據(jù)的管理與顯示分離,其中文檔用于管理應(yīng)用程序的數(shù)據(jù),而視圖是用戶界面,用于顯示、打印文檔中的數(shù)據(jù),并管理與用戶的交互。SDI具有文檔/視圖結(jié)構(gòu)的應(yīng)用程序框架,該框架包括應(yīng)用程序類、窗口框架類、文檔類和視圖類,編程的任務(wù)是在文檔類和視圖類中添加適當(dāng)?shù)拇a。其中文檔類中一個(gè)重要的成員函數(shù)是OnNewDocument(),用戶在此添加代碼完成對(duì)數(shù)據(jù)的初始化;而視圖類中最重要的成員函數(shù)是OnDraw(),通過(guò)在該函數(shù)中添加代碼實(shí)現(xiàn)窗口內(nèi)容的輸出。本次實(shí)踐是對(duì)單文檔的典型實(shí)例,包括: ? 利用畫(huà)筆、畫(huà)刷等工具及位圖處理的方法實(shí)現(xiàn)文字和圖形的輸出。? 利用定時(shí)器控件制作動(dòng)畫(huà)程序。? 對(duì)鼠標(biāo)和鍵盤進(jìn)行編程的基本方法。

      ? 文件、字體、顏色等幾種通用對(duì)話框的使用方法及自定義對(duì)話框的設(shè)計(jì)、調(diào)用方法。? 菜單的設(shè)計(jì)方法。

      雖然進(jìn)行充分的準(zhǔn)備,實(shí)踐中還是遇到了很多的困難和問(wèn)題。在完成題目“用定時(shí)器控制蝴蝶在窗口中飛舞”時(shí),主要的問(wèn)題就是在插入蝴蝶圖片的,嘗試了幾次都沒(méi)有編譯成功。最終再詢問(wèn)同學(xué)后,才知道是要把GIF格式的圖片分割成一幀一幀,然后才能插入。最后用定時(shí)器控制,達(dá)到動(dòng)態(tài)的效果。在完成了第一大部分的任務(wù)后,第二部分的綜合題是一個(gè)不小的挑戰(zhàn)對(duì)我來(lái)說(shuō)。要靠自己去網(wǎng)上或者圖書(shū)館查找資料。在經(jīng)過(guò)一番準(zhǔn)備后,最終決定做一個(gè)相對(duì)簡(jiǎn)單的基于多文檔對(duì)話框的登陸界面,把幾個(gè)原來(lái)的程序文件連接起來(lái)。但是在這個(gè)過(guò)程中,完全要靠自己一步一步去探索,當(dāng)然也遇到了各種各樣的困難和挑戰(zhàn)。關(guān)鍵是在連接各部分對(duì)話框,經(jīng)過(guò)不斷的實(shí)驗(yàn),不斷的調(diào)試程序,總結(jié)的操作步驟如下:(1)創(chuàng)建工程,MFC Application(exe),工程命名按要求命名;(2)工程建立后有如圖對(duì)話框,將途中的靜態(tài)文本框和按鈕都刪掉,留下空白,再使用靜態(tài)文本,編輯框,按鈕和靜態(tài)圖片重新排版,并進(jìn)行命名。注意靜態(tài)圖框應(yīng)該第一個(gè)布置,不然運(yùn)行時(shí)圖片會(huì)將其他控件覆蓋;(3)右擊密碼對(duì)應(yīng)的編輯框,選擇屬性,選樣式中的密碼;(4)在Dialog上右擊選擇插入DIG,重復(fù)插入4個(gè),依次作為菜單,題目1,題目2和題目3的對(duì)話框,并對(duì)其分別創(chuàng)建類,以菜單對(duì)話框?yàn)槔?,改一下表頭為“菜單”,在對(duì)話框空白處雙擊,點(diǎn)OK創(chuàng)建類,并對(duì)其命名(假如命名為MyMenu);(5)回到登錄界面的對(duì)話框,雙擊登錄控件,出現(xiàn)如圖按鈕,點(diǎn)擊OK,在頂端添加#include”MyMenu.h”,并OnButton1下添加以下代碼CString c_user,c_password;m_user.GetWindowText(c_user);m_password.GetWindowText(c_password);if(c_user.IsEmpty()||c_password.IsEmpty()){

      MessageBox(“用戶名或密碼不能為空”,“用戶登錄信息”);

      return;} if(c_user==“123”&&c_password==“123”){

      CMyMenu dlg;

      dlg.DoModal();//這兩段代碼是用于調(diào)用菜單對(duì)話框

      }

      else {

      MessageBox(“用戶名或密碼不正確”,“提示”,MB_ICONINFORMATION);

      return;對(duì)對(duì)話框添加背景圖片。在如下圖文件上右擊,選擇引入,然后導(dǎo)入已準(zhǔn)備好的bmp格式的圖片,然后選擇登錄界面的靜態(tài)圖框右擊,進(jìn)行如圖操作,這樣圖片就加入了,它會(huì)改掉按鈕和編輯框,這沒(méi)關(guān)系,運(yùn)行后會(huì)顯示出來(lái)的;(7)通過(guò)以上操作,已經(jīng)做好了登錄界面和實(shí)現(xiàn)和登錄界面與菜單對(duì)話框的連接,現(xiàn)在進(jìn)行菜單對(duì)話框的編輯。將原有的按鈕刪除,自己加入按鈕并命名;(8)雙擊題目1,點(diǎn)OK,在代碼頁(yè)的頂端加入如圖代碼,并在OnButton1下加入以下代碼 CT1 dlg;dlg.DoModal();其他的按相同操作。

      四、設(shè)計(jì)總結(jié)

      為期為兩周的課程實(shí)踐中,我體會(huì)頗多,學(xué)到的東西也很多。我懂得了如何運(yùn)用MFC編寫(xiě)可視化界面的應(yīng)用程序,加強(qiáng)了對(duì)C++的認(rèn)識(shí),復(fù)習(xí)了以前的知識(shí),自己的邏輯思考能力,解決問(wèn)題的能力也提高了不少。從而對(duì)Microsoft Visual C++有了更加深刻的認(rèn)識(shí)和體會(huì)!在這次課程設(shè)計(jì)實(shí)踐過(guò)程中我還懂得了一些程序開(kāi)發(fā)的重要步驟,總之,在這次課程設(shè)計(jì)實(shí)踐中,我收獲頗豐。

      對(duì)于對(duì)任務(wù)的完成情況,第一部分主要按老師的步驟完成。第二部分,由學(xué)生自主選題,自主設(shè)計(jì)完成??偟膩?lái)說(shuō),我個(gè)人對(duì)自己的完成情況感覺(jué)良好。當(dāng)然,老師的悉心指導(dǎo)和同學(xué)的幫助是不能忽視的,在此感謝所有在本次課程設(shè)計(jì)實(shí)踐過(guò)程中對(duì)我細(xì)心指導(dǎo)的老師和不斷鼓勵(lì)和幫助我的同學(xué)們。

      總之,此次課程實(shí)踐是對(duì)學(xué)生動(dòng)手動(dòng)腦的一次很好的鍛煉,為學(xué)生的今后發(fā)展奠定基礎(chǔ)。

      第三篇:C++課程實(shí)踐報(bào)告試題及答案

      任務(wù)一 一、實(shí)踐任務(wù) 1.試建立一個(gè)類 PP,求出下列多項(xiàng)式的前 n 項(xiàng)的值。

      ?????? ? ???n x P n x xP nx x Pnn/))()1()()1 2((1)(2 n 1 -

      110???nnn 二、詳細(xì)設(shè)計(jì) 1、類的描述與定義(1)私有數(shù)據(jù)成員 ? int n:前若干項(xiàng)的項(xiàng)數(shù)。

      ? double

      x:存放 x 的值。

      ? double *p:根據(jù) n 的大小動(dòng)態(tài)申請(qǐng)存放 P n(x)前 n 項(xiàng)的數(shù)組空間。

      (2)公有成員函數(shù) ? PP(int num,double x1):構(gòu)造函數(shù),初始化數(shù)據(jù)成員 n 和 x,使 p 指向動(dòng)態(tài)申請(qǐng)的數(shù)組空間。

      ? ~PP():析構(gòu)函數(shù),釋放 p 指向的動(dòng)態(tài)內(nèi)存空間。

      ? double fun(int n1,double x):遞歸函數(shù),用于求多項(xiàng)式)(x P n 的第 n1 項(xiàng)。注意:將遞歸公式中的 n 用作函數(shù)參數(shù)。本函數(shù)供 process 函數(shù)調(diào)用。

      ? void process():完成求前 n 項(xiàng)的工作,并將它們存放到 p 指向的動(dòng)態(tài)數(shù)組中。

      ? void show():輸出 n 和 x,并將前 n 項(xiàng)以每行 4 個(gè)數(shù)的形式輸出到屏幕上。

      2、主要函數(shù)設(shè)計(jì)

      在主函數(shù)中完成對(duì)該類的測(cè)試。先輸入 num 和 x1,并定義一個(gè) PP 類的對(duì)象 items,用 num 和 x1 初始化 items 的成員 n 和 x,調(diào)用 items 的成員函數(shù),求出并輸出多項(xiàng)式前 num 項(xiàng)的值。

      三、源程序清單 #include class PP{ private:

      int n;

      double x;

      double*p;public:

      PP(int num,double x1)

      {

      n=num;

      x=x1;

      p=new double[n];

      }

      ~PP()

      {

      if(p)delete []p;

      }

      double fun(int n1,double x);

      void process();

      void show();};double PP::fun(int n1,double x){

      if(n1==0)return 1;

      else if(n1==1)return x;

      else if(n1>1)return((2*n1-1)*x*fun(n1-1,x)-(n1-1)*fun(n1-2,x))/n1;} void PP::process(){

      for(int i=0;i

      {

      p[i]=fun(i,x);

      } } void PP::show(){

      cout<<“n=”<

      for(int i=0;i

      {

      cout<

      if((i+1)%4==0)cout<

      } } void main(){

      int num;

      double x1;

      cout<<“請(qǐng)輸入 num 和 x1:”;

      cin>>num>>x1;

      PP items(num,x1);

      items.process();

      items.show();}

      任務(wù)二

      一、實(shí)踐任務(wù) 2.試建立一個(gè)類 SP,求k k k kn k n f ? ? ? ? ?....3 2 1),(,另有輔助函數(shù) power(m,n)用于求nm。

      二、詳細(xì)設(shè)計(jì) 1、類的描述與定義(1)私有數(shù)據(jù)成員 ? int n,k:存放公式中 n 和 k 的值;(2)公有成員函數(shù) ? SP(int n1,int k1):構(gòu)造函數(shù),初始化成員數(shù)據(jù) n 和 k。

      ? int power(int m, int n):求 m n。

      ? int fun():求公式的累加和。

      ? void show():輸出求得的結(jié)果。

      2、主要函數(shù)設(shè)計(jì) 在主程序中定義對(duì)象 s,對(duì)該類進(jìn)行測(cè)試。

      三、源程序清單 #include class SP{

      private:

      int n,k;public:

      SP(int n1,int k1)

      {

      n=n1;

      k=k1;

      }

      int power(int m,int n);

      int fun();

      void show();};int SP::power(int m,int n){

      int s=1;

      for(int i=0;i

      {

      s*=m;

      }

      return s;} int SP::fun(){

      int s=0;

      for(int i=1;i<=n;i++)

      {

      s+=power(i,k);

      }

      return s;}

      void SP::show(){

      cout<<“f(”<

      int n1,k1;

      cout<<“請(qǐng)輸入 n1,k1:”;

      cin>>n1>>k1;

      SP s(n1,k1);

      s.fun();

      s.show();}

      任務(wù)三

      一、實(shí)踐任務(wù) 3.建立一個(gè)類 MOVE,不進(jìn)行排序,將數(shù)組中小于平均值的元素放到數(shù)組的左邊,大于平均值的元素放到數(shù)組的右邊。

      二、詳細(xì)設(shè)計(jì) 1、類的描述與定義(1)私有數(shù)據(jù)成員 ? float array[20]:一維整型數(shù)組。

      ? int n:數(shù)組中元素的個(gè)數(shù)。

      (2)公有成員函數(shù) ? MOVE(float b[],int m):構(gòu)造函數(shù),初始化成員數(shù)據(jù)。

      ? void average():輸出平均值,并將數(shù)組中的元素按要求重新放置。

      ? void print():輸出一維數(shù)組。

      2、主要函數(shù)設(shè)計(jì) 在主程序中用數(shù)據(jù){1.3,6.2,3,9.1,4.8,7.4,5.6,9.2,2.3}對(duì)該類進(jìn)行測(cè)試。

      三、源程序清單 #include class MOVE{ private:

      float array[20];

      int n;public:

      MOVE(float b[],int m)

      {

      for(int i=0;i

      {

      array[i]=b[i];

      }

      n=m;

      }

      void average();

      void print();

      ~MOVE()

      {};};void MOVE::average(){

      float ave=0;

      int i,j;

      for(i=0;i

      {

      ave+=array[i];

      }

      ave/=n;

      cout<

      float turn[20];

      j=0;

      for(i=0;i

      {

      if(array[i]<=ave)

      {

      turn[j]=array[i];

      j++;

      }

      }

      j=0;

      for(i=0;i

      {

      if(array[i]>ave)

      {

      turn[n-1-j]=array[i];

      j++;

      }

      }

      for(i=0;i

      {

      array[i]=turn[i];

      } } void MOVE::print(){ for(int i=0;i

      cout<

      float b1[]={1.3,6.2,3,9.1,4.8,7.4,5.6,9.2,2.3};

      int num;

      num=sizeof(b1)/sizeof(float);

      MOVE s(b1,num);

      s.average();

      s.print();}

      任務(wù)四

      一、實(shí)踐任務(wù) 4.建立一個(gè)類 MOVE,將數(shù)組中最大元素的值與最小元素的值互換。

      二、詳細(xì)設(shè)計(jì) 1、類的描述與定義(1)私有數(shù)據(jù)成員 ? int *array:一維整型數(shù)組。

      ? int n:數(shù)組中元素的個(gè)數(shù)。

      (2)公有成員函數(shù) ? MOVE(int b[],int m):構(gòu)造函數(shù),初始化成員數(shù)據(jù)。

      ? void exchange():輸出平均值,并將數(shù)組中的元素按要求重新放置。

      ? void print():輸出一維數(shù)組。

      ? ~MOVE():析構(gòu)函數(shù)。

      2、主要函數(shù)設(shè)計(jì) 在主程序中用數(shù)據(jù){21,65,43,87,12,84,44,97,32,55}對(duì)該類進(jìn)行測(cè)試。

      三、源程序清單 #include class MOVE{ private:

      int *array;

      int n;public:

      MOVE(int b[],int m)

      {

      array=new int[m];

      n=m;

      for(int i=0;i

      {

      array[i]=b[i];

      }

      }

      void exchange();

      void print();

      ~MOVE()

      {

      if(array)delete array;

      } };void MOVE::exchange()

      {

      float ave=0;

      for(int i=0;i

      {

      ave+=array[i];

      }

      ave/=n;

      cout<<“平均值為”<

      int max,min;

      max=min=array[0];

      int m;

      for(i=0,m=0;i

      {

      if(array[i]>=max)m=i,max=array[i];

      }

      int l;

      for(i=0,l=0;i

      {

      if(array[i]

      }

      i=array[m],array[m]=array[l],array[l]=i;

      } void MOVE::print()

      {

      for(int i=0;i

      cout<

      {

      int text[]={21,65,43,87,12,84,44,97,32,55};

      int num;

      num=sizeof(text)/sizeof(int);

      MOVE s(text,num);

      s.print();

      cout<

      s.exchange();

      s.print();}

      任務(wù)五 一、實(shí)踐任務(wù) 定義一個(gè)類 Palindrome,實(shí)現(xiàn)絕對(duì)回文數(shù)。設(shè)計(jì)一個(gè)算法實(shí)現(xiàn)對(duì)任意整型數(shù)字判斷是否為絕對(duì)回文數(shù)。所謂絕對(duì)回文數(shù),是指十進(jìn)制數(shù)和二進(jìn)制數(shù)均對(duì)稱的數(shù)。

      二、詳細(xì)設(shè)計(jì) 1、類的描述與定義(1)私有數(shù)據(jù)成員 ? int n:整型數(shù)字。

      ? int y:

      標(biāo)記是否為回文數(shù)。

      (2)公有成員函數(shù) ? Palindrome(int x):構(gòu)造函數(shù),根據(jù) x 參數(shù)初始化數(shù)據(jù)成員 n,y 初始化為 0。

      ? void huiwen():判斷數(shù) n 是否為絕對(duì)回文數(shù)。

      ? void show():若該數(shù)為回文數(shù),則在屏幕顯示。

      2、主要函數(shù)設(shè)計(jì)

      在主程序中定義 int a,由鍵盤輸入數(shù)字。定義一個(gè) Palindrome 類對(duì)象 p,用 a 初始化 p,完成對(duì)該類的測(cè)試。

      三、源程序清單 #include class Palindrome{ private:

      int n;

      int y;public:

      Palindrome(int x)

      {

      n=x;

      y=0;

      }

      void huiwen();

      void show();};void Palindrome::huiwen(){

      int i=0,j=0;

      int m;

      m=n;

      while(m)

      {

      m/=10;

      i++;

      }

      m=n;

      while(m)

      {

      m/=2;

      j++;

      }

      int*s10=new int[i];

      int*s2=new int[j];

      m=n;

      for(int k=0;k

      {

      s10[i-1-k]=m%10;

      m/=10;

      }

      m=n;

      for(k=0;k

      {

      s2[j-1-k]=m%2;

      m/=2;

      }

      int num10=0;

      for(k=0;k

      {

      if(s10[i-1-k]==s10[k])num10++;

      else break;

      }

      int num2=0;

      for(k=0;k

      {

      if(s2[j-1-k]==s2[k])num2++;

      else break;

      }

      if(num10==(i/2)&&num2==(j/2))y=1;

      } void Palindrome::show(){

      int i=0,j=0;

      int m;

      m=n;

      while(m)

      {

      m/=10;

      i++;

      }

      m=n;

      while(m)

      {

      m/=2;

      j++;

      }

      int*s10=new int[i+1];

      int*s2=new int[j+1];

      m=n;

      for(int k=0;k

      {

      s10[i-1-k]=m%10;

      m/=10;

      }

      m=n;

      for(k=0;k

      {

      s2[j-1-k]=m%2;

      m/=2;

      }

      if(y)

      {

      cout<<“該數(shù)為絕對(duì)回文數(shù)?。骸?

      cout<<“十進(jìn)制表示為:”;

      for(k=0;k

      cout<

      cout<<“二進(jìn)制表示為:”;

      for(k=0;k

      cout<

      }

      else

      {

      cout<<“該數(shù)不是絕對(duì)回文數(shù)?。骸?

      cout<<“十進(jìn)制表示為:”;

      for(k=0;k

      cout<

      cout<<“二進(jìn)制表示為:”;

      for(k=0;k

      cout<

      }

      cout<

      int a;

      cout<<“請(qǐng)輸入一個(gè)數(shù)字:”;

      cin>>a;

      Palindrome p(a);

      p.huiwen();

      p.show();}

      任務(wù)六

      一、實(shí)踐任務(wù) 6.定義一個(gè)字符串類 String,實(shí)現(xiàn)判斷該字符串是否為回文字符串。所謂回文字符串,是

      指該字符串左右對(duì)稱。例如字符串“123321”是回文字符串。

      二、詳細(xì)設(shè)計(jì) 1、類的描述與定義(1)私有數(shù)據(jù)成員 ? char *str;

      ? int y:標(biāo)記是否為回文字符串。

      (2)公有成員函數(shù) ? String(char *s):構(gòu)造函數(shù),用給定的參數(shù) s 初始化數(shù)據(jù)成員 str。y 初始化為 0。

      ? void huiwen():判斷 str 所指向的字符串是否為回文字符串。

      ? void show():在屏幕上顯示字符串。

      2、主要函數(shù)設(shè)計(jì) 在主程序中定義字符串 char s[]=”ababcedbaba”作為原始字符串。定義一個(gè) String 類對(duì)象 test,用 s 初始化 test,完成對(duì)該類的測(cè)試。

      三、源程序清單 #include #include class String{ private:

      char*str;

      int y;public:

      String(char*s)

      {

      int n=strlen(s);

      str=new char[n+1];

      strcpy(str,s);

      y=0;

      }

      void huiwen();

      void show();

      ~String()

      { if(str)delete []str;} };void String::huiwen(){

      int n,judge=0;

      n=strlen(str);

      for(int i=0;i<(n/2);i++)

      {

      if(str[i]==str[n-1-i])judge++;

      }

      if(judge==i)y=1;} void String::show()//輸出; {

      if(y==1)cout<<“y=1,?該字符串是回文數(shù)”<

      else cout<<“y=0,該字符串不是回文數(shù)”<

      char s[]=“ababcedbaba”;

      String test(s);

      test.huiwen();

      test.show();}

      任務(wù)七

      一、實(shí)踐任務(wù) 7.建立一個(gè)類 PHALANX,生成并顯示一個(gè)折疊方陣。折疊方陣如下圖所示。折疊方陣的生成過(guò)程為:起始數(shù)置于方陣的左上角,然后從起始數(shù)開(kāi)始遞增,依次折疊構(gòu)成方陣。

      二、詳細(xì)設(shè)計(jì) 1、類的描述與定義(1)私有數(shù)據(jù)成員 1

      … 1 1

      4

      9

      16

      ? int(*p)[20]:指向按照折疊規(guī)律存放方陣的二維整型數(shù)組。

      ? int startnum:折疊方陣的起始數(shù)。

      ? int n:存放方針的層數(shù)。

      (2)公有成員函數(shù) ? PHALANX(int s, int m):構(gòu)造函數(shù),初始化成員數(shù)據(jù)。

      ? void process():生成起始數(shù)為 startnum 的 n 行方陣。

      ? void print():輸出折疊方陣。

      ? ~ PHALANX():析構(gòu)函數(shù)。

      2、主要函數(shù)設(shè)計(jì) 在主程序中對(duì)該類進(jìn)行測(cè)試。

      三、源程序清單 #include class phalanx {

      int(*p)[20];

      int startnum;

      int n;

      public:

      phalanx(int s[20][20],int m)

      {

      startnum=1;

      p=s;

      n=m;

      }

      void process()

      {

      p[0][0]=startnum;

      for(int i=0;i

      for(int j=0;j

      {if(i>j){p[i][j]=1+i*i+i+i-j;}

      else{p[i][j]=1+j*j+i;}}

      }

      void print()

      {

      for(int i=0;i

      {

      for(int j=0;jcout<<“n”;

      }

      }

      ~ phalanx(){ }

      };

      void main()

      {

      int m;

      int s[20][20];

      cout<<“請(qǐng)輸入折疊層數(shù):”;

      cin>>m;

      cout<<“n”;

      phalanx pp(s,m);

      pp.process();

      pp.print();

      }

      第四篇:中南大學(xué)c++計(jì)算器實(shí)踐報(bào)告

      中南大學(xué)

      本科生課程設(shè)計(jì)(實(shí)踐)任務(wù)書(shū)、設(shè)計(jì)報(bào)告

      (C++程序設(shè)計(jì))

      題目

      學(xué)生姓名 指導(dǎo)教師

      學(xué)院

      專業(yè)班級(jí) 學(xué)生學(xué)號(hào) 科學(xué)計(jì)算器應(yīng)用程序嚴(yán)暉 材料科學(xué)與工程學(xué)院 1206

      計(jì)算機(jī)基礎(chǔ)教學(xué)實(shí)驗(yàn)中心 2013年 7 月5日

      第五篇:c++實(shí)踐心得體會(huì)1600

      在本課程學(xué)習(xí)過(guò)程中我遇到了下面這些問(wèn)題:

      1、剛開(kāi)始C++實(shí)踐理論課的學(xué)習(xí)時(shí),我的學(xué)習(xí)興趣很高,總想著自己能夠完全掌握PPT的知識(shí),做成一個(gè)完美的程序。隨著學(xué)習(xí)的進(jìn)展,調(diào)試程序總是出現(xiàn)問(wèn)題,最夸張的一次出現(xiàn)了204個(gè)ERRORS,也經(jīng)常不知道怎么去在正確的期房插入程序塊。而比較嚴(yán)格的語(yǔ)法規(guī)則,也讓我一時(shí)難以接受,產(chǎn)生畏難情緒,總是怕,最后因?yàn)榕聦W(xué)不好而導(dǎo)致沒(méi)有學(xué)好。

      2、注重理論學(xué)習(xí),忽視上機(jī)編程實(shí)踐,造成“只能用筆在紙上編程”的奇怪現(xiàn)象。特別是在剛開(kāi)始時(shí),我一開(kāi)始編譯連接就手忙腳亂,總是會(huì)出現(xiàn)許多錯(cuò)誤。有時(shí)程序則一再出現(xiàn)錯(cuò)誤,使我就更不理解該如何查找錯(cuò)誤,如何排除錯(cuò)誤了。

      3、在前期的學(xué)習(xí)中我沒(méi)有抓得很緊,總覺(jué)得不是很難,希望通過(guò)突擊搞定課程學(xué)習(xí)。而事實(shí)上,本課程實(shí)踐要靠平時(shí)的積累,幾乎不能靠臨時(shí)突擊,因?yàn)榍懊婊A(chǔ)不夠扎實(shí),到了后面險(xiǎn)些無(wú)法彌補(bǔ)。

      4、我發(fā)現(xiàn)自己在后期的學(xué)習(xí)中有些急于求成,總想編寫(xiě)綜合性的程序,把老師的要求一次性盡快完成。這直接導(dǎo)致了我編的程序一時(shí)很亂,幾乎無(wú)法閱讀。

      后來(lái)才發(fā)現(xiàn)為了學(xué)好本課程,沒(méi)有什么竅門,只能采用一些“笨”技巧:

      認(rèn)真聽(tīng)講,積極思考,提高上課效率。老師上課講述的都是課程實(shí)踐的重點(diǎn)和難點(diǎn),聽(tīng)好課程能夠達(dá)到“事半功倍”的目的。

      主動(dòng)上機(jī),多多實(shí)踐,提高動(dòng)手才能,實(shí)習(xí)時(shí)不能著急。通過(guò)上機(jī)實(shí)踐來(lái)驗(yàn)證所學(xué)的理論,通過(guò)在機(jī)器上查找錯(cuò)誤來(lái)鞏固概念,通過(guò)提高上機(jī)才能來(lái)促進(jìn)理論學(xué)習(xí),開(kāi)闊編程思路,提高反映效率,提高分析問(wèn)題解決問(wèn)題的才能,鍛煉心理素質(zhì),提高心理承受才能。

      這是第二次上計(jì)算機(jī)實(shí)踐課程了,第一次是網(wǎng)頁(yè)設(shè)計(jì)。雖然兩次要完成的任務(wù)不同,但給人的感覺(jué)都是較迷茫的。由于我上課時(shí)沒(méi)有認(rèn)真聽(tīng)C++課程老師的講解,學(xué)得相當(dāng)糟糕,但要設(shè)計(jì)的又是一個(gè)較大的程序,便去請(qǐng)教老師。老師建議我們找一個(gè)模板,認(rèn)真仔細(xì)地看,去理解它,看懂它,然后根據(jù)自己的實(shí)踐內(nèi)容適當(dāng)修改,應(yīng)該就沒(méi)多大問(wèn)題了。

      老師的話給了我莫大的鼓勵(lì),但不自覺(jué)地滋生了傲慢的態(tài)度。只要有個(gè)模板不就行了嘛,小事一樁?。〉Y(jié)果并非如此,在后來(lái)的實(shí)踐過(guò)程中,我還是碰到了許多麻煩。

      其中,對(duì)于按省份給每個(gè)省的總發(fā)表篇數(shù)進(jìn)行排序這一問(wèn)題,剛開(kāi)始真的不會(huì)弄,我一開(kāi)始以為要用一維數(shù)組來(lái)排序,可還是不太明白。于是,我詢問(wèn)了周邊同學(xué),才知道他們用的是Access導(dǎo)入C++,再利用Access的排序功能,并且調(diào)試成功了,聽(tīng)他們講解后我便用了他們的方法。與同學(xué)討論、向同學(xué)請(qǐng)教有時(shí)候也不失為一個(gè)好方法,一個(gè)人的智慧畢竟是不全面的,集體的力量才是強(qiáng)大的!同時(shí),在運(yùn)行時(shí)老是會(huì)出現(xiàn)一些錯(cuò)誤,但我發(fā)現(xiàn)其實(shí)里面的參數(shù)并不復(fù)雜,只要跟著那個(gè)error的提示,一個(gè)一個(gè)的改下去,其實(shí)很簡(jiǎn)單的。結(jié)果事實(shí)也是如此,用了一個(gè)小時(shí)多一點(diǎn),102個(gè)錯(cuò)誤全部搞定了。錯(cuò)誤幾乎為以下三類:

      1.冒號(hào),分號(hào)等符號(hào)打錯(cuò)了; 2.大小寫(xiě)等造成的對(duì)應(yīng)問(wèn)題; 3.變量的不完全修改。

      改完以后,在執(zhí)行時(shí)我發(fā)現(xiàn)界面不好看,于是我又將主界面略加修改了些。看上去美觀了不少。再運(yùn)行功能,幾乎都能順利運(yùn)行,但還是存在一些瑕疵,但是我還是不太會(huì)弄清怎么回事。于是,又去問(wèn)同學(xué),在他們的幫助下,成功解決這個(gè)問(wèn)題,在此真要好好謝謝他們!

      終于大功告成!欣慰在這次實(shí)踐中,我不僅彌補(bǔ)了自己在C++課上所落下的內(nèi)容,尤其是指針那塊部分,雖然現(xiàn)在概念搞的還不是很懂,但看見(jiàn)程序是能夠理解的。這次C++實(shí)踐是給我們這一學(xué)期來(lái)所學(xué)知識(shí)的一個(gè)總復(fù)習(xí),總的實(shí)踐。它讓我們把所知道的知識(shí)點(diǎn)運(yùn)用的更好,把不知道的知識(shí)點(diǎn)搞得明白了。實(shí)踐出真知,通過(guò)這次實(shí)踐,我也系統(tǒng)的把課本好好的第四次回顧了下。猛然覺(jué)得,C++二級(jí)考試更有把握了。

      在本門課程實(shí)踐過(guò)程中,我更好的領(lǐng)悟了自學(xué)的重要性,并且和同學(xué)加強(qiáng)了交流,以便我們互相及時(shí)答疑解惑。同時(shí)我也學(xué)會(huì)了采用多種形式進(jìn)行交流,不僅只是傳統(tǒng)的面對(duì)面進(jìn)行相互答疑,同時(shí)也利用網(wǎng)絡(luò)通過(guò)百度知道、百度文庫(kù)、郵件、BBS進(jìn)行網(wǎng)上交流,也學(xué)會(huì)了絕對(duì)不要將問(wèn)題積累到最后。

      同時(shí)在本次實(shí)踐中,我還開(kāi)闊了眼界,打開(kāi)了思路,閱讀了幾本關(guān)于C++編程的教程,從而通過(guò)理解不同作者對(duì)于C++的不同看法,來(lái)提高我對(duì)C++的理解,以方便自己在未來(lái)對(duì)C++的進(jìn)一步學(xué)習(xí)。

      下載C++實(shí)踐報(bào)告word格式文檔
      下載C++實(shí)踐報(bào)告.doc
      將本文檔下載到自己電腦,方便修改和收藏,請(qǐng)勿使用迅雷等下載。
      點(diǎn)此處下載文檔

      文檔為doc格式


      聲明:本文內(nèi)容由互聯(lián)網(wǎng)用戶自發(fā)貢獻(xiàn)自行上傳,本網(wǎng)站不擁有所有權(quán),未作人工編輯處理,也不承擔(dān)相關(guān)法律責(zé)任。如果您發(fā)現(xiàn)有涉嫌版權(quán)的內(nèi)容,歡迎發(fā)送郵件至:645879355@qq.com 進(jìn)行舉報(bào),并提供相關(guān)證據(jù),工作人員會(huì)在5個(gè)工作日內(nèi)聯(lián)系你,一經(jīng)查實(shí),本站將立刻刪除涉嫌侵權(quán)內(nèi)容。

      相關(guān)范文推薦

        2017中南大學(xué)C++實(shí)踐報(bào)告MFC編程

        中南大學(xué) 本科生課程設(shè)計(jì)(實(shí)踐)任務(wù)書(shū)、設(shè)計(jì)報(bào)告 (大學(xué)計(jì)算機(jī)基礎(chǔ)) 題 目 學(xué)生姓名 指導(dǎo)教師 學(xué) 院 專業(yè)班級(jí) 學(xué)生學(xué)號(hào) MFC程序設(shè)計(jì)實(shí)踐報(bào)告 張雪寧 童 鍵 土木工程學(xué)院 土......

        C++可視化程序設(shè)計(jì)實(shí)踐要求

        C/C++可視化程序設(shè)計(jì)實(shí)踐安排 一、 課程設(shè)計(jì)任務(wù) 1. 學(xué)生成績(jī)管理系統(tǒng) 2. 圖書(shū)管理系統(tǒng) 3. 通訊錄管理系統(tǒng) 4. 自選 對(duì)于管理系統(tǒng)要求程序必備如下功能:(1)所有記錄保存在一個(gè)......

        c++程序?qū)嵙?xí)報(bào)告

        針對(duì)我們這學(xué)期學(xué)的c++,假期進(jìn)行了五天的實(shí)習(xí)。第一天聽(tīng)老師講實(shí)習(xí)內(nèi)容和提示的時(shí)候覺(jué)得思路挺明確的一個(gè)程序,哪有傳說(shuō)中的那么難。下午和同學(xué)討論的時(shí)候覺(jué)得很有目的,只要按......

        c++實(shí)訓(xùn)報(bào)告

        實(shí)訓(xùn)報(bào)告飛機(jī)大戰(zhàn)游戲設(shè)計(jì)與開(kāi)發(fā)********(姓名)專業(yè)名稱:______________________________ 班級(jí):______________________________ 學(xué)號(hào):______________________________信息科學(xué)......

        C++程序設(shè)計(jì)實(shí)習(xí)報(bào)告

        目錄 一、實(shí)習(xí)內(nèi)容…………………………………………………………………………1 二、設(shè)計(jì)思路…………………………………………………………………………2 三、程序清單…......

        c++課程實(shí)踐火車票管理系統(tǒng)

        #include #include #include #include #include using namespace std; class Bus_infor { int No; static int Bus_No; char start[20]; char end[20]; int Bus_order......

        北科大暑期C++程序?qū)嵺`心得

        北科大小學(xué)期C++游戲編程心得 ——徐松松 41345053 一直不知道北科大的小學(xué)期是什么樣子,經(jīng)過(guò)了三周的小學(xué)期課程的學(xué)習(xí),終于揭開(kāi)了小學(xué)期的神秘面紗,學(xué)的課程和平時(shí)的理論課不......

        C++課程設(shè)計(jì)實(shí)訓(xùn)報(bào)告

        大連科技學(xué)院 C++課程設(shè)計(jì)報(bào)告 題目稿件管理數(shù)據(jù)系統(tǒng) 小組成員呂榮興 學(xué)生姓名 呂榮興 專業(yè)班級(jí)信管10-1班所在系部 信息科學(xué)系指導(dǎo)教師 曾維佳 職稱 講師目 錄 一 題目 .......