• <tr id="yyy80"></tr>
  • <sup id="yyy80"></sup>
  • <tfoot id="yyy80"><noscript id="yyy80"></noscript></tfoot>
  • 99热精品在线国产_美女午夜性视频免费_国产精品国产高清国产av_av欧美777_自拍偷自拍亚洲精品老妇_亚洲熟女精品中文字幕_www日本黄色视频网_国产精品野战在线观看 ?

    Sqlite實(shí)現(xiàn)學(xué)生考證練習(xí)軟件

    2019-04-28 05:58:00梁連旺
    電子技術(shù)與軟件工程 2019年3期
    關(guān)鍵詞:交卷判斷題數(shù)組

    文/梁連旺

    軟件主要由Sqlite輕量級(jí)數(shù)據(jù)庫(kù)搭配Eclipse ADT編寫(xiě)而成。Sqlite是嵌入式的,它占用資源非常的低,在嵌入式設(shè)備中,只需要幾百K的內(nèi)存就足夠。同時(shí)它還有ODBC接口,能跟很多程序語(yǔ)言相結(jié)合,處理速度快。所以利用Sqlite處理數(shù)據(jù)是一個(gè)非常好的選擇。

    1 Sqlite打開(kāi)數(shù)據(jù)庫(kù)的操作

    Eclipse已經(jīng)集成了Sqlite插件,只要對(duì)Sqlite進(jìn)行初始化就可以使用。在Eclipse的Package Explorer結(jié)構(gòu)體中,進(jìn)入“src→com.example.項(xiàng)目名稱(chēng)”,建立MySQL類(lèi),將Sqlite常用到的方法構(gòu)建于此類(lèi)中,類(lèi)中的具體內(nèi)容有:

    (1)onCreate方法。當(dāng)發(fā)現(xiàn)不了目標(biāo)時(shí)建立一個(gè)同名的數(shù)據(jù)庫(kù)。

    public void onCreate(SQLiteDatabase arg0)

    {buildDatabase();}

    (2)onUpgrade方法:用于當(dāng)數(shù)據(jù)庫(kù)升級(jí)事件。

    (3)數(shù)據(jù)庫(kù)的打開(kāi)方法:

    public MySQL(Context context, String name, CursorFactory factory, int version)

    {super(context, name, null, version); }

    將要打開(kāi)的數(shù)據(jù)庫(kù)的信息按照context,name,factory,version填寫(xiě)好,函數(shù)MySQL就會(huì)直接調(diào)用內(nèi)置方法打開(kāi)數(shù)據(jù)庫(kù),并調(diào)入內(nèi)存以供使用。

    編寫(xiě)好的類(lèi)將會(huì)在需要的時(shí)候被其它模塊調(diào)用,具體的調(diào)用方法是:定義 MySQL sql;打開(kāi)數(shù)據(jù)庫(kù):sql=new MySQL(this,path,null,1);其中,path是需要打開(kāi)的數(shù)據(jù)庫(kù)的具體位置及名稱(chēng)。

    2 構(gòu)建人機(jī)交互界面

    APP顯示界面中,顯示出要練習(xí)的題庫(kù)號(hào),學(xué)生姓名,題目,四個(gè)可選答案(判斷題則隱藏后面兩個(gè)選項(xiàng))等相關(guān)信息。同時(shí)還有上、下一題,完成交卷,顯示答案等功能按鈕

    3 控件與數(shù)據(jù)庫(kù)內(nèi)容相對(duì)應(yīng)

    數(shù)據(jù)庫(kù)打開(kāi)后,要進(jìn)行相關(guān)的內(nèi)容篩選,如題庫(kù)號(hào)、是否按順序等,記錄的篩選:select* from xuanz where NO like "+"'"+"3"+values.sele_th+"%"+"'"。這是將選擇題從選擇題庫(kù)篩選出來(lái),sele_th是題庫(kù)號(hào),在別的頁(yè)面輸入,如第5套題,則sele_th的值為5??偟恼Z(yǔ)句表達(dá)的意思就是:select * from xuanz where NO like “305%”在選擇題題庫(kù)中將NO字段前面為305的所有記錄篩選出來(lái)。判斷題的操作方法與選擇題一樣,只是庫(kù)不同。

    控件與數(shù)據(jù)的關(guān)聯(lián)則要用到數(shù)據(jù)庫(kù) 中 的 指 針 變 量cursor:cursor=sql.getReadableDatabase().rawQuery(sele_xuanze,null); “sele_xuanze”變量替代了上面的SQL語(yǔ)句,以增加重復(fù)性與可讀性。記錄篩選出來(lái)以后,要及時(shí)把所有的記錄轉(zhuǎn)移到數(shù)組上,從而釋放出內(nèi)存空間,并關(guān)閉數(shù)據(jù)庫(kù)。用遍歷的方法把指向的數(shù)據(jù)記錄轉(zhuǎn)移到數(shù)組上(選擇題為160題,判斷題為40題):

    復(fù)制到數(shù)組的7個(gè)元素中,第一個(gè)為題目的題號(hào),第二個(gè)為題目?jī)?nèi)容,第三到第六個(gè)分別為A、B、C、D四個(gè)選項(xiàng),第七項(xiàng)為參考答案。而判斷題的操作方法也與選擇題的一致,但要對(duì)答案C、D進(jìn)行隱藏處理。題號(hào)改變時(shí),每按一次“下一題”或“上一題”按鈕,rec_pointer相應(yīng)加1或減1,實(shí)現(xiàn)內(nèi)容的動(dòng)態(tài)改變。

    4 評(píng)分功能的實(shí)現(xiàn)

    這功能的實(shí)現(xiàn)也要應(yīng)用到數(shù)組變量。在定義result數(shù)組時(shí)多定義一列為result[i][7],用于存放用戶的答案。在交卷時(shí),通過(guò)if(result[i][7].equals(result[i][6]))進(jìn)行對(duì)比,當(dāng)返回true時(shí)比對(duì)加0.5分,false時(shí)不加分,最后顯示總分。所有數(shù)據(jù)對(duì)比的操作:

    通過(guò)此方法,學(xué)生可以在完成測(cè)試以后直接了解自己的成功率,達(dá)到練習(xí)的目的,起到一個(gè)積極的促進(jìn)作用。同時(shí)礙于篇幅的關(guān)系,程序的一些其它功能(如實(shí)時(shí)顯示答案,交卷后重新查看答案等)不在這里鋪述。

    猜你喜歡
    交卷判斷題數(shù)組
    中國(guó)首顆探日衛(wèi)星,交卷啦
    軍事文摘(2023年10期)2023-06-09 09:13:44
    JAVA稀疏矩陣算法
    出乎意料
    推理判斷題
    JAVA玩轉(zhuǎn)數(shù)學(xué)之二維數(shù)組排序
    遲交卷的人
    阿伏加德羅常數(shù)判斷題的常見(jiàn)應(yīng)對(duì)方法
    失望萬(wàn)分
    尋找勾股數(shù)組的歷程
    VB數(shù)組在for循環(huán)中的應(yīng)用
    考試周刊(2012年88期)2012-04-29 04:36:47
    蕲春县| 汕头市| 沭阳县| 新乡县| 宣武区| 平遥县| 泗水县| 美姑县| 鱼台县| 荣成市| 阿拉善盟| 日喀则市| 西青区| 资阳市| 黎城县| 徐州市| 四会市| 肃南| 叙永县| 松潘县| 颍上县| 德保县| 天全县| 东丽区| 无为县| 丰原市| 博罗县| 鄱阳县| 叶城县| 宁蒗| 岚皋县| 西丰县| 博湖县| 黄陵县| 于田县| 靖远县| 新营市| 五莲县| 阿拉善左旗| 北安市| 巫溪县|