freepeople性欧美熟妇, 色戒完整版无删减158分钟hd, 无码精品国产vα在线观看DVD, 丰满少妇伦精品无码专区在线观看,艾栗栗与纹身男宾馆3p50分钟,国产AV片在线观看,黑人与美女高潮,18岁女RAPPERDISSSUBS,国产手机在机看影片

正文內(nèi)容

c語言源程序的自動(dòng)評判畢業(yè)設(shè)計(jì)論文(留存版)

2025-09-19 00:48上一頁面

下一頁面
  

【正文】 (szRegKey, %d, i)。//彈出添加文件對話框if(()==IDOK)//若按下添加文件對話框的“OK”按鈕{ build()。每次循環(huán)中首先進(jìn)行初始化操作。IID_IDocuments pDocuments(pDispDocuments)。 VERIFY_OK(pProjectsItem(Vari, amp。 CComBSTR bszStr。 MoveFile(D:\\test\\result\\,newexefile)。 if(()==IDOK) { CString StrFileName=()。 = sizeof(SECURITY_ATTRIBUTES)。 = STARTF_USESHOWWINDOW | STARTF_USESTDHANDLES。 while (true) { if(ReadFile(hRead,buffer,4095,amp。 (0, 0, LVIF_TEXT, FileName,0, 0, 0, 0)。HANDLE hRead,hWrite。 PROCESS_INFORMATION pi。 UpdateData(TRUE)。其代碼如下:if(oute!=) { if(oute==m_outEdit) {CString rightfile=D:\\test\\oute\\+filetitle+運(yùn)行正確100+.txt。為了測試出各種質(zhì)量的程序的評判結(jié)果是否正確,分別選取各文件夾中的一個(gè)程序修改使之存在語法錯(cuò)誤而無法通過編譯鏈接,選取另一個(gè)程序修改使之語法正確能夠通過編譯鏈接但輸出內(nèi)容與正確輸出不同??瞻滋幱覔舨榭丛敿?xì)信息,便可以直觀的得到評判信息了。其次,使自己更加熟悉的C語言、C++語言,以及Visual C++的開發(fā)環(huán)境,學(xué)習(xí)了以前沒有深入學(xué)習(xí)過的知識。在此,我謹(jǐn)對嚴(yán)迪新老師的悉心指導(dǎo)和幫助表示由衷的感謝! 參 考 文 獻(xiàn)[1] 羅斌. Visual C++編程技巧精選500例. 北京:中國水利水電出版社,2005[2] Charles Wright. Visual C++程序員實(shí)用大全. 北京:中國水利水電出版社,2001[3] Kris Jamsa. C/C++/C程序員實(shí)用大全C/C++/C最佳編程指南. 北京:中國水利水電出版社,2005[4] AI Steven Clayton Walnum. 標(biāo)準(zhǔn)C++寶典. 北京:電子工業(yè)出版社, 2005[5] Dale Rogerson. COM技術(shù)內(nèi)幕. 北京:清華大學(xué)出版社,1993[6] Microsoft公司. MSDN Library Visual Studio 版 附錄A 外文參考文獻(xiàn)(譯文)文獻(xiàn)一 Visual C++基礎(chǔ)第一章 句柄和消息技術(shù)內(nèi)幕也許你希望直截了當(dāng)開始研究代碼,但事實(shí)上并非如此??梢詫⑦@些句柄看作指針。 break。 // 析構(gòu)函數(shù) ~CLine()。public語句下的函數(shù)用于公有用途。// 這是一個(gè)指向CLine類的指針CLine *pMyLine。內(nèi)存泄漏在忘記釋放內(nèi)存時(shí)發(fā)生。// 下面調(diào)用CLine()pMyLine = new CLine。} 如何調(diào)用這些函數(shù)呢?下面列舉兩個(gè)例子,其中一個(gè)例子使用指針。在這種情況下,不必從頭開始創(chuàng)建新類。 CLine m_LineRight。 return。} 注意以上的函數(shù)聲明與常規(guī)C函數(shù)很相似,只是在函數(shù)名字的前面放置類名以及一對冒號(CLine:)。 請注意delete之后的[]。對于創(chuàng)建的對象在不用時(shí)需要調(diào)用delete,如同在C中調(diào)用flee釋放它們一樣。int變量是直線的終點(diǎn)。 int m_nX2。最后兩個(gè)參數(shù)用作消息的額外信息。Windows對象有很多,譬如桌面、讀取所使用的程序等等。在論文開題階段,他針對設(shè)計(jì)任務(wù)給予了很多建議。第二個(gè)就是對于編譯鏈接成功后得到的目標(biāo)程序如何運(yùn)行,在Visual C++中運(yùn)行一個(gè)exe程序有多種方法,例如可以通過ShellExecute()、WinExec()來運(yùn)行,但是考慮到需要在運(yùn)行時(shí)重定向輸入輸出數(shù)據(jù),最后決定通過新建一個(gè)進(jìn)程來運(yùn)行目標(biāo)程序,即使用CreateProcess()函數(shù)來運(yùn)行。無法通過編譯鏈接,,如圖45所示。完成系統(tǒng)的詳細(xì)設(shè)計(jì)之后,對系統(tǒng)進(jìn)行測試,同時(shí)演示出運(yùn)行時(shí)的界面,給用戶以直觀的使用幫助。 } (3). 為防止運(yùn)行時(shí)出現(xiàn)死循環(huán)等異常情況,設(shè)置進(jìn)程的運(yùn)行時(shí)間為4秒,超時(shí)則強(qiáng)制結(jié)束進(jìn)程,且判為錯(cuò)誤。si,amp。hInputRead,amp。以正確輸入編輯框中的數(shù)據(jù)作為輸入數(shù)據(jù)運(yùn)行目標(biāo)程序,如果無需數(shù)據(jù)輸入則視為輸入為空;將運(yùn)行后得到的數(shù)據(jù)存入一個(gè)字符串中。if(()==IDOK) { POSITION pos=()。//將CString類型數(shù)據(jù)輸入到char中WriteFile(hInputWrite,szInPut,strlen(szInPut),amp。 = hWrite。 CreatePipe(amp。另外,添加一個(gè)列表控件,添加一個(gè)“選擇正確程序”按鈕,一個(gè)“運(yùn)行正確程序”按鈕,一個(gè)“選擇文件”按鈕,保留默認(rèn)的“OK”按鈕和“Cancle”按鈕。這一部分代碼如下:CFileFind find。 CComPtrIConfiguration pConfig。 i lCount+1 。VERIFY_OK(m_pApplicationget_Documents(amp。//獲取文件名,帶后綴 filetitle=((39。 wsprintf(szRegKey, %d, i)。 }(4). 將選取的所有C源程序文件的絕對路徑存入列表控件后,通過AfxGetApp()WriteProfileInt將列表框項(xiàng)目總數(shù)寫入注冊表,然后以項(xiàng)目總數(shù)設(shè)置循環(huán),通過AfxGetApp()WriteProfileString依次將每個(gè)C源程序文件的絕對路徑寫入注冊表,以備編譯鏈接時(shí)使用,其代碼如下:AfxGetApp()WriteProfileInt(Configure, count,())。// CString DirectoryDebugName=D:\\test\\Debug。 } DeleteFile(sFilePath)。接著開始系統(tǒng)的具體功能實(shí)現(xiàn)階段。在每次循環(huán)中,以運(yùn)行正確程序的exe文件時(shí)的數(shù)據(jù)輸入作為運(yùn)行目標(biāo)程序的數(shù)據(jù)輸入,即使用正確輸入編輯框中的輸入數(shù)據(jù),去運(yùn)行目標(biāo)程序,得到輸出數(shù)據(jù),將此輸出數(shù)據(jù)與正確輸出編輯框中的數(shù)據(jù)比較,這兩個(gè)數(shù)據(jù)都是CString類型的。此函數(shù)的數(shù)據(jù)輸出是:編譯鏈接成功后以學(xué)號命名的存至相同文件夾下的目標(biāo)程序;編譯鏈接錯(cuò)誤后以學(xué)號為區(qū)分信息的存至結(jié)果文件夾下的評判結(jié)果。通過點(diǎn)擊此按鈕,得到“OK”按鈕按下的消息,調(diào)用編譯鏈接函數(shù)。然后每次運(yùn)行生成的目標(biāo)程序得到輸出時(shí)與編輯框中字符串比較,來得到比較結(jié)果。6. 根據(jù)比較結(jié)果得到評判結(jié)果。2.3 需要解決問題1. 存放C源程序的文件夾的組織方式和文件夾中C源程序的命名方式。 開發(fā)環(huán)境經(jīng)過與指導(dǎo)老師的交流,查閱有關(guān)資料,分析系統(tǒng)的整體情況,本系統(tǒng)更加類似于一個(gè)應(yīng)用程序,再結(jié)合自己所學(xué)知識,決定采用微軟的Visual C++集成開發(fā)環(huán)境來開發(fā)整個(gè)程序。1973年, %以上用 C改寫。 C語言簡介C語言是國際上廣泛流行的、很有發(fā)展前途的計(jì)算機(jī)高級語言。由于在編程作業(yè)的提交過程中,很多學(xué)生可能會(huì)把一些有語法錯(cuò)誤以及結(jié)果不正確的程序提交上來,這就需要花費(fèi)老師很多的精力和時(shí)間,效果也不是很好。但B語言過于簡單,功能有限。(6)可移植性好。3. 以測試數(shù)據(jù)運(yùn)行生成的目標(biāo)程序。3. 系統(tǒng)以正確輸入數(shù)據(jù)運(yùn)行生成的目標(biāo)程序(exe)。9. 在運(yùn)行目標(biāo)程序時(shí),通過管道技術(shù)來完成輸入輸出數(shù)據(jù)的重定向問題。同時(shí)每個(gè)項(xiàng)目中取的是C源程序文件的絕對路徑(包括文件名),因?yàn)橹蟮暮枚嗖僮餍枰募穆窂?,取得學(xué)號信息時(shí)也比較方便。之后通過Addin,控制整個(gè)Visual C++的開發(fā)環(huán)境,首先打開工作空間,然后載入工程,之后編譯鏈接,當(dāng)然這些都是Visual C++自動(dòng)完成的,相當(dāng)于按下了Build按鈕,這也就是使用Addin方式的關(guān)鍵所在。這里也是通過列表控件來完成選擇文件的工作,因?yàn)橹郎傻乃心繕?biāo)程序在test文件夾下的result文件夾中,所以在打開文件時(shí)直接定位到此程序所在的文件夾。為防止編譯鏈接時(shí)編譯鏈接兩次,選擇組件配置,移除Win32 Release只保留Win32 Debug。 CString sFilePath = ()。 SetFileAttributes(sPath, FILE_ATTRIBUTE_NORMAL)。 FileName = (pos)。 for (int i = 0 。//獲取文件路徑和完整文件名 stillfilename=(()(39。CopyFile(StrFile,StrDestFile,false)。VERIFY_OK(pProjectsget_Count(amp。 for (long j = 1 。d))。 } 實(shí)現(xiàn)運(yùn)行/評判對話框調(diào)用編譯鏈接函數(shù),對所有的C源程序文件進(jìn)行編譯鏈接,處理生成的目標(biāo)文件,并且先一步給出編譯鏈接不正確的C源程序文件的評判結(jié)果后,彈出運(yùn)行/評判對話框。 = sizeof(SECURITY_ATTRIBUTES)。 = sizeof(STARTUPINFO)。CString put=m_inEdit+\\n。列表控件的初始化工作與添加文件對話框中的列表控件相同。))。 = NULL。 DWORD dwWritten。bytesRead,NULL)==NULL) break。 CopyFile(D:\\test\\,errorfile,false)。圖44 編譯鏈接結(jié)束信息提示框3. 進(jìn)入運(yùn)行/評判對話框后,首先點(diǎn)擊“選擇正確程序”按鈕,選則之前生成的正確的exe程序,然后輸入正確的輸入數(shù)據(jù),這里用數(shù)字333。在整個(gè)系統(tǒng)的開發(fā)過程中,遇到的技術(shù)難點(diǎn)有三個(gè)。還有就是對于一種特殊情況不能發(fā)現(xiàn),即能夠編譯鏈接,程序的內(nèi)容其實(shí)是錯(cuò)誤的,但碰巧輸出結(jié)果與正確答案相同,這里本系統(tǒng)判為正確,而實(shí)際上是錯(cuò)誤的。例如,當(dāng)窗口獲取WM_MOVE消息后,它更改窗口的坐標(biāo),并在屏幕上重繪窗口。因?yàn)槠渌翱趧倓倧脑摯翱谏弦谱?,操作系統(tǒng)希望重繪窗口。下面用一個(gè)實(shí)例來加以說明,這個(gè)類表達(dá)一條直線。看到m_pPoint這樣的名字,就會(huì)想到這是一個(gè)指向某個(gè)點(diǎn)的類的其中一個(gè)成員變量(它是一個(gè)指針)。 所有這些代碼生成一條直線。// 將首元素設(shè)置為0pNumbers[0]=0。 m_nX2=x2。 m_nX2=x2。假設(shè)有一個(gè)類CSquare,其中有4個(gè)CLine類:class CSquare{ CLine m_LineTop。}。delete pLine。}// 這個(gè)39。請?jiān)倩剡^頭來考察CLine的構(gòu)造函數(shù)。 所有這些代碼生成一條直線。下面是調(diào)用它們的一些例子:// 下面調(diào)用 CLine()CLine MyLine。} 先簡單說說命名約定。了解這些原理后,就可以開始討論MFC了。如果不銷毀它們,最終將導(dǎo)致資源泄漏(resource leak)。所有編程的骨架都是響應(yīng)和發(fā)送消息。第五,提高了自己對于軟件工程的認(rèn)識,以前不太在意的測試工作現(xiàn)在也認(rèn)識到是軟件開發(fā)過程中的重要問題。在測試另一組無需數(shù)據(jù)輸入題目的C源程序文件后,結(jié)果也正確。選擇Visual C++菜單欄中“工具”“定制”“附加項(xiàng)和宏文件”“瀏覽”,在彈出的選擇文件對話框中首先選擇文件類型為Addins(.dll),,打開,如圖41所示,此時(shí)定制對話框中顯示已加載了dll文件。 CopyFile(D:\\test\\,errorfile,false)。memcpy(szInPut,put,20)。si)。 = TRUE。代碼如下:CString filepath=(i, 0)。 UpdateData(false)。 CreateProcess(m_exeEdit,NULL,NULL,NULL,TRUE,NULL,NULL,NULL,amp。 CreatePipe(amp。 }2. “運(yùn)行正確程序”按鈕:在選擇了題目正確的exe程序之后,在相應(yīng)的正確輸入編輯框輸入數(shù)據(jù),以此數(shù)據(jù)來運(yùn)行正確的exe程序,而如果程序是不需要數(shù)據(jù)輸入運(yùn)行后直接得到數(shù)據(jù)輸出的,則也省略掉數(shù)據(jù)輸入這一步。errorfile=D:\\test\\oute\\+filetitle+編譯錯(cuò)誤50+.txt。 VERIFY_OK(m_pApplicationBuild(VarDisp))。IID_IBuildProjectpProject(pGenProject)。pWorkspace))。for (int nWorkspaceNumber = nNumWorkspaces。 在添加文件對話框完成所有工作后,點(diǎn)擊“OK”按鈕,發(fā)出按鈕按下的消息,在AutoCommandMethod()函數(shù)中調(diào)用build()函數(shù)。 if(()==IDOK)
點(diǎn)擊復(fù)制文檔內(nèi)容
黨政相關(guān)相關(guān)推薦
文庫吧 www.dybbs8.com
備案圖鄂ICP備17016276號-1