第一篇:C++程序筆記
一:'CRecordset' : base class undefined
解決方法:在工程的StdAfx.h頭文件中添加:#include
二: m_dlg.m_database.Open(_T(“addresslist”));// 這個(gè)在編譯時(shí)會(huì)出現(xiàn)錯(cuò)誤,解決辦法:可以同上:#include
三:建了一個(gè)控件,但想在類向?qū)Ю锩娑x該控件的函數(shù)時(shí)找不到控件ID號(hào)(原因:是因?yàn)樾薷牧酥鲗?duì)話框的ID號(hào))
主對(duì)話框.h 中把emun{中改成相應(yīng)的ID_Dlg}
四:設(shè)置窗體背景的顏色:
在主窗體APP文件里代碼:SetDialogBkColor(RGB(200,223,200),RGB(0,0,255));
五:CAddressDlg::OnClose()
這個(gè)函數(shù)里面有KillTimer(0).六:連接數(shù)據(jù)庫(kù),m_recordset->Open(AFX_DB_USE_DEFAULT_TYPE,strSQL);//從數(shù)據(jù)庫(kù)中查找,輸入的密碼是否正確
七:當(dāng)控件在類向?qū)Ю餂]有顯示其ID號(hào)時(shí),將其屬性里的組勾選即可~
說明:這里跟三不同
八:不能訪問類查看信息文件 解決辦法
解決辦法為:刪除掉目錄中clw及ncb文件,再打開,就可以了。
九:當(dāng)單擊右鍵沒看到“Add Windows Message Handler”時(shí),更換.clw/.ncb文件即可
十:?jiǎn)尾秸{(diào)試到RefreshData()時(shí)總是出現(xiàn)“FROM 語(yǔ)法錯(cuò)誤”
解決辦法:完成MainDlg()里面的顯示工作區(qū)表格的代碼后,這個(gè)問題沒有了。
十一:Visual Assist X這是一個(gè)軟件,可以幫助C++有個(gè)更友好的顯示界面。
十二:實(shí)現(xiàn)窗體的伸縮功能:
OnRadioSearch();SizeWindow();
十三:Address工程里,當(dāng)點(diǎn)擊右邊修改記錄時(shí),會(huì)出現(xiàn)系統(tǒng)報(bào)錯(cuò)
解決辦法:
對(duì)修改記錄所需彈出的窗口進(jìn)行完整,像在類向?qū)Ю锩嫣砑犹幚砀鞣N消息的函數(shù)
十四:AboutDlg彈出窗口設(shè)計(jì)一直說AboutDlg
最后新建了一個(gè)CAboutdlg1,并修改源代碼,最后功能實(shí)現(xiàn)了
初步查找原因:元工程里面缺少的類CAboutDlg定義在AddressDlg.cpp里面,這才是原因,CAboutDlg應(yīng)該需要定在Aboutdlg.h里面才行~
嗯!驗(yàn)證了,就是這個(gè)原因。
其實(shí)沒有這么復(fù)雜:只要按照錯(cuò)誤的提示建立自己的類啊、頭文件啊、CPP文件就好了~~~
十五:AddInfo窗體錄入數(shù)據(jù)出錯(cuò):說“姓名一定要填寫!然后出現(xiàn)系統(tǒng)錯(cuò)誤”解決辦法:
一下兩個(gè)地方的 // NOTE: the ClassWizard will add member initialization here需要填寫!!:
1.CAddInfoDlg::CAddInfoDlg(CWnd* pParent /*=NULL*/)
: CDialog(CAddInfoDlg::IDD, pParent)
2.void CAddInfoDlg::DoDataExchange(CDataExchange* pDX)
這里如果缺少1,會(huì)出現(xiàn)下面的系統(tǒng)錯(cuò)誤:
由于將在索引、主關(guān)鍵字、或關(guān)系中創(chuàng)建重復(fù)的值,請(qǐng)求對(duì)表的改變沒有成功。改變?cè)撟侄沃械幕虬貜?fù)數(shù)據(jù)的字段中的數(shù)據(jù),刪除索引或重新定義索引以允許重復(fù)的值并再試一次。
十六:模糊查詢及精確查詢均用不了:都顯示“請(qǐng)輸入關(guān)鍵字”
在差錯(cuò)過程中完整如下代碼后出現(xiàn)系統(tǒng)錯(cuò)誤
BOOL CMainDlg::PreTranslateMessage(MSG* pMsg)
十七:組合框設(shè)置默認(rèn)值實(shí)現(xiàn)不了~
可實(shí)現(xiàn)的方法(但是在我的程序里沒用!)
//默認(rèn)“姓名”項(xiàng)被選中
m_ctrlfield.SetCurSel(0);
成功實(shí)現(xiàn),關(guān)鍵:將SetCurSel()函數(shù)放在AddString()后面就可以了
十八:當(dāng)加入DoDataExchange(CDataExchange* pDX)時(shí)中的代碼時(shí),運(yùn)行報(bào)系統(tǒng)錯(cuò)誤,編譯沒問題,已移植問題文件夾~
相關(guān)發(fā)現(xiàn):在定義整形變量時(shí)有一種整形變量的description是:
int with validation(FOREIGN VALIABLE)這種變量的定義方法是
在DoDataExchange()函數(shù)中使用如下語(yǔ)句:
DDX_FieldText(pDX, IDC_CATNUM, m_pSet2->m_cat, m_pSet2);
當(dāng)在CTestDBDoc.h文件中申明CMyRSet m_MyRSet;后便可以定義上述變量。
十八_2: DDX_FieldText()不知道怎么產(chǎn)生;
十九:ADOTest窗口彈不出來
解決方法:在建立MFC工程的時(shí)候?qū)⑦x項(xiàng)里的Base類由CView改為CFormView
二十:如何定義_ConnectionPtr型變量
在stdafx.h文件中加入代碼:#import “c:program filescommon filessystemadomsado15.dll” no_namespace rename(“EOF”,“adoEOF”)
見博客:#post
二十一:當(dāng)寫到try{}是出現(xiàn)錯(cuò)誤
解決方法:在后面添加catch{}代碼,因?yàn)閠ry與catch對(duì)應(yīng)__try與__finally;try模塊后面要跟上catch
二十二:ADOTest連接數(shù)據(jù)庫(kù)失敗
原因:ADOTest1.cpp中
hr = m_pConnection->Open(“Provider=Microsoft.Jet.OLEDB.4.0;Data Source=test.mdb”,“",”",adModeUnknown);///連接數(shù)據(jù)庫(kù)
數(shù)據(jù)庫(kù)test.mdb沒有建立。
二十三:ADOTest刪除按鍵為灰色框扭按不下去。無語(yǔ)了:原來是沒有選中要被刪除的選項(xiàng)
不過要將OnItemchangedUserlist()中的代碼添加完全
二十四:Address的Login對(duì)話框類中的消息處理函數(shù)WM_Close有什么用WM_CLOSE是可選的,可以給你一個(gè)機(jī)會(huì)決定關(guān)不關(guān)
WM_DESTROY你沒有得選擇,因?yàn)镈estroyWindow已經(jīng)調(diào)用,窗口已經(jīng)開始銷毀。
二十五:使用CDataBase類定義對(duì)象時(shí)出現(xiàn)問題,原因是沒有定義這個(gè)類在添加CPersonSet類后問題很多很多:有26個(gè)此類錯(cuò)誤
見“一”
二十六:出現(xiàn)如:'m_database' : is not a member of 'CAddInfoDlg'的錯(cuò)誤提示時(shí)應(yīng)在CAddInfoDlg中定義m_database量
二十七:點(diǎn)擊查詢后沒有反應(yīng),不管精確查詢還是模糊查詢
原來是OnRadio1()中的 m_bsearchflag沒有賦值
第二篇:c++程序?qū)嵙?xí)報(bào)告
針對(duì)我們這學(xué)期學(xué)的c++,假期進(jìn)行了五天的實(shí)習(xí)。第一天聽老師講實(shí)習(xí)內(nèi)容和提示的時(shí)候覺得思路挺明確的一個(gè)程序,哪有傳說中的那么難。下午和同學(xué)討論的時(shí)候覺得很有目的,只要按部就班的完成各步操作就可以了,有難度的也只是第二步。這一步要進(jìn)行判斷,這就需要多個(gè)輸出函數(shù);還要冒泡法給工作排序,工資的計(jì)算不是在類中完成的——挺棘手的一個(gè)問題。
第二天上機(jī)的時(shí)候也很快完成了第一步,覺得還行,慢慢來五天完全可以完成。后來也就沒怎么好好思考,沒想到第二天遇到麻煩了,編不出第二步了。第三天下午也沒調(diào)試好,第一步輸入的數(shù)據(jù)在第二步統(tǒng)計(jì)的時(shí)候怎么也數(shù)不出來,我從頭至尾研究了多次,沒發(fā)現(xiàn)一點(diǎn)問題,請(qǐng)舍友幫我檢查也說沒錯(cuò),到了傍晚還是看不出來。哎!又找一個(gè)人給我看了看,竟然錯(cuò)得那么幼稚,類外定義了全局對(duì)象,在數(shù)據(jù)輸入put()函數(shù)里又重新定義了對(duì)象,這樣在put()輸入的數(shù)據(jù)無法用到其他函數(shù)中,自然統(tǒng)計(jì)的時(shí)候都是默認(rèn)值了。
就這么一個(gè)小小的錯(cuò)誤整得我一天一晚上寢食難安。
編程序時(shí)深深感受到要不得半點(diǎn)馬虎,有時(shí)少一個(gè)“}”或“<”都會(huì)導(dǎo)致程序語(yǔ)法錯(cuò)誤;由于編程序經(jīng)常要變換輸入法,很容易輸進(jìn)中文字符,這也會(huì)導(dǎo)致語(yǔ)法錯(cuò)誤;調(diào)用類里重名函數(shù)時(shí)要注明屬于哪個(gè)類的。
第三天的時(shí)候第二步基本都編出來了,傍晚那時(shí)我沒檢查出錯(cuò)誤來的時(shí)候,實(shí)在是把我急壞了,借了臺(tái)電腦,在那安靜專心的研究程序,舍友幫我檢查出錯(cuò)誤來之后,編程序有了感覺,那時(shí)已經(jīng)22:00多了,竟然沒有一絲睡意。
后來舍友們陸續(xù)睡覺了,可我就是不愿睡。可能是出于自尊心需要,別人都編出來了,自己編不出來,讓我無法接受;也可能是第二步出來了急于盡快搞定。從19:00到凌晨4:00一直在那兒編程序了,一次次地聽到鈴聲響竟然沒有上床睡覺的沖動(dòng),滿腦袋只有一個(gè)想法:認(rèn)真編程序,爭(zhēng)取晚上搞定。后來差不多了,只有備份不怎么完善,當(dāng)時(shí)電腦已經(jīng)用了好長(zhǎng)時(shí)間了,實(shí)在不忍心一直用人家的電腦,只好關(guān)機(jī)睡覺了。
這幾天可以說是兩耳不聞窗外事,一心只顧編程序了,電話都懶得打,只想盡快把程序搞定,晚上沒有電腦用,我們?nèi)齻€(gè)女生就去網(wǎng)吧,只是那兒沒有vusual-c++,只好作罷。
雖然我們一直在編程序,覺得挺累的,其實(shí)還有比我們更累的——我們的老師。我們是每天只有半天的實(shí)習(xí)時(shí)間,可是老師卻整天在機(jī)房里,看得出來,老師連坐下休息的時(shí)間都沒有,剛要喝點(diǎn)水,立馬就被一個(gè)同學(xué)叫去了,實(shí)習(xí)完那天下午看見老師都不想走路了。太累了,一天站7小時(shí),還一直給別人檢查程序,太忙了。想想老師這么認(rèn)真,我們還有什么理由不認(rèn)真呢?
只有五天的實(shí)習(xí),卻讓我受益匪淺:這不僅是一次對(duì)我們的c++掌握和運(yùn)用的熟練程度的檢查,更是一次磨練我們耐性、培養(yǎng)認(rèn)真態(tài)度的機(jī)會(huì)。這次實(shí)習(xí)讓我深刻體會(huì)到“細(xì)節(jié)決定成敗,態(tài)度決定一切”;更讓我 從 老師身上學(xué)到了很多在以后工作中需要的優(yōu)秀品質(zhì)。相信這會(huì)在我今后的學(xué)習(xí)和以后的工作很有幫助。
通過完成本次面向?qū)ο蟪绦蛟O(shè)計(jì)的任務(wù),使我熟練和掌握了上學(xué)期所學(xué)的有關(guān)visual c++中的一些主要知識(shí)點(diǎn)和應(yīng)用點(diǎn),如類的定義,類的實(shí)現(xiàn),對(duì)象的定義,類的繼承等等。可以所學(xué)有所學(xué),所有所用,不至于自己所學(xué)知識(shí)由于沒有經(jīng)歷可用過程,而放棄對(duì)它的興趣。
第一天上課時(shí)候聽老師講,第一反應(yīng)是這可怎么做了。當(dāng)時(shí)有些迷茫。但是事在人為,下午回去之后在宿舍苦心研究,終于在整體上有了一定的把握。我們可以先定義一個(gè)基類,再派生三個(gè)子類,然后在類外定義函數(shù)。有人數(shù)規(guī)定,我們就定義相應(yīng)長(zhǎng)度的對(duì)象數(shù)組,最后在實(shí)現(xiàn)程序功能時(shí),用函數(shù)調(diào)用就行。
于是當(dāng)晚很快就完成了第二天的預(yù)習(xí)報(bào)告,上機(jī)調(diào)試時(shí)也沒什么大問題,就這樣第二天順利通過。
雖說接下來的統(tǒng)計(jì)沒那么容易,但就順著數(shù)據(jù)順利輸入的喜悅心情,我還是較好的完成了這個(gè)任務(wù)。在類外定義一個(gè)函數(shù)用來輸出雇員的基本情況,表頭,表尾直接在統(tǒng)計(jì)函數(shù)中輸出,也就是在統(tǒng)計(jì)函數(shù)中調(diào)用函數(shù)。打印與統(tǒng)計(jì)有異曲同工之妙,所以在統(tǒng)計(jì)做出之后,打印自然而然的也就很快完成了。
接下來的數(shù)據(jù)備份中,遇到了一個(gè)小問題,一開始以為也是函數(shù)中調(diào)用打印函數(shù)中用的那函數(shù)。其實(shí)不然,如若那樣,又變成了打印。那我們就直接輸出,但詳細(xì)資料是受保護(hù)的,不能直接輸出,那還得調(diào)用函數(shù)。于是在每個(gè)類中的公共成員中定義了直接返回的函數(shù),接下來順利完成了備份。調(diào)用頭文件
里的exit(int)函數(shù),可以用if()語(yǔ)句進(jìn)行判斷是否確定退出。程序順利完成。
面向?qū)ο蟪绦蛟O(shè)計(jì)作為一門軟件設(shè)計(jì)的課程,具有極強(qiáng)的實(shí)踐性,使我加強(qiáng)了靈活應(yīng)用理論知識(shí)的能力及面向?qū)ο蟪绦蛟O(shè)計(jì)技能。
此次,應(yīng)用程序的設(shè)計(jì)和創(chuàng)建,經(jīng)歷了平時(shí)在課堂中和考試中,決不會(huì)有的重重難題和問題。而這些問題,又都是課本上很少提到的、更深一層的知識(shí)領(lǐng)域和應(yīng)用領(lǐng)域。這些問題,并不是我們平時(shí)只靠課本,就可以輕易解決的。所以,鍛煉了我們面對(duì)難題,自己思索,自己探索,自己查資料發(fā)現(xiàn)問題、解決問題的獨(dú)斷能力。
當(dāng)然,此次任務(wù)的完成,也體現(xiàn)出同學(xué)之間的團(tuán)結(jié)精神。所遇種種難以解決的問題,大家都會(huì)把它當(dāng)作共同遇到的問題,在一起共同探討,共同發(fā)揮自己所學(xué)和所知,投入式的互相幫助和解決困難。
第三篇:火車訂票系統(tǒng)c++程序
/* 頭文件 */ #include
#include
#include
char lt[10];//開車時(shí)間 char at[10];//到達(dá)時(shí)間 int count;//票數(shù) }s[N];/* 全局變量 */ int i;//輸入計(jì)數(shù)器 int m=0;//合計(jì)計(jì)數(shù)器 char l[20];//糾錯(cuò)空間 /* 函數(shù)聲明 */ void INPUT();//輸入車次信息 void PRINTF();//輸出車次信息 void save();//保存車次信息 void read();//讀取車次信息 void search();//查找車次信息 void dingpiao();//訂票信息 void tuipiao();//退票信息 void WRONG();//糾錯(cuò)模塊
///////////////////////////////////////////////////////////////////////////////////////主函數(shù) void main(){
int j;do { system(“cls”);//清屏語(yǔ)句 printf(“ *************************************************************n”);printf(“ 歡迎進(jìn)入火車票務(wù)管理系統(tǒng) n”);printf(“ *************************************************************”);printf(“ n
請(qǐng)輸入選項(xiàng) nn”);printf(“ 1.添加列車信息 nn” “
2.查找 nn” “
3.訂票 nn” “
4.退票 nn” “
5.退出 nn”);printf(“ *************************************************************nn”);printf(“請(qǐng)選擇: ”);scanf(“%d”,&j);gets(l);
switch(j){ case 1: INPUT();//調(diào)用輸入模塊 break;case 2:search();//調(diào)用查找模塊 break;case 3:dingpiao();//調(diào)用訂票模塊 break;case 4:tuipiao();//調(diào)用退票模塊 break;case 5:;break;default:WRONG();break;} }while(j!=5);//判斷結(jié)束
printf(“n
王志強(qiáng)
1241班 201210913124 n ”);printf(“n--------”);
printf(“n 正在退出,請(qǐng)按任意鍵退出”);
printf(“n--------n ”);}//主函數(shù)結(jié)束
//////////////////////////////////////////////////////////////////////////////////////////輸入模塊 void INPUT(){
int y;
system(“cls”);printf(“n ====================歡迎進(jìn)入 錄入火車時(shí)刻信息 界面====================nn”);for(i=0;i printf(“請(qǐng)輸入車次號(hào): ”);scanf(“%s”,&s[i].code);//讀取車次號(hào) printf(“請(qǐng)輸入站數(shù): ”);scanf(“%s”,&s[i].data);//讀取站數(shù) printf(“請(qǐng)輸入起始站: ”);scanf(“%s”,s[i].lp);//讀取起始站 printf(“請(qǐng)輸入終點(diǎn)站: ”);scanf(“%s”,s[i].ap);//讀取終點(diǎn)站 printf(“請(qǐng)輸入開車時(shí)間: ”);scanf(“%s”,s[i].lt);//讀取開車時(shí)間 printf(“請(qǐng)輸入到達(dá)時(shí)間: ”);scanf(“%s”,s[i].at);//讀取到達(dá)時(shí)間 printf(“請(qǐng)輸入車票數(shù): ”);scanf(“%d”,&s[i].count);//讀取票數(shù) m++; printf(“第%d個(gè)信息已經(jīng)輸完.按任意鍵繼續(xù),按 0 結(jié)束: ”,m);scanf(“%d”,&y);gets(l);if(y==0){ save();//將結(jié)構(gòu)體信息存盤 PRINTF();//輸出輸入的列車信息 printf(“n 按任意鍵返回上級(jí)菜單: ”);gets(l);break;} } } ////////////////////////////////////////////////////////////////////////保存模塊程序 void save(){ FILE *fp,*fp1;//定義文件指針 if((fp=fopen(“chen.dat”,“wb”))==NULL)//打開文件并判斷是否出錯(cuò) { printf(“創(chuàng)建文件失敗!nn”);//打印出錯(cuò)提示 getchar();return;} if((fp1=fopen(“hao.dat”,“wb”))==NULL)//打開文件并判斷是否出錯(cuò) { printf(“創(chuàng)建文件失敗!nn”);//打印出錯(cuò)提示 getchar();return;} for(i=0;i printf(“向文件輸入數(shù)據(jù)失敗!nn”);fprintf(fp1,“%d”,m);fclose(fp);//關(guān)閉文件 fclose(fp1);//關(guān)閉文件 } ///////////////////////////////////////////////////////////////////////文件讀取模塊 void read(){ FILE *fp,*fp1;//定義文件指針 if((fp=fopen(“chen.dat”,“rb”))==NULL)//打開文件,并判斷是否出錯(cuò) { printf(“出錯(cuò),請(qǐng)檢查文件是否存在,按任意鍵返回住菜單”);//打印出錯(cuò)提示 getchar();} if((fp1=fopen(“hao.dat”,“rb”))==NULL)//打開文件并判斷是否出錯(cuò) { printf(“創(chuàng)建文件失敗!nn”);//打印出錯(cuò)提示 getchar();return;} fscanf(fp1,“%d”,&m);fclose(fp1);//關(guān)閉文件 for(i=0;i //////////////////////////////////////////////////////////////////////////////查詢模塊 void search(){ char name1[20];char name2[20];char ii[10];int nk;char no[10];do { system(“cls”);//清屏語(yǔ)句 printf(“nn ====================歡迎進(jìn)入 查詢火車時(shí)刻信息 界面====================n”); printf(“n ++++++++++++++++++請(qǐng)選擇查找方式++++++++++++++++++nn”); printf(“ ----1.顯示所有列車信息 2.按車次查詢 3.按始發(fā)站查詢----n”); printf(“ -----4.按終點(diǎn)站查詢 5.返回主菜單----n”); printf(“n 請(qǐng)選擇: ”);scanf(“%d”,&nk);//讀取查找方式 gets(l);if(nk==5)break; switch(nk){ case 1:PRINTF();//調(diào)用打印模塊 break;case 2: printf(“請(qǐng)輸入車次號(hào):n”);scanf(“%s”,&no);//車次號(hào) break;case 3: printf(“請(qǐng)輸入始發(fā)站名稱:n”);scanf(“%s”,name1);//讀取始發(fā)站 break;case 4: printf(“請(qǐng)輸入終點(diǎn)站名稱:n”);scanf(“%s”,name2);//終點(diǎn)站 break;default: WRONG(); break;} read();//調(diào)用讀取函數(shù) for(i=0;i search();//調(diào)用查詢模塊 printf(“請(qǐng)輸入您要訂的車票數(shù)以回車鍵結(jié)束:”);scanf(“%d”,&n);//讀取所訂機(jī)票數(shù) if(n<0){ system(“cls”);WRONG();//scanf(“%s”,l);//gets(l); break;} if(s[i].count!=0&&s[i].count>=n)//判斷是否出錯(cuò) { s[i].count=s[i].count-n;//調(diào)用保存函數(shù) system(“cls”);printf(“訂票成功!nn”);printf(“ntt按任意鍵返回主菜單: ”);scanf(“%s”,l); break;} if(s[i].count break;} printf(“是否繼續(xù)?(y/n):n”);//判斷是否繼續(xù)訂票 scanf(“%s”,a);}while(!strcmp(a,“y”));//判斷結(jié)束 } ///////////////////////////////////////////////////////////////////////////////退票模塊 void tuipiao(){ int n;char a;do { search();//調(diào)用查詢模塊 printf(“請(qǐng)輸入您要退的機(jī)票數(shù)目:n”);scanf(“%d”,&n);//輸入所退票數(shù) gets(l);if(n<0)//判斷票數(shù)是否有效 { WRONG(); break;} s[i].count=s[i].count+n;do { system(“cls”);//借鑒而來的清屏語(yǔ)句,好用! printf(“nn-->退票成功<--”);printf(“nn-->繼續(xù) y,返回主菜單 n <--”); a=getchar(); gets(l); if(a!='y'&&a!='n') WRONG(); }while(a!='y'&&a!='n');}while(a!='n');//判斷并跳出循環(huán) } ///////////////////////////////////////////////////////////////////////////////////////糾錯(cuò)模塊 void WRONG(){ system(“cls”);//借鑒而來的清屏語(yǔ)句,好用! printf(“nn--->!!輸入錯(cuò)誤,請(qǐng)按任意鍵返回!!<---”);gets(l);} 針對(duì)我們這學(xué)期學(xué)的c++,假期進(jìn)行了五天的實(shí)習(xí)。第一天聽老師講實(shí)習(xí)內(nèi)容和提示的時(shí)候覺得思路挺明確的一個(gè)程序,哪有傳說中的那么難。下午和同學(xué)討論的時(shí)候覺得很有目的,只要按部就班的完成各步操作就可以了,有難度的也只是第二步。這一步要進(jìn)行判斷,這就需要多個(gè)輸出函數(shù);還要冒泡法給工作排序,工資的計(jì)算不是在類中完成的——挺棘手的一個(gè)問題。 第二天上機(jī)的時(shí)候也很快完成了第一步,覺得還行,慢慢來五天完全可以完成。后來也就沒怎么好好思考,沒想到第二天遇到麻煩了,編不出第二步了。第三天下午也沒調(diào)試好,第一步輸入的數(shù)據(jù)在第二步統(tǒng)計(jì)的時(shí)候怎么也數(shù)不出來,我從頭至尾研究了多次,沒發(fā)現(xiàn)一點(diǎn)問題,請(qǐng)舍友幫我檢查也說沒錯(cuò),到了傍晚還是看不出來。哎!又找一個(gè)人給我看了看,竟然錯(cuò)得那么幼稚,類外定義了全局對(duì)象,在數(shù)據(jù)輸入put()函數(shù)里又重新定義了對(duì)象,這樣在put()輸入的數(shù)據(jù)無法用到其他函數(shù)中,自然統(tǒng)計(jì)的時(shí)候都是默認(rèn)值了。 就這么一個(gè)小小的錯(cuò)誤整得我一天一晚上寢食難安。 編程序時(shí)深深感受到要不得半點(diǎn)馬虎,有時(shí)少一個(gè)“}”或“<”都會(huì)導(dǎo)致程序語(yǔ)法錯(cuò)誤;由于編程序經(jīng)常要變換輸入法,很容易輸進(jìn)中文字符,這也會(huì)導(dǎo)致語(yǔ)法錯(cuò)誤;調(diào)用類里重名函數(shù)時(shí)要注明屬于哪個(gè)類的。 第三天的時(shí)候第二步基本都編出來了,傍晚那時(shí)我沒檢查出錯(cuò)誤來的時(shí)候,實(shí)在是把我急壞了,借了臺(tái)電腦,在那安靜專心的研究程序,舍友幫我檢查出錯(cuò)誤來之后,編程序有了感覺,那時(shí)已經(jīng)22:00多了,竟然沒有一絲睡意。 后來舍友們陸續(xù)睡覺了,可我就是不愿睡。可能是出于自尊心需要,別人都編出來了,自己編不出來,讓我無法接受;也可能是第二步出來了急于盡快搞定。從19:00到凌晨4:00一直在那兒編程序了,一次次地聽到鈴聲響竟然沒有上床睡覺的沖動(dòng),滿腦袋只有一個(gè)想法:認(rèn)真編程序,爭(zhēng)取晚上搞定。后來差不多了,只有備份不怎么完善,當(dāng)時(shí)電腦已經(jīng)用了好長(zhǎng)時(shí)間了,實(shí)在不忍心一直用人家的電腦,只好關(guān)機(jī)睡覺了。 這幾天可以說是兩耳不聞窗外事,一心只顧編程序了,電話都懶得打,只想盡快把程序搞定,晚上沒有電腦用,我們?nèi)齻€(gè)女生就去網(wǎng)吧,只是那兒沒有vusual-c++,只好作罷。 雖然我們一直在編程序,覺得挺累的,其實(shí)還有比我們更累的——我們的老師。我們是每天只有半天的實(shí)習(xí)時(shí)間,可是老師卻整天在機(jī)房里,看得出來,老師連坐下休息的時(shí)間都沒有,剛要喝點(diǎn)水,立馬就被一個(gè)同學(xué)叫去了,實(shí)習(xí)完那天下午看見老師都不想走路了。太累了,一天站7小時(shí),還一直給別人檢查程序,太忙了。想想老師這么認(rèn)真,我們還有什么理由不認(rèn)真呢? 只有五天的實(shí)習(xí),卻讓我受益匪淺:這不僅是一次對(duì)我們的c++掌握和運(yùn)用的熟練程度的檢查,更是一次磨練我們耐性、培養(yǎng)認(rèn)真態(tài)度的機(jī)會(huì)。這次實(shí)習(xí)讓我深刻體會(huì)到“細(xì)節(jié)決定成敗,態(tài)度決定一切”;更讓我從老師身上學(xué)到了很多在以后工作中需要的優(yōu)秀品質(zhì)。相信這會(huì)在我今后的學(xué)習(xí)和以后的工作很有幫助。 通過完成本次面向?qū)ο蟪绦蛟O(shè)計(jì)的任務(wù),使我熟練和掌握了上學(xué)期所學(xué)的有關(guān)visual c++中的一些主要知識(shí)點(diǎn)和應(yīng)用點(diǎn),如類的定義,類的實(shí)現(xiàn),對(duì)象的定義,類的繼承等等。可以所學(xué)有所學(xué),所有所用,不至于自己所學(xué)知識(shí)由于沒有經(jīng)歷可用過程,而放棄對(duì)它的興趣。 第一天上課時(shí)候聽老師講,第一反應(yīng)是這可怎么做了。當(dāng)時(shí)有些迷茫。但是事在人為,下午回去之后在宿舍苦心研究,終于在整體上有了一定的把握。我們可以先定義一個(gè)基類,再派生三個(gè)子類,然后在類外定義函數(shù)。有人數(shù)規(guī)定,我們就定義相應(yīng)長(zhǎng)度的對(duì)象數(shù)組,最后在實(shí)現(xiàn)程序功能時(shí),用函數(shù)調(diào)用就行。 于是當(dāng)晚很快就完成了第二天的預(yù)習(xí)報(bào)告,上機(jī)調(diào)試時(shí)也沒什么大問題,就這樣第二天順利通過。 雖說接下來的統(tǒng)計(jì)沒那么容易,但就順著數(shù)據(jù)順利輸入的喜悅心情,我還是較好的完成了這個(gè)任務(wù)。在類外定義一個(gè)函數(shù)用來輸出雇員的基本情況,表頭,表尾直接在統(tǒng)計(jì)函數(shù)中輸出,也就是在統(tǒng)計(jì)函數(shù)中調(diào)用函數(shù)。打印與統(tǒng)計(jì)有異曲同工之妙,所以在統(tǒng)計(jì)做出之后,打印自然而然的也就很快完成了。 接下來的數(shù)據(jù)備份中,遇到了一個(gè)小問題,一開始以為也是函數(shù)中調(diào)用打印函數(shù)中用的那函數(shù)。其實(shí)不然,如若那樣,又變成了打印。那我們就直接輸出,但詳細(xì)資料是受保護(hù)的,不能直接輸出,那還得調(diào)用函數(shù)。于是在每個(gè)類中的公共成員中定義了直接返回的函數(shù),接下來順利完成了備份。調(diào)用頭文件 面向?qū)ο蟪绦蛟O(shè)計(jì)作為一門軟件設(shè)計(jì)的課程,具有極強(qiáng)的實(shí)踐性,使我加強(qiáng)了靈活應(yīng)用理論知識(shí)的能力及面向?qū)ο蟪绦蛟O(shè)計(jì)技能。 此次,應(yīng)用程序的設(shè)計(jì)和創(chuàng)建,經(jīng)歷了平時(shí)在課堂中和考試中,決不會(huì)有的重重難題和問題。而這些問題,又都是課本上很少提到的、更深一層的知識(shí)領(lǐng)域和應(yīng)用領(lǐng)域。這些問題,并不是我們平時(shí)只靠課本,就可以輕易解決的。所以,鍛煉了我們面對(duì)難題,自己思索,自己探索,自己查資料發(fā)現(xiàn)問題、解決問題的獨(dú)斷能力。 當(dāng)然,此次任務(wù)的完成,也體現(xiàn)出同學(xué)之間的團(tuán)結(jié)精神。所遇種種難以解決的問題,大家都會(huì)把它當(dāng)作共同遇到的問題,在一起共同探討,共同發(fā)揮自己所學(xué)和所知,投入式的互相幫助和解決困難。 2009-2010學(xué)年第一學(xué)期《C++程序設(shè)計(jì)》期末考試復(fù)習(xí)題周景春 程序填空(10分) 1.使執(zhí)行結(jié)果為100 #include public: Test(int aa){(○1)} int Getx(){ (○2) } private:int x;}; void main(){ Test xx(100); cout< 答案:○1 X=aa ○return X 2.下面程序是應(yīng)用C++多態(tài)性,計(jì)算矩形面積。在橫線上填寫適當(dāng)語(yǔ)句使程序正確進(jìn)行并得到給定程序結(jié)果.運(yùn)行結(jié)果: 長(zhǎng):10 寬:20 矩形面積:200 半徑:3 圓面積:28.26 # include virtualvoidshow_area()=0;};class Rectangle :public Shape{ pulic: Rectangle(double ll,double ww){L=ll;W=ww;} voidshow_area()(○3) private: float L,W;}; class Circle:public Shape{ Public: Circle(double rr){○} void show_area() cout<<”半徑:”< 面 積:”<<3.14*R*R< doubleR;};voidmain(){Shape *p;Rectangle ○;CircleC(3); P&r; p->show_area();P=&c; p->show_area();} } 答案: ○cout<<”:長(zhǎng)”<第四篇:c++程序畢業(yè)實(shí)習(xí)報(bào)告
第五篇:C++復(fù)習(xí)題 程序填空