當前位置:才華齋>計算機>計算機三級>

計算機三級《資料庫技術》上機題庫及答案

計算機三級 閱讀(3.21W)

已知資料檔案中存有300個四位數,並已呼叫讀函式readDat()把這些數存入陣列a中,請編制一函式jsValue(),其功能是:求出所有這些四位數是素數的個數cnt,再把所有滿足此條件的四位數依次存入陣列b中,然後對陣列b的四位數按從小到大的順序進行排序。最後main()i函式呼叫寫函式writeDat()把陣列b中的`數輸出到檔案中。

計算機三級《資料庫技術》上機題庫及答案

例如:5591是素數,則該數滿足條件存入陣列b中,且個數cnt=cnt+1。

9812是非素數,則該數不滿足條件忽略。

注意:部分源程式存在test.C檔案中。

程式中已定義陣列:a[300],b[300],已定義變數:cnt

  [答案及解析]

【審題關鍵句】求素數的個數,存入陣列,按從小到大的順序排序。

  【解題思路】

①首先定義兩個迴圈變數迴圈i、j和一個用於資料交換的整型變數tmp。

②通過for迴圈依次讀取陣列中的300個數,其中,迴圈變數i從0開始每次加1,直到i<300停止迴圈;在每次迴圈中判斷a[i]是否是素數,如果是素數,則把a[i]的值賦給陣列b[cnt],同時陣列下標變數cnt值加1。

③在退出迴圈後,用兩個for迴圈對陣列b[]中元素進行兩兩比較,實現陣列元素從小到大的排序,比較過程中通過整型變數tmp實現兩個數的交換。

  【參考答案】