• 
    

    
    

      99热精品在线国产_美女午夜性视频免费_国产精品国产高清国产av_av欧美777_自拍偷自拍亚洲精品老妇_亚洲熟女精品中文字幕_www日本黄色视频网_国产精品野战在线观看 ?

      C/C++程序設(shè)計練習(xí)系統(tǒng)的開發(fā)與設(shè)計

      2016-07-15 22:35何波玲
      科技傳播 2016年10期
      關(guān)鍵詞:程序設(shè)計

      何波玲

      摘 要 本文討論了一個基于C/S模式的練習(xí)系統(tǒng),為學(xué)生提供一個自主學(xué)習(xí)、提升學(xué)生學(xué)習(xí)效率的平臺。

      關(guān)鍵詞 C/C++;程序設(shè)計;聯(lián)系系統(tǒng);開發(fā)與設(shè)計

      中圖分類號 TP3 文獻(xiàn)標(biāo)識碼 A 文章編號 1674-6708(2016)163-0102-02

      提升C/C++語言的編程能力,不僅是教師關(guān)心的切實問題之一,也是大學(xué)生今后學(xué)習(xí)及提升就業(yè)競爭能力的客觀需要。C/C++語言學(xué)習(xí)中教師雖然在課堂上面講授很多種類的語法,并且也詳細(xì)闡明各類語法的使用方法,但是課程教學(xué)結(jié)束后,學(xué)生對于學(xué)過的內(nèi)容印象就會減弱。究其原因是由于學(xué)生對C/C++語言編程練習(xí)較少,特別是初期學(xué)習(xí)者,受到程序概念抽象的影響,不能快速的掌握集中的語法,因而也不能適應(yīng)形式嚴(yán)謹(jǐn)?shù)恼Z言思考,不能較好的解決問題。由此可見學(xué)習(xí)C/C++語言的最好方法是開展大量的聯(lián)系,在輸入源代碼以后運(yùn)行各類程序,觀察程序運(yùn)行的具體結(jié)果,然后才能體會程序的本質(zhì),通過練習(xí)掌握程序運(yùn)行理念,提高程序掌握技能。

      1 學(xué)生學(xué)習(xí)C/C++語言時面臨的問題

      1.1 不能熟練掌握C/C++語法

      學(xué)生在對照輸入?yún)⒖假Y料的過程中,要一面看書一面敲鍵盤,出現(xiàn)此類現(xiàn)狀的原因是由于學(xué)生對程序本身不甚熟悉,因而如果不進(jìn)行對照會出現(xiàn)字母輸錯的情況,例如,經(jīng)常出現(xiàn)的問題是大小寫、中英文、字母漏寫等情況。對于初學(xué)者,如果不能清楚了解其中的語法,那么就不能快速的找到語法錯誤,在沒有教師指導(dǎo)的前提下,會感覺不知所措,長此以往學(xué)生就容易失去學(xué)習(xí)信心和學(xué)習(xí)興趣。

      1.2 不熟悉開發(fā)環(huán)境

      學(xué)生在不熟悉開發(fā)環(huán)境的基礎(chǔ)上,聯(lián)系過程中不能很好的結(jié)合開發(fā)環(huán)境開發(fā)程序,更不能很多的開展練習(xí),所以操作不當(dāng)引發(fā)很多不必要的錯誤,并且出現(xiàn)問題會不能做出妥善處理[1]。

      1.3 參考書不準(zhǔn)確

      學(xué)生在學(xué)習(xí)時會借助參考書等書籍,但是現(xiàn)在很多市面上的參考書本身就存在錯誤,因而學(xué)生不但不能提升自己的語言開發(fā)能力,還會帶來適得其反的效果。

      2 系統(tǒng)設(shè)計概述

      針對以上提出的問題,針對初學(xué)者設(shè)計一套C/C++語言的編程練習(xí)系統(tǒng),在學(xué)生登陸系統(tǒng)以后,可以從數(shù)據(jù)庫內(nèi)下載程序題,讓學(xué)生練習(xí)。其中練習(xí)庫能夠?qū)W(xué)生輸入的源代碼、編譯、連接最后生成EXE程序,通過調(diào)用該程序,讓練習(xí)者靈活的運(yùn)用該系統(tǒng)。

      2.1 系統(tǒng)流程設(shè)計

      該系統(tǒng)流程主要是練習(xí)者登陸系統(tǒng)后,運(yùn)用練習(xí)者輸入的用戶名和密碼查找數(shù)據(jù)庫內(nèi)的服務(wù)器,如果存在該用戶,就證明登陸成功,并且能夠根據(jù)后臺操作了解該用戶類型是學(xué)生或者是管理員,判斷結(jié)束后給該用戶分配應(yīng)有的使用權(quán)限。

      如果是學(xué)生用戶,可以從服務(wù)器下載編輯好的樣例程序,根據(jù)選擇的相應(yīng)程序代碼,在顯示屏幕上面選擇源代碼,讓學(xué)生輸入相關(guān)信息。輸入過程中要求系統(tǒng)時刻監(jiān)聽鍵盤,對比輸入的代碼和樣例程序,用明顯的顏色標(biāo)識出錯誤代碼。輸入完成后,把輸入的代碼保存到臨時建立的文件夾里面,并且調(diào)用C編譯器,編譯存儲的文件,生成EXE程序,調(diào)用不斷執(zhí)行。管理用戶設(shè)置是要求增加樣例程序,可以查看學(xué)生的練習(xí)情況[2]。

      2.2 功能模塊的設(shè)計

      為了適應(yīng)系統(tǒng)功能的各項要求,需要將系統(tǒng)功能劃分為3個重要模塊,分別是系統(tǒng)管理、學(xué)生練習(xí)和教師管理。系統(tǒng)管理模塊主要的工作職責(zé)是判斷用戶登錄情況,學(xué)生練習(xí)模塊主要是統(tǒng)計學(xué)生開展練習(xí)的時間情況,控制學(xué)生的各項練習(xí)數(shù)據(jù)。教師管理模塊能夠管理練習(xí)分?jǐn)?shù)查詢學(xué)生的具體練習(xí)情況。

      2.2.1 系統(tǒng)選項模塊的設(shè)計

      該模塊的控制方式用戶設(shè)置模塊、管理員模塊和推出模塊,用戶控制模塊可以實現(xiàn)用戶口令的修改,保障整個體統(tǒng)平臺的安全性,避免非法用戶進(jìn)入系統(tǒng)中破壞系統(tǒng)內(nèi)的各類質(zhì)量。管理元設(shè)置模塊字更高一級的模式控制,主要是在該模塊中添加一部分合法用戶,或者刪除一部分用戶,或者當(dāng)用戶忘記密碼后,可以通過管理員密碼進(jìn)行查詢[3]。

      2.2.2 試題維護(hù)模塊

      試題維護(hù)模塊主要涉及內(nèi)容是增加試題、瀏覽和刪除試題,并且對應(yīng)模塊中還有不同的對應(yīng)操作模塊,運(yùn)用試題增設(shè)模塊可以隨時隨地的補(bǔ)充試題,并且添加不同類型的視圖,瀏覽和刪除試題模塊是在瀏覽過程中刪除沒有必要存在或者重復(fù)試題。

      2.2.3 試題打印模塊

      該模塊的主要構(gòu)成是選擇題、填空題和程序改錯題,通過不同模塊的組合了解不同題型,根據(jù)題型應(yīng)答不同的操作。

      2.2.4 試題生成模塊

      該模塊的主要構(gòu)成部分是2部分,包括自動生成試卷和人工生成試卷。自動生成模塊主要是針對試卷的難易程度,分為簡單、適中和較難3類,通過隨機(jī)組合生成一張標(biāo)準(zhǔn)的試卷,借助于瀏覽和打印等工作流程。人工生成試卷模塊主要是用戶根據(jù)自己的實際需求,要求生成難易不同和類型不同的試卷。

      在試卷模塊中如何針對不同類型題目選擇試卷,滿足學(xué)生的實際需求,這是該模塊開發(fā)的重點(diǎn)內(nèi)容,其中隨機(jī)產(chǎn)生的試卷作為開發(fā)的重點(diǎn)也是開發(fā)的難點(diǎn)。

      該系統(tǒng)主要是根據(jù)試卷的具體難易程度和試題難度設(shè)置不同參數(shù),實現(xiàn)試卷的隨機(jī)性抽取,對于同一張試卷其難易度更趨向多維合理性,評價方式是需要借助于學(xué)生參與考試的成績或者其他的參數(shù)做出綜合測評,根據(jù)參數(shù)試卷能夠被劃分為簡單,就是試卷內(nèi)容很簡單沒有任何難度,適中就是難易程度在學(xué)生可以接受的范圍內(nèi),較難就是有一定的難度。

      為了區(qū)分開試卷的難易情況,在系統(tǒng)運(yùn)行是要求從系統(tǒng)中找到大致的難度系數(shù),這樣做的目的是在生成試卷的過程中,系統(tǒng)有效的篩選出題庫中的題目,對系統(tǒng)的難度規(guī)定系數(shù)如下。

      難度系數(shù)范圍集中在0.3~1.0之間,難度系數(shù)范圍可以分為以下幾個檔次:

      A檔主要的難度系數(shù)定在0.3~0.4之間,通過對C類語言試題考察可以了解,這部分試題沒有太大的難度,屬于基本檔。B檔的難度系數(shù)主要定位在0.5~0.6之間,此范圍內(nèi)的語言知識是需要通過考慮,就能得到分?jǐn)?shù)的。C檔主要是0.7~0.8,該檔有著一定的難度系數(shù)和綜合性。D檔難度系數(shù)在0.9~1.0檔,該檔的難度系數(shù)較大,主要考察學(xué)生的綜合能力,要求學(xué)生對C語言知識有著深刻的認(rèn)知和理解??疾鞂W(xué)生的C語言知識,要求考察學(xué)生的基本程序知識,C語言基礎(chǔ)知識和閱讀等方面的知識,讓學(xué)生可以對該項知識有著深入淺出的理解,為了使用時更好的實現(xiàn)試卷的隨機(jī)性,就要求在試卷生生成過程中有較大的隨機(jī)性,通過取舍試卷系統(tǒng)隨機(jī)產(chǎn)生RAND(),讓系統(tǒng)每一次產(chǎn)生隨機(jī)的RAND()不同,用以賽選試題的不同表現(xiàn)方式。

      2.3 學(xué)生編輯練習(xí)功能

      該功能區(qū)主要是讓學(xué)生選擇合理的樣例程序,將各類源代碼顯示在屏幕上面,讓學(xué)習(xí)對照練習(xí)。練習(xí)中樣例程序輸入某一代碼時,系統(tǒng)需要用反色表示,這樣可以便于學(xué)生對照。學(xué)生在完成編輯以后可以繼續(xù)編譯其他的練習(xí)程序。學(xué)生開始練習(xí)以后要求學(xué)生從數(shù)據(jù)庫內(nèi)下載樣例程序,或者從本地文件找樣例程序進(jìn)行編輯。學(xué)生整體輸入?yún)^(qū)域的控制件是RichEidt實現(xiàn)。前面的反色目的是為樣例程序添加背景顏色,并且設(shè)置好RichEdit的字體樣式,其中用到字體的結(jié)構(gòu)和設(shè)置的文字背景色[4]。

      函數(shù)原型的如下:

      typdedf struct charformat

      UINT cbSize://定位特殊字節(jié)的大小

      DWORD dwMask://設(shè)置相關(guān)文字屬性信息內(nèi)容

      DWORD dwEffeets;//具體的文字設(shè)定效果

      LONG yHeight://文字的高度

      LONG yOffset://文字的偏移情況COLORREF erTextColor;//文字顏色BYTE bCharSet;//字符集

      BYTE bpitchAndFamily:??字體家族和間距情況

      cf.cbsize=sizeof (charformat2)

      cf.dwmask=cfm backcolor

      cf.crbackcolor=rgb(0、255、0)//背景顏色是紅色

      m richedit setsel(0.2)//設(shè)置處理的區(qū)域

      m richedit setsel message(EM SETCHARFORMAT. SCF SELECTION.(LPARAM)cf) 2.4 正確率統(tǒng)計設(shè)計

      學(xué)生將相關(guān)內(nèi)容輸入編輯框的同時,也會引發(fā)很多其他項目的變化,并且容易觸發(fā)相應(yīng)實踐,學(xué)生通過響應(yīng)時間可以回刁函數(shù)中的內(nèi)容,讀取學(xué)生輸入的部分程序內(nèi)容,逐一與模板進(jìn)行對比,最終判定錄入的字母數(shù)與模板程序的具體長度比率成為判讀學(xué)生正確率的 標(biāo)準(zhǔn)。

      #include using namespace std;

      int main(int argc, char* argv[]) {

      for (int i = 100; i < 1000; i++) {

      int temp = i;

      int first = temp % 10; temp /= 10;

      int second = temp % 10;

      temp /= 10;

      int third = temp % 10;

      if (i == first * first * first + second * second * second + third * third * third) {

      cout<

      }}

      return EXIT_SUCCESS;

      }

      3 結(jié)論

      本教學(xué)系統(tǒng)的開發(fā)為學(xué)生學(xué)習(xí)C/C++語言提供良好的平臺,學(xué)生通過該平臺能夠快速的掌握C/C++語言編程的各類語法知識,并且在后期訓(xùn)練中提升自己的運(yùn)用熟練度,增大學(xué)生的學(xué)習(xí)興趣,也可以為后續(xù)的課程學(xué)習(xí)打下堅實基礎(chǔ)。

      參考文獻(xiàn)

      [1]吳皖贛,董華青,蔣一君,等.中小學(xué)個性化網(wǎng)絡(luò)練習(xí)系統(tǒng)的設(shè)計與開發(fā)[J].中國教育信息化,2011(4):21-22.

      [2]馬金強(qiáng),苗志宏.程序設(shè)計類課程案例演示系統(tǒng)的設(shè)計與開發(fā)[J].武警學(xué)院學(xué)報,2013(1):19-20.

      猜你喜歡
      程序設(shè)計
      基于SolidWorks和VBA的電機(jī)階梯軸建模程序設(shè)計
      高職Java程序設(shè)計課程體系建設(shè)思考
      基于Visual Studio Code的C語言程序設(shè)計實踐教學(xué)探索
      從細(xì)節(jié)入手,談PLC程序設(shè)計技巧
      基于LabVIEW的車載充電機(jī)控制程序設(shè)計
      淺談基于C語言的計算機(jī)軟件程序設(shè)計
      高職高專院校C語言程序設(shè)計教學(xué)改革探索
      OBE理念下基于Greenfoot的Java程序設(shè)計課程教學(xué)改革
      模塊化程序設(shè)計在一體化檢定平臺中的應(yīng)用
      PLC梯形圖程序設(shè)計技巧及應(yīng)用
      商洛市| 隆昌县| 竹山县| 建阳市| 武山县| 揭阳市| 黎川县| 馆陶县| 广南县| 铜山县| 黑水县| 共和县| 修水县| 凌源市| 孝义市| 昌图县| 顺义区| 房山区| 周宁县| 安阳县| 巴林左旗| 定结县| 紫云| 北碚区| 稻城县| 建瓯市| 靖江市| 翁牛特旗| 巴林左旗| 蓬莱市| 永吉县| 丰原市| 博野县| 宁明县| 涟源市| 黄石市| 锦州市| 杭锦后旗| 贵阳市| 东城区| 江永县|