[考試復(fù)習(xí)題庫精編合集]2021年度程序員級下午試題_第1頁
[考試復(fù)習(xí)題庫精編合集]2021年度程序員級下午試題_第2頁
[考試復(fù)習(xí)題庫精編合集]2021年度程序員級下午試題_第3頁
[考試復(fù)習(xí)題庫精編合集]2021年度程序員級下午試題_第4頁
免費(fèi)預(yù)覽已結(jié)束,剩余1頁可下載查看

下載本文檔

版權(quán)說明:本文檔由用戶提供并上傳,收益歸屬內(nèi)容提供方,若內(nèi)容存在侵權(quán),請進(jìn)行舉報或認(rèn)領(lǐng)

文檔簡介

1、考試復(fù)習(xí)題庫精編合集2021年度程序員級下午試題考試復(fù)習(xí)題庫精編合集2021年度程序員級下午試題1、【簡答題】試題一閱讀下列程序或函數(shù)說明和C代碼,將應(yīng)填入_(n)_處的字句寫在答題紙的對應(yīng)欄內(nèi)。函數(shù)1.1說明函數(shù)strcmp()是比較兩個字符串s和t的大小。若st,函數(shù)返回正數(shù)。函數(shù)1.1intstrcmp(char*s,char*t)while(*s&*t&_(1)_)s+;t+;return_(2)_;程序1.2說明在n行n列的矩陣中,每行都有最大的數(shù),本程序求這n個最大數(shù)中的最小一個程序1.2#includestdio.h#defineN100intaNN;voidmain()intr

