![]() |
![]() |
![]() |
![]() |
![]() |
![]() |
![]() |
![]() |
![]() |
![]() |
![]() |
![]() |
![]() |
![]() |
![]() |
![]() |
![]() |
三級上機常見題型分析1 |
第1類按結(jié)構(gòu)體成員篩選并排序 第2類數(shù)位分解后按數(shù)篩選統(tǒng)計并排序 第3類數(shù)組排序問題 第4類迭代(遞歸)算法 第5類計算素數(shù) 第6類統(tǒng)計個數(shù)及求平均值 第7類平均值及方差 第8類整除 第9類字符串替代 第10類字符串改寫 第11類字符串排序 第12類字符移動 第13類遍歷統(tǒng)計、移動或倒排 第14類選票問題 第15類其他典型問題 [典型例題] 已知在文件IN.DAT中存有100個產(chǎn)品銷售記錄,每個產(chǎn)品銷售記錄由產(chǎn)品代碼dm(字符型4位)、產(chǎn)品名稱mc(字符型10位)、單價dj(整型)、數(shù)量sl(整型)、金額je(長整型)幾部分組成。其中:金額=單價×數(shù)量。函數(shù)ReadDat()的功能是讀取這100個銷售記錄并存入結(jié)構(gòu)數(shù)組sell中。請編制函數(shù)SortDat(),其功能要求:按產(chǎn)品名稱從小到大進行排列,若產(chǎn)品名稱相同,則按金額從小到大進行排列,最終排列結(jié)果仍存入結(jié)構(gòu)數(shù)組sell中,最后調(diào)用函數(shù)WriteDat()把結(jié)果輸出到文件OUT.DAT中。(注:本題對應(yīng)題庫第1套)。
第2類 數(shù)位分解后按數(shù)篩選統(tǒng)計并排序. [典型例題] 已知數(shù)據(jù)文件IN.DAT中存有300個4位數(shù),并已調(diào)用讀函數(shù)readDat()把這些數(shù)存入數(shù)組a中。請編制函數(shù)jsValue(),其功能是:求出千位數(shù)上的數(shù)加個位數(shù)上的數(shù)等于百位數(shù)上的數(shù)加十位數(shù)上的數(shù)的個數(shù)cnt,再把所有滿足此條件的4位數(shù)依次存入數(shù)組b中,然后對數(shù)組b的4位數(shù)按從小到大的順序進行排序,最后調(diào)用寫函數(shù)writeDat()把數(shù)組b中的數(shù)輸出到OUT.DAT文件中。(注:本題對應(yīng)題庫第11套) 第3類數(shù)組排序問題 [典型例題] 在文件IN.DAT中有200組數(shù)據(jù),每組有3個數(shù),每個數(shù)均是3位數(shù)。函數(shù)readDat()是讀取這200組數(shù)據(jù)存放到結(jié)構(gòu)數(shù)組aa中。請編制函數(shù)jsSort(),其函數(shù)的功能是:要求在200組數(shù)據(jù)中找出條件為每組數(shù)據(jù)中的第二個數(shù)大于第一個數(shù)加第三個數(shù)之和,其中滿足條件的個數(shù)作為函數(shù)jsSort()的返回值,同時把滿足條件的數(shù)據(jù)存入結(jié)構(gòu)數(shù)組bb中,再對結(jié)構(gòu)數(shù)組bb中的數(shù)據(jù)按照每組數(shù)據(jù)的第二個數(shù)加第三個數(shù)之和的大小進行降序排列,排序后的結(jié)果仍重新存入結(jié)構(gòu)數(shù)組bb中,最后調(diào)用函數(shù)writeDat()把結(jié)果bb輸出到文件OUT.DAT中。(注:本題對應(yīng)題庫第42套) |