版權說明:本文檔由用戶提供并上傳,收益歸屬內(nèi)容提供方,若內(nèi)容存在侵權,請進行舉報或認領
文檔簡介
1、題目51(整數(shù)各位打散組合運算題)沒有提供求素數(shù)函數(shù)isprime() ,可自己編制已知數(shù)據(jù)文件IN.DAT中存有200個四位數(shù),并已調(diào)用讀函數(shù)readDat()把這些數(shù)存入數(shù)組a中,請考生編制一函數(shù)jsVal(),其功能是:把千位數(shù)字和十位數(shù)字重新組成一個新的十位數(shù)(新十位數(shù)的十位數(shù)字是原四位數(shù)的千位數(shù)字,新十位數(shù)的個位數(shù)字是原四位數(shù)的十位數(shù)字),以及把個位數(shù)字和百位數(shù)字組成另一個新的十位數(shù)(新十位數(shù)的十位數(shù)字是原四位數(shù)的個位數(shù)字,新十位數(shù)的個位數(shù)字是原四位數(shù)的百位數(shù)字),如果新組成的兩個十位數(shù)均是素數(shù)且新數(shù)的十位數(shù)字均不為零,則將滿足此條件的四位數(shù)按從大到小的順序存入數(shù)組b中,并要計算滿足
2、上述條件的四位數(shù)的個數(shù)cnt。最后main()函數(shù)調(diào)用寫函數(shù)writeDat()把結(jié)果cnt以及數(shù)組b中符合條件的四位數(shù)輸出到OUT.DAT文件中。注意:部分源程序存在文件prog1.c中。程序中已定義數(shù)組:a200,b200,已定義變量:cnt請勿改動數(shù)據(jù)文件IN.DAT中的任何數(shù)據(jù)、主函數(shù)main()、讀函數(shù)readDat()和寫函數(shù)writeDat()的內(nèi)容。#include #define MAX 200int aMAX, bMAX, cnt = 0 ;int isprime(int m)int i;for(i=2;i=m/2;i+) if(m%i=0) return 0;return
3、 1;void jsVal()int i,j,qw,bw,sw,gw;int ab,cd;for(i=0;i=10&cd=10) bcnt+=ai; for(i=0;icnt-1;i+) for(j=i+1;jcnt;j+) if(bibj) qw=bi;bi=bj;bj=qw;void readDat()int i ;FILE *fp ;fp = fopen(in.dat, r) ;for(i = 0 ; i MAX ; i+) fscanf(fp, %d, &ai) ;fclose(fp) ;void main()int i ;readDat() ;jsVal() ;printf(滿足條件
4、的數(shù)=%dn, cnt) ;for(i = 0 ; i cnt ; i+) printf(%d , bi) ;printf(n) ;writeDat() ;writeDat()FILE *fp ;int i ;fp = fopen(out.dat, w) ;fprintf(fp, %dn, cnt) ;for(i = 0 ; i cnt ; i+) fprintf(fp, %dn, bi) ;fclose(fp) ;*題目52(整數(shù)各位打散組合運算題)已知數(shù)據(jù)文件IN.DAT中存有200個四位數(shù),并已調(diào)用讀函數(shù)readDat()把這些數(shù)存入數(shù)組a中,請考生編制一函數(shù)jsVal(),其功能是:把
5、千位數(shù)字和個位數(shù)字重新組成一個新的十位數(shù)(新十位數(shù)的十位數(shù)字是原四位數(shù)的千位數(shù)字,新十位數(shù)的個位數(shù)字是原四位數(shù)的個位數(shù)字),以及把百位數(shù)字和十位數(shù)字組成另一個新的十位數(shù)(新十位數(shù)的十位數(shù)字是原四位數(shù)的百位數(shù)字,新十位數(shù)的個位數(shù)字是原四位數(shù)的十位數(shù)字),如果新組成的兩個十位數(shù)均是奇數(shù)并且兩個十位數(shù)中至少有一個數(shù)能被5整除,同時兩個新數(shù)的十位數(shù)字均不為零,則將滿足此條件的四位數(shù)按從大到小的順序存入數(shù)組b中,并要計算滿足上述條件的四位數(shù)的個數(shù)cnt。最后main()函數(shù)調(diào)用寫函數(shù)writeDat( )把結(jié)果cnt以及數(shù)組b中符合條件的四位數(shù)輸出到OUT.DAT文件中。注意:部分源程序存在文件prog
6、1.c中。程序中已定義數(shù)組:a200,b200,已定義變量:cnt請勿改動數(shù)據(jù)文件IN.DAT中的任何數(shù)據(jù)、主函數(shù)main()、讀函數(shù)readDat()和寫函數(shù)writeDat()的內(nèi)容。#include #define MAX 200int aMAX, bMAX, cnt = 0 ;void jsVal()int i,thou,hun,ten,data,j;int ab,cd;for(i=0;i=10&cd=10) bcnt+=ai; for(i=0;icnt-1;i+) for(j=i+1;jcnt;j+) if(bibj) data=bi;bi=bj;bj=data;void readD
7、at()int i ;FILE *fp ;fp = fopen(in.dat, r) ;for(i = 0 ; i MAX ; i+) fscanf(fp, %d, &ai) ;fclose(fp) ;void main()int i ;readDat() ;jsVal() ;printf(滿足條件的數(shù)=%dn, cnt) ;for(i = 0 ; i cnt ; i+) printf(%d , bi) ;printf(n) ;writeDat() ;writeDat()FILE *fp ;int i ;fp = fopen(out.dat, w) ;fprintf(fp, %dn, cnt)
8、 ;for(i = 0 ; i 0,則該數(shù)滿足條件存入數(shù)組b中,且個數(shù)cnt=cnt+1。 9812,9-8-1-20,則該數(shù)不滿足條件忽略。部分源程序存在文件prog1.c中。程序中已定義數(shù)組:a300,b300,已定義變量:cnt請勿改動主函數(shù)main()、讀函數(shù)ReadDat()和寫函數(shù)writeDat()的內(nèi)容。#include int a300,b300,cnt=0;jsValue() int i,j,qw,bw,sw,gw;for(i=0;i0) bcnt+=ai; for(i=0;icnt-1;i+) for(j=i+1;jbj) qw=bi;bi=bj;bj=qw;main()
9、int i;readDat();jsValue();writeDat();printf(cnt=%dn,cnt);for(i=0;icnt;i+) printf(b%d=%dn,i,bi);readDat()FILE *fp;int i;fp=fopen(in.dat,r);for(i=0;i300;i+)fscanf(fp,%d,&ai);fclose(fp);writeDat()FILE *fp;int i;fp=fopen(out.dat,w);fprintf(fp,%dn,cnt);for(i=0;icnt;i+)fprintf(fp,%dn,bi);fclose(fp);*題目54(
10、整數(shù)各位數(shù)運算排序題)已知數(shù)據(jù)文件in.dat中存有300個四位數(shù),并已調(diào)用讀函數(shù)ReadDat()把這些數(shù)存入數(shù)組a中,請編制一函數(shù)jsValue(),其功能是:求出千位數(shù)上的數(shù)加百位數(shù)上的數(shù)等于十位數(shù)上的數(shù)加個位數(shù)上的數(shù)的個數(shù)cnt,再把所有滿足此條件的四位數(shù)依次存入數(shù)組b中,然后對數(shù)組b的四位數(shù)按從大到小的順序進行排序,最后調(diào)用寫函數(shù)writeDat()把結(jié)果輸出到out.dat文件。 例如:7153,7+1=5+3,則該數(shù)滿足條件存入數(shù)組b中,且個數(shù)cnt=cnt+1。 8129,8+12+9,則該數(shù)不滿足條件忽略。部分源程序存在文件prog1.c中。程序中已定義數(shù)組:a300,b30
11、0,已定義變量:cnt請勿改動主函數(shù)main()、讀函數(shù)ReadDat()和寫函數(shù)writeDat()的內(nèi)容。#include int a300,b300,cnt=0;jsValue() int i,j,qw,bw,sw,gw;for(i=0;i300;i+) qw=ai/1000; bw=ai/100%10; sw=ai%100/10; gw=ai%10; if(qw+bw=sw+gw) bcnt+=ai; for(i=0;icnt-1;i+) for(j=i+1;jcnt;j+) if(bibj) qw=bi;bi=bj;bj=qw;main()int i;readDat();jsValu
12、e();writeDat();printf(cnt=%dn,cnt);for(i=0;icnt;i+) printf(b%d=%dn,i,bi);readDat()FILE *fp;int i;fp=fopen(in.dat,r);for(i=0;i300;i+)fscanf(fp,%d,&ai);fclose(fp);writeDat()FILE *fp;int i;fp=fopen(out.dat,w);fprintf(fp,%dn,cnt);for(i=0;icnt;i+)fprintf(fp,%dn,bi);fclose(fp);*題目55(素數(shù)統(tǒng)計排序題)已知數(shù)據(jù)文件in.dat中存
13、有300個四位數(shù),并已調(diào)用讀函數(shù)ReadDat()把這些數(shù)存入數(shù)組a中,請編制一函數(shù)jsValue(),其功能是:求出所有這些四位數(shù)是素數(shù)的個數(shù)cnt,再把所有滿足此條件的四位數(shù)依次存入數(shù)組b中,然后對數(shù)組b的四位數(shù)按從小到大的順序進行排序,最后調(diào)用寫函數(shù)writeDat()把結(jié)果輸出到out.dat文件。例如:5591是素數(shù),則該數(shù)滿足條件存入數(shù)組b中,且個數(shù)cnt=cnt+1。9812是非素數(shù),則該數(shù)不滿足條件忽略。部分源程序存在文件prog1.c中。程序中已定義數(shù)組:a300,b300,已定義變量:cnt請勿改動主函數(shù)main()、讀函數(shù)ReadDat()和寫函數(shù)writeDat()的內(nèi)
14、容。#include int a300,b300,cnt=0;int isP(int m)int i;for(i=2;im;i+) if(m%i=0)return 0; return 1;jsValue()int i,j,value;for(i=0;i300;i+) if(isP(ai) bcnt+=ai;for(i=0;icnt-1;i+) for(j=i+1;jbj) value=bi; bi=bj; bj=value;main()int i;readDat();jsValue();writeDat();printf(cnt=%dn,cnt);for(i=0;icnt;i+) printf
15、(b%d=%dn,i,bi);readDat()FILE *fp;int i;fp=fopen(in.dat,r);for(i=0;i300;i+)fscanf(fp,%d,&ai);fclose(fp);writeDat()FILE *fp;int i;fp=fopen(out.dat,w);fprintf(fp,%dn,cnt);for(i=0;icnt;i+)fprintf(fp,%dn,bi);fclose(fp);題目56(字符替換題)函數(shù)ReadDat()實現(xiàn)從文件ENG.IN中讀取一篇英文文章,存入到字符串數(shù)組xx中;請編制函數(shù)encryptChar(),按給定的替代關系對數(shù)組x
16、x中的所有字符進行替代,仍存入數(shù)組xx的對應的位置上,最后調(diào)用函數(shù)WriteDat()把結(jié)果xx輸出到文件PS5.DAT中。替代關系:f(p)=p*11mod 256 (p是數(shù)組中某一個字符的ASCII值,f(p)是計算后新字符的ASCII值),如果計算后f(p)值小于等于32或f(p)對應的字符是小寫字母,則該字符不變,否則將f(p)所對應的字符進行替代。部分源程序存在文件prog1.c中。原始數(shù)據(jù)文件存放的格式是:每行的寬度均小于80個字符。請勿改動主函數(shù)main()、讀數(shù)據(jù)函數(shù)ReadDat()和輸出數(shù)據(jù)函數(shù)WriteDat()的內(nèi)容。#include #include #include
17、 #include unsigned char xx5080;int maxline=0;/*文章的總行數(shù)*/int ReadDat(void);void WriteDat(void);void encryptChar() int i,j;for(i=0;imaxline;i+) for(j=0;jstrlen(xxi);j+) if(xxij*11%256=a&xxij*11%256=z) continue; else xxij=xxij*11%256;void main()clrscr();if(ReadDat()printf(數(shù)據(jù)文件ENG.IN不能打開!n007);return;enc
18、ryptChar();WriteDat();int ReadDat(void)FILE *fp;int i=0;unsigned char *p;if(fp=fopen(eng.in,r)=NULL) return 1;while(fgets(xxi,80,fp)!=NULL) p=strchr(xxi,n); if(p)*p=0; i+;maxline=i;fclose(fp);return 0;void WriteDat(void)FILE *fp;int i;fp=fopen(ps5.dat,w);for(i=0;imaxline;i+)printf(%sn,xxi);fprintf(f
19、p,%sn,xxi);fclose(fp);*題目57(出圈題)(本題采用實際上機題,05年9月和04年9月實際上機題與下面相同)設有n個人圍坐一圈并按順時針方向從1到n編號,從第s個人開始進行1到m的報數(shù), 報數(shù)到第m個人, 此人出圈, 再從他的下一個人重新開始1到m的報數(shù),如此進行下去直到所有的人都出圈為止?,F(xiàn)要求按出圈次序,給出這n個人的順序表p。請考生編制函數(shù)Josegh()實現(xiàn)此功能并調(diào)用函數(shù)WriteDat()把編號按照出圈的順序輸出到OUT.DAT文件中。注意:第1個出圈的編號存放在p0中,第2個出圈的編號存放在p1中,直至第n個出圈的編號存放在pn-1中。 設 n = 100,
20、 s = 1, m = 10進行編程。 注意: 部分源程序存放在PROG1.C中。 請勿改動主函數(shù)main()和輸出數(shù)據(jù)函數(shù)WriteDat()的內(nèi)容。#include #define N 100#define S 1#define M 10int p100, n, s, m ;void WriteDat(void) ;void Josegh(void) int i,j,s1,w,q100; for(i=0;in;i+) qi=0; s1=s; for(i=1; i=2; i-) s1=(s1+m-1)%i; if(s1=0) s1=i; w=ps1-1; for(j=s1; ji; j+)
21、pj-1=pj; pi-1=w; for(i=0,j=n-1;i=0;i+,j-) qj=pi; for(i=0;in;i+) pi=qi;void main() m = M ; n = N ; s = S ; Josegh() ; WriteDat() ;void WriteDat(void) int i, j = 0 ; FILE *fp ; fp = fopen(out.dat, w) ;for(i = 0 ; i = N - 1 ; i+) printf(%4d , pi) ; fprintf(fp, %4d, pi) ; j+ ; if(j % 10 = 0) printf(n) ;
22、 fprintf(fp, n) ; fclose(fp) ;*題目58(選票問題)現(xiàn)有一個10個人100行的選票數(shù)據(jù)文件IN.DAT,其數(shù)據(jù)存放的格式是每條記錄的長度均為10位,第一位表示第一個人的選中情況,第二位表示第二個人的選中情況,依此類推:內(nèi)容均為字符0和1,1表示此人被選中,0表示此人未被選中,若一張選票人數(shù)小于等于5個人時被認為無效的選票。給定函數(shù)ReadDat()的功能是把選票數(shù)據(jù)讀入到字符串數(shù)組xx中。請編制函數(shù)CountRs()來統(tǒng)計每個人的選票數(shù)并把得票數(shù)依次存入yy0到y(tǒng)y9中。把結(jié)果yy輸出到文件OUT.DAT中。部分源程序存在文件prog1.c中。請勿改動主函數(shù)mai
23、n()、讀數(shù)據(jù)函數(shù)ReadDat()和輸出數(shù)據(jù)函數(shù)writeDat()的內(nèi)容。#include char xx10011;int yy10;int ReadDat(void);void WriteDat(void);void CountRs(void) int i,j,count;for(i=0;i100;i+) count=0; for(j=0;j10;j+) if(xxij=1) count+; if(count=5) continue; for(j=0;j10;j+) if(xxij=1) yyj+; void main()int i;for(i=0;i10;i+)yyi=0;if(Re
24、adDat()printf(選票數(shù)據(jù)文件IN.DAT不能打開!n007);return;CountRs();WriteDat();int ReadDat(void)FILE *fp;int i;if(fp=fopen(IN.DAT,r) = NULL) return 1;for(i=0;i100;i+) if(fgets(xxi,12,fp)=NULL)return 1; xxi10=0; fclose(fp);return 0;void WriteDat(void)FILE *fp;int i;fp=fopen(OUT.DAT,w);for(i=0;i10;i+) fprintf(fp,%d
25、n,yyi); printf(第%d個人的選票數(shù)=%dn,i+1,yyi);fclose(fp);*題目59(整數(shù)各位打散組合運算題題)已知數(shù)據(jù)文件IN.DAT中存有200個四位數(shù),并已調(diào)用讀函數(shù)readDat()把這些數(shù)存入數(shù)組a中,請考生編制一函數(shù)jsVal(),其功能是:把千位數(shù)字和十位數(shù)字重新組成一個新的十位數(shù)ab(新十位數(shù)的十位數(shù)字是原四位數(shù)的千位數(shù)字,新十位數(shù)的個位數(shù)字是原四位數(shù)的十位數(shù)字),以及把個位數(shù)字和百位數(shù)字組成另一個新的十位數(shù)cd(新十位數(shù)的十位數(shù)字是原四位數(shù)的個位數(shù)字,新十位數(shù)的個位數(shù)字是原四位數(shù)的百位數(shù)字),如果新組成的兩個十位數(shù)abcd,ab必須是奇數(shù)且不能被5整除
26、,cd必須是偶數(shù),同時兩個新數(shù)的十位數(shù)字均不為零,則將滿足此條件的四位數(shù)按從大到小的順序存入數(shù)組b中,并要計算滿足上述條件的四位數(shù)的個數(shù)cnt。最后main()函數(shù)調(diào)用寫函數(shù)writeDat()把結(jié)果cnt以及數(shù)組b中符合條件的四位數(shù)輸出到OUT.DAT文件中。注意:部分源程序存在文件prog1.c中。程序中已定義數(shù)組:a200,b200,已定義變量:cnt請勿改動數(shù)據(jù)文件IN.DAT中的任何數(shù)據(jù)、主函數(shù)main()、讀函數(shù)readDat()和寫函數(shù)writeDat()的內(nèi)容。#include #define MAX 200int aMAX, bMAX, cnt = 0 ;void jsVal
27、()int i,thou,hun,ten,data,j;int ab,cd;for(i=0;iMAX;i+)thou=ai/1000; hun=ai/100%10; ten=ai%100/10; data=ai%10; ab=10*thou+ten; cd=10*data+hun; if(ab-cd)=10&cd=10) bcnt=ai;cnt+;for(i=0;icnt-1;i+) for(j=i+1;jcnt;j+) if(bibj) data=bi;bi=bj;bj=data;void readDat()int i ;FILE *fp ;fp = fopen(in.dat, r) ;fo
28、r(i = 0 ; i MAX ; i+) fscanf(fp, %d, &ai) ;fclose(fp) ;void main()int i ;readDat() ;jsVal() ;printf(滿足條件的數(shù)=%dn, cnt) ;for(i = 0 ; i cnt ; i+) printf(%d , bi) ;printf(n) ;writeDat() ;writeDat()FILE *fp ;int i ;fp = fopen(out.dat, w) ;fprintf(fp, %dn, cnt) ;for(i = 0 ; i cnt ; i+) fprintf(fp, %dn, bi) ;fclose(fp) ;*題目60(整數(shù)運算排序題)在文件in.dat中有200組數(shù)據(jù),每組有3個數(shù),每個數(shù)均是三位數(shù)。函數(shù)ReadDat()讀取這200組數(shù)據(jù)
溫馨提示
- 1. 本站所有資源如無特殊說明,都需要本地電腦安裝OFFICE2007和PDF閱讀器。圖紙軟件為CAD,CAXA,PROE,UG,SolidWorks等.壓縮文件請下載最新的WinRAR軟件解壓。
- 2. 本站的文檔不包含任何第三方提供的附件圖紙等,如果需要附件,請聯(lián)系上傳者。文件的所有權益歸上傳用戶所有。
- 3. 本站RAR壓縮包中若帶圖紙,網(wǎng)頁內(nèi)容里面會有圖紙預覽,若沒有圖紙預覽就沒有圖紙。
- 4. 未經(jīng)權益所有人同意不得將文件中的內(nèi)容挪作商業(yè)或盈利用途。
- 5. 人人文庫網(wǎng)僅提供信息存儲空間,僅對用戶上傳內(nèi)容的表現(xiàn)方式做保護處理,對用戶上傳分享的文檔內(nèi)容本身不做任何修改或編輯,并不能對任何下載內(nèi)容負責。
- 6. 下載文件中如有侵權或不適當內(nèi)容,請與我們聯(lián)系,我們立即糾正。
- 7. 本站不保證下載資源的準確性、安全性和完整性, 同時也不承擔用戶因使用這些下載資源對自己和他人造成任何形式的傷害或損失。
最新文檔
- 2026年物流公司駕駛員操作規(guī)范題庫含答案
- 2026年校長引領教師成長試題含答案
- 2026年旅店客戶關系管理試題及解析
- 2026年逃離困境測試電梯故障脫困方法練習與解析
- 2026年效率提升測試題庫簡介及詳細解析
- 2026年福建省漳州市單招職業(yè)適應性測試題庫附答案解析
- 2026年鄭州醫(yī)藥健康職業(yè)學院單招職業(yè)傾向性考試模擬測試卷附答案解析
- 上饒市城控集團2025年度一線工作人員公開招聘參考題庫附答案解析
- 2026年貴州健康職業(yè)學院單招職業(yè)傾向性考試模擬測試卷附答案解析
- 2026年閩北職業(yè)技術學院單招職業(yè)技能考試模擬測試卷附答案解析
- 電焊工模擬考試題試卷
- 數(shù)據(jù)科學與大數(shù)據(jù)技術專業(yè)《畢業(yè)設計(論文)及答辯》教學大綱
- JB-QGL-TX3016AJB-QTL-TX3016A火災報警控制器安裝使用說明書
- 機械原理發(fā)展史總結(jié)
- 譯林 英語 五年級下冊 電子課本
- 四川省廣安市武勝縣+2023-2024學年九年級上學期期末考試道德與法治試題
- 北京市海淀區(qū)衛(wèi)生學校招聘真題
- 鋼筋焊接施工安全技術交底
- 銷售授權書模板
- 2021年10月全國自學考試00265西方法律思想史試題答案
- 2023年關于寧波市鄞州糧食收儲有限公司公開招聘工作人員筆試的通知筆試備考題庫及答案解析
評論
0/150
提交評論