2、ow,col,max,min,n;/*輸入合法n(100),和輸入mn個整數(shù)到數(shù)組a的代碼略*/for(row=0;rowmax(4)row=0(5)maxva1=v;_(1)_;*p=_(2)_;NODE*reverse_copy(NODE*p)NODE*u;for(u=NULL;p;p=p-next)first_insert(_(3)_);returnu;voidprint_link(NODE*p)for(;_(4)_)printf(%dt,p-val);printf(n);voidfree_link(NODE*p)NODE*u;while(p!=NULL)u=p-next;free(p)

3、;_(5)_;voidmain()NODE*link1,*link2;inti;linkl=NULL;for(i=1;incxt=*p(2)q(3)&u,p-val(4)p!=NULL;p=p-next(5)p=u3、【簡答題】試題三閱讀下列程序說明和C代碼,將應(yīng)填入_(n)_處的字句寫在答題紙的對應(yīng)欄內(nèi)。程序3說明本程序從若干個原始文件合并成的合并文件中恢復(fù)出其中一個或全部原始文件。所有文件均作為二進(jìn)制文件進(jìn)行處理。合并文件中先順序存儲各原始文件,然后順序存儲各原始文件的控制信息,即文件名、文件長度和在合并文件中的位置(偏移量)。其結(jié)構(gòu)為:typedefstmctcharfnme256;/*

4、原始文件名*/longlength;/*原始文件長度(字節(jié)數(shù))*/longoffset;/*原始文件在合并文件中的位置(偏移量)*/FileInfo;在合并文件最后存儲如下一個特殊的標(biāo)志信息作為合并文件的結(jié)束標(biāo)記:F11ek1foEndF1ag=CombinedFile.0,_offset;其中_offset是第一個原始文件的控制信息在合并文件中的位置(偏移量)。啟動本程序的命令行的格式是:程序名合并文件名原始文件名如果不指定原始文件名,默認(rèn)恢復(fù)合并文件中的所有原始文件。程序中涉及的部分文件操作的庫函數(shù)簡要說明如下:intfread(void*buffer,intsize,intcount,F

5、ILE*fbin):從二進(jìn)制文件流fbin中讀取count塊長度為size字節(jié)的數(shù)據(jù)塊到buffer指向的存儲區(qū)。返回值為實(shí)際讀取的數(shù)據(jù)塊數(shù)。intfwrite(void*buffer,intsize,intcount,FILE*fbin):各參數(shù)和返回值的意義與fread相同,但對文件進(jìn)行寫操作。intfseek(FILE*fbin,longoffset,intposition):將文件流fbin的讀/寫位置以position為基準(zhǔn)移動offset字節(jié)。position的值可以是SEEK_SET(文件頭),SEEK_CUR(當(dāng)前位置),SEEK_END(文件尾);offset為正表示向文件尾

6、方向移動,為負(fù)表示向文件頭方向移動,為零表示到基準(zhǔn)位置。longftell(FILE*fbin):返回文件流fbin的當(dāng)前讀/寫位置(相對于文件頭的偏移量)。上述偏移量均以字節(jié)為單位,即偏移字節(jié)數(shù)。程序3#includestdio.h#includestring.htypedefstructcharfname256;longlength;longoffset;FileInfo;voidcopyfile(FILE*fin,FILE*fout,intfsiz)charbuf1024;intsiz=1024;while(fsiz!=0)/*每次復(fù)制siz個字節(jié),直至復(fù)制完fsiz個字節(jié)*/if(si

7、zfsiz)_(1)_;fread(buf,1,siz,fin);fwrite(buf,1,siz,fout);fsiz=_(2)_;intdofile(FILE*fin,FileInfo*inp)longoffset;FILE*fout;if(fout=fopen(inp-fname,wb)=NULL)printf(創(chuàng)建文件錯誤:%sn,inp-fname);return1;offset=_(3)_;/*保留合并文件讀/寫位置*/fseek(_(4)_);/*定位于被恢復(fù)文件首*/copyfile(fin,fout,inp-length);fclose(fout);printf(n-文件名:

8、%n文件長:%1d.n,inp-fname,inp-length);_(5)_;/*恢復(fù)合并文件讀/寫位置*/return0;intmain(intargc,char*argv)FileInfofinfo;charfname256;FILE*fcmbn;if(argc2)或全部(argc=2)原始文件*/fread(&finfo,1,sizeof(FileInfo),fCmbn);if(finfo.length=0)break;if(argc2&strcmp(finfo.fname,argv2)continue;if(dofile(fcmbn,&finfo)!=0)break;fclose(f

9、cmbn);return0;15分解析:(1)siz=fsiz(2)fsiz-siz(3)ftell(fin)(4)fin,inp-offset,SEEK_SET(5)feesk(fin,offset,SEEK_SET)4、【簡答題】試題五閱讀下列程序說明和C代碼,將應(yīng)填入_(n)_處的字句寫在答題紙的對應(yīng)欄內(nèi)。程序5說明本程序采用遞歸算法將一個自然數(shù)n分解成不多于m個整數(shù)之和。設(shè)構(gòu)成和數(shù)n的各個整數(shù)取于數(shù)組d,d中的整數(shù)互不相等且由大到小存儲。例如,數(shù)組d中存儲以下整數(shù):d=100,81,64,49,36,25,16,9,4,1,則有:nm程序運(yùn)行后的輸出1002100=10013213=9

10、+4142Noanswer(9+4+1超過2個)71571=49+9+9+4(表示可重復(fù)取數(shù))函數(shù)End()的形參c表示d中可取的整數(shù)個數(shù);形參pd指向能成為和數(shù)的整數(shù)的存放位置。程序5#includestdio.h#defineN20intfind(intn,intm,int*d,intc,int*pd)intr;if(n=0)return0;/*已分解完成*/if(m=0|c=0)return-1;/*不可以分解*/if(_(1)_)returnfind(n,m,d+1,c-1,pd);else*pd=*d;r=find(_(2)_,d,c,_(3)_);/*繼續(xù)對剩余數(shù)作分解*/if(r=0)return_(4)_;returnfind(n,m,_(5)_,pd);voidmain()intn,m,k,i,pN,*pptr=p;intd=100,81,64,49,36,25,16,9,4,1;printf(Entern,m:;scanf(%d%d,&n,&

溫馨提示

  • 1. 本站所有資源如無特殊說明,都需要本地電腦安裝OFFICE2007和PDF閱讀器。圖紙軟件為CAD,CAXA,PROE,UG,SolidWorks等.壓縮文件請下載最新的WinRAR軟件解壓。
  • 2. 本站的文檔不包含任何第三方提供的附件圖紙等,如果需要附件,請聯(lián)系上傳者。文件的所有權(quán)益歸上傳用戶所有。
  • 3. 本站RAR壓縮包中若帶圖紙,網(wǎng)頁內(nèi)容里面會有圖紙預(yù)覽,若沒有圖紙預(yù)覽就沒有圖紙。
  • 4. 未經(jīng)權(quán)益所有人同意不得將文件中的內(nèi)容挪作商業(yè)或盈利用途。
  • 5. 人人文庫網(wǎng)僅提供信息存儲空間,僅對用戶上傳內(nèi)容的表現(xiàn)方式做保護(hù)處理,對用戶上傳分享的文檔內(nèi)容本身不做任何修改或編輯,并不能對任何下載內(nèi)容負(fù)責(zé)。
  • 6. 下載文件中如有侵權(quán)或不適當(dāng)內(nèi)容,請與我們聯(lián)系,我們立即糾正。
  • 7. 本站不保證下載資源的準(zhǔn)確性、安全性和完整性, 同時也不承擔(dān)用戶因使用這些下載資源對自己和他人造成任何形式的傷害或損失。

評論

0/150

提交評論