




版權(quán)說明:本文檔由用戶提供并上傳,收益歸屬內(nèi)容提供方,若內(nèi)容存在侵權(quán),請進行舉報或認(rèn)領(lǐng)
文檔簡介
第第頁1992年程序員級考試——下午試題1992年程序員級考試——下午試題
發(fā)表于:2023-05-26來源::點擊數(shù):標(biāo)簽:
1.本程序采用篩選法求質(zhì)數(shù)。程序用一個無符號整數(shù)數(shù)組代表篩,它的每一位對應(yīng)一個整數(shù)。因除2以外,其余所有的質(zhì)數(shù)都是奇數(shù),約定數(shù)組按位的順序,依次對應(yīng)整數(shù)3,5,7,9,11。程序首先將數(shù)組所能容納的上述奇數(shù)放入篩中,即將數(shù)組的全部位置成1
1.本程序采用篩選法求質(zhì)數(shù)。程序用一個無符號整數(shù)數(shù)組代表篩,它的每一位對應(yīng)一個整數(shù)。因除2以外,其
余所有的質(zhì)數(shù)都是奇數(shù),約定數(shù)組按位的順序,依次對應(yīng)整數(shù)3,5,7,9,11。程序首先將數(shù)組所能容
納的上述奇數(shù)放入篩中,即將數(shù)組的全部位置成1。從篩中找出最小的數(shù),該數(shù)即為質(zhì)數(shù),然后將該質(zhì)數(shù)的倍
數(shù)從篩中去掉,即將在數(shù)組中與它們對應(yīng)的位置成0。因偶數(shù)不在篩中,去掉的數(shù)是找到的質(zhì)數(shù)的1倍,3倍,
5倍……等整數(shù)。反復(fù)上述過程,直至篩為空。程序就能找到指定范圍內(nèi)的全部質(zhì)數(shù)。
【程序】
#includestdio.h
#defineN50
#defineLN16
main()
{
unsignedintsieve[N],primes[N];
unsignedintj,w,p,c;
for(j=0;jN;j++)
{sieve[j]=0xFFFFFFFF;
primes[j]=0x00;
}
w=0;j=0;
do{while(((0x01(j++))
p=________;
c=________;
primes[w]|=(___________);
do
{sieve[p/LN]
p+=c;
}while(pN*LN-LN);
while((sieve[w]==0x00)N-1))
{w++;
j=0;
}
}while(sieve[w]);
printf("%5d",2);
for(w=0;wN;w++)
{for(j=0;jLN;j++)
if((0x01j)
}
printf("\n");
}
2.設(shè)有兩整數(shù)向量A,B的比較矩陣M可定義為:
┏1a(j)b(i),
m(i)(j)=┃-1a(j)b(i),(i,j=0,1,┄,n-1)
┗0a(J)=b(I),
如圖所示。
┌──┬───────────┐
│B\A│894624│
├──┼───────────┤
│3│1111-11│
│7│11-1-1-1-1│
│7│11-1-1-1-1│
│5│11-11-1-1│
│3│1111-11│
│8│01-1-1-1-1│
└──┴───────────┘
(1)本程序?qū)o定的比較矩陣M,確定滿足a(k)=x條件的A,B的一個整數(shù)解。
(2)本程序的解法是:讀入M,k,x后
1.填充A,B,令b(i)=x-m(i)(k),a(i)=x(i=0,1,┄,n-1)
2.檢查a(j)與b(i)是否滿足m(i)(j)
.若滿足檢查下一個;
.否則向上調(diào)整相應(yīng)元素,并按以下約定回朔檢查:當(dāng)B的第i個元*
素調(diào)整時,則回朔到A的第一個元素;當(dāng)A的第j個元素調(diào)整時,則*
回朔到A的當(dāng)前元素和B的第一個元素.
本程序?qū)Ρ容^矩陣M的合理性未作檢查,并假定在指定的條件下一定能找到一個解。
【程序】
#includestdio.h
#defineMN20
typedefintVector[MN];
VectorMatrix[MN];
intN;
main(argc,argv)
intargc;char**argv;
{Vectora,b;
inti,j,x,k;
voidPrintVector();
voidFillVector();
FILE*fp,*fopen();
if((fp=fopen(argv[argc-1],"r"))==NULL)
{printf("Cannotopenfile%s\n",argv[argc-1]);
exit(1);
}
fscanf(fp,"%d",
for(i=0;iN;i++)
for(j=0;jN;j++)
fscanf(fp,"%d",
fscanf(fp,"%d%d",
fclose(fp);
FillVector(a,b,k,x);
printf("TheVectorAis:\n");
PrintVector(a);
printf("ThevectorBis:\n");
PrintVector(b);
}
voidPrintVector(v)
Vectorv;
{inti;
printf("[");
for(i=0;iN;i++)
printf("%5d",v);
printf("]\n");
}
voidFillVector(a,b,k,x)
Vectora,b;
intk,x;
{inti,j,temp;
for(i=0;iN;i++)
{b=x-Matrix[k];
a=x;
}
for(i=0;iN;i++)
{for(j=0;jN;j++)
{Temp=b+Matrix[j];
if(Matrix[j]==1a[j])
{_________;i=0;}
elseif(Matrix[j]==-1a[j])
{b=a[j]+1;_________;}
elseif(a[j]b)
{b=a[j];________;}
elseif(a[j]b)
{__________;__________;}
}
}
}
3.本子程序利用遞歸法判別用鏈表表示的兩個非遞歸鏈表是否相等.
程序中的非遞歸列表定義為:
(1)無元素的空列表;
(2)由元素序列組成的一個列表,其中的元素可以是一個字符,或者是滿足本定*
義的一個列表.
這種列表的一個例子是:
S
┌───┐┌─┬─┬─┐┌─┬─┬─┐
│├→┤0│a│├→┤1│││^│
└───┘└─┴─┴─┘└─┴┼┴─┘
┌─────┘
│┌─┬─┬─┐┌─┬─┬─┐
└→┤0│b│├→┤0│c│^│
└─┴─┴─┘└─┴─┴─┘
列表S由兩個元素組成,第一個元素是字符a(標(biāo)志為0),第二個元素是另一個列*
表(標(biāo)志為1),該元素又有兩個元素組成(標(biāo)志為0),分別為字符b和字符c.
在兩個列表中,若它們的元素個數(shù)相等,且表中元素依次相同,則兩個列表相等(*
子程序回答1),否則不相等(子程序回答0).
【程序】
typedefstructlnode
{inttag;
union
{chardata;
structlnode*dlink;
}un;
structlnode*link;
}listnode;
intequal(s,t)
listnode*s,*t;
{intx,res;
if(s==t)
溫馨提示
- 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)方式做保護處理,對用戶上傳分享的文檔內(nèi)容本身不做任何修改或編輯,并不能對任何下載內(nèi)容負(fù)責(zé)。
- 6. 下載文件中如有侵權(quán)或不適當(dāng)內(nèi)容,請與我們聯(lián)系,我們立即糾正。
- 7. 本站不保證下載資源的準(zhǔn)確性、安全性和完整性, 同時也不承擔(dān)用戶因使用這些下載資源對自己和他人造成任何形式的傷害或損失。
最新文檔
- 出租小區(qū)鋪面合同范本
- epc總價合同范本
- 150畝土地整改合同范本
- 保底代工合同范本
- 科技公司如何利用大數(shù)據(jù)提升企業(yè)競爭力
- 科技前沿在綠色裝修設(shè)計中的應(yīng)用案例
- 科技安全與風(fēng)險管理
- 科技引領(lǐng)未來沐足店如何利用短視頻提升品牌形象
- 科技產(chǎn)品與老年人用電安全
- 社交媒體網(wǎng)絡(luò)輿情監(jiān)測在教育管理中的應(yīng)用探討
- 高中數(shù)學(xué)《立體幾何》教材分析及教學(xué)建議
- 八年級英語初中英語閱讀理解閱讀專項練習(xí)試卷附答案
- 固定資產(chǎn)清查盤點明細(xì)表
- 人教版八年級數(shù)學(xué)下冊課件【全冊】
- 物聯(lián)網(wǎng)管理平臺的設(shè)計與實現(xiàn)
- 1例妊娠糖尿病的個案護理
- 光伏發(fā)電職業(yè)病危害預(yù)評價方案方案
- 財務(wù)報表涉稅分析
- 立式單軸木工銑床安全操作規(guī)程
- 重癥患者識別課件
- 《計算機組成原理》全冊詳解優(yōu)秀課件
評論
0/150
提交評論