C語言復(fù)習(xí) IE常用算法程序_第1頁
C語言復(fù)習(xí) IE常用算法程序_第2頁
C語言復(fù)習(xí) IE常用算法程序_第3頁
C語言復(fù)習(xí) IE常用算法程序_第4頁
C語言復(fù)習(xí) IE常用算法程序_第5頁
已閱讀5頁,還剩11頁未讀, 繼續(xù)免費(fèi)閱讀

下載本文檔

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

文檔簡(jiǎn)介

課件封面實(shí)驗(yàn)教學(xué)標(biāo)題輸入、輸出和選擇結(jié)構(gòu)程序6常用算法程序常用算法程序【18.】編寫程序求兩個(gè)整數(shù)的最大公約數(shù)和最小公倍數(shù)。

#include<stdio.h>voidmain(){ intm,n,t; printf("輸入兩個(gè)數(shù)(用空格或者回車間隔)\n"); scanf("%d%d",&m,&n);

//設(shè)t為m,n的最小數(shù)

if(m>n)t=n; elset=m; while(t>0){ if(m%t==0&&n%t==0)break;

//每次檢查m和n能否整除t如果是則找到最大公約數(shù)

t--; } printf("%d和%d的最大公約數(shù)為%d\n",m,n,t);

//設(shè)t為m,n的最大數(shù)

if(m>n)t=m; elset=n; while(1){ if(t%m==0&&t%n==0)break;

//每次檢查t能否整除m和n如果是則找到最小公倍數(shù)

t++; } printf("%d和%d的最小公倍數(shù)為%d\n",m,n,t);}6常用算法程序常用算法程序【19.】編寫一個(gè)函數(shù)IsP(intn),函數(shù)的功能是檢查n是否為素?cái)?shù),如果是函數(shù)返回“真”,否則返回“假”。在主函數(shù)中調(diào)用該函數(shù),打印100~1000之間的全部素?cái)?shù)。

#include<stdio.h>intIsP(intn)//函數(shù)的功能是檢查n是否為素?cái)?shù){ inti; //分析:從2到n-1逐一檢查能否整除n,只要有一個(gè)整除則肯定不是素?cái)?shù),所有均不能整除則肯定是素?cái)?shù)

for(i=2;i<n;i++) if(n%i==0)return0;

//只要有一個(gè)整除則不是素?cái)?shù)

return1;}voidmain(){ inti;

//打印100~1000之間的全部素?cái)?shù)

for(i=100;i<1000;i++) if(IsP(i)) printf("%d\n",i);}6常用算法程序常用算法程序【20.】用篩選法求100之內(nèi)的素?cái)?shù)。

#include<stdio.h>voidcal_prime(intA[],intn)//使用篩選法計(jì)算素?cái)?shù){inti,j;for(i=2;i<=n;i++)for(j=2;i*j<=n;j++){//如果該數(shù)尚未篩選過,則標(biāo)記該數(shù)選中

if(A[i*j]==1)A[i*j]=0;else//如果已經(jīng)篩選過,則跳出改次篩選,進(jìn)入下次篩選

continue;}}voidmain(){ intA[100+1];//下標(biāo)需要從2到100,因此數(shù)組長(zhǎng)度為100+1 inti;

//將全部數(shù)組元素設(shè)為1表示未被篩出

for(i=2;i<=100;i++) A[i]=1; cal_prime(A,100); for(i=2;i<=100;i++) if(A[i]==1)//未被篩出的元素必定是素?cái)?shù)

printf("%d\n",i);}6常用算法程序常用算法程序【21.】用二分查找法在已排序好的數(shù)組中查找輸入的數(shù)。如果找到了輸出該數(shù)的下標(biāo),否則輸出“未找到”。(數(shù)組為:1,2,13,24,25,44,57,63,66,78,90,100)。

#include<stdio.h>#include<math.h>voidmain(){ inta[10]={1,3,5,7,9,11,13,15,17,19}; inth; //查找區(qū)域開始位置

intt; //查找區(qū)域結(jié)束位置

intm; //查找區(qū)域中間位置

intsign=0; //為0表示未找到,為表示找到

intf; //要查找的數(shù)據(jù)

printf("請(qǐng)輸入要查找的數(shù)據(jù):"); scanf("%d",&f); h=0,t=9; //一開始將整個(gè)數(shù)組設(shè)為查找區(qū)域

if(!(f<a[0]||f>a[9])) {

//如果要查找的數(shù)據(jù)比開始元素小或者比結(jié)束元素大,則肯定不在查找區(qū)域中

while(!sign&&h<=t){m=(h+t)/2;//計(jì)算當(dāng)前前查找區(qū)區(qū)域的中中間位置置if(f==a[m])//如果要找找的數(shù)據(jù)據(jù)與中間間位置的的數(shù)據(jù)相相等表示示找到了了{(lán)printf("%d找到了,,它是::A[%d]\n",f,m);sign=1;}elseif(f>a[m])//否則如果果要找的的數(shù)據(jù)比比中間位位置的數(shù)數(shù)據(jù)大h=m+1;//則下一次次的查找找區(qū)域在在右半部部分elset=m-1;//否則下一一次的查查找區(qū)域域在左半半部分}}if(sign==0)printf("在數(shù)組中中%d沒有找到到\n",f);}6常用算法法程序常用算法法程序【22.】編寫寫一個(gè)函函數(shù)sort(intA[],intn),函數(shù)的功功能是用用冒泡法法對(duì)數(shù)組組進(jìn)行由由大到小小的排序序,其中中n為數(shù)組A的元素個(gè)個(gè)數(shù)。在在主函數(shù)數(shù)中輸入入10個(gè)數(shù)據(jù),,調(diào)用函函數(shù)排序序,然后后輸出排排序好的的10個(gè)數(shù)據(jù)。。(輸入入數(shù)據(jù)::6,8,9,1,2,5,4,7,3,18)#include<stdio.h>voidsort(intA[],intn){ inti,j; intt;//改進(jìn)后的的冒泡法法排序for(i=0;i<n-1;i++)for(j=i+1;j<n;j++)if(A[i]<A[j])//<為由大到到小,>為由小到到大,A[i]表示前面面的數(shù),A[j]表示后面面的數(shù){t=A[i],A[i]=A[j],A[j]=t;}}voidmain(){ intA[10]; inti;printf("連續(xù)輸入入10個(gè)數(shù)據(jù)((用空格格或者TAB或者回車車間隔))\n");for(i=0;i<10;i++)scanf("%d",&A[i]);sort(A,10);//輸出排序序后的數(shù)數(shù)組for(i=0;i<10;i++)printf("%d",A[i]);}6常用算法法程序常用算法法程序【23.】編寫寫一個(gè)函函數(shù)sort(intA[],intn),函數(shù)的功功能是用用選擇法法對(duì)數(shù)組組進(jìn)行由由小到大大的排序序,其中中n為數(shù)組A的元素個(gè)個(gè)數(shù)。在在主函數(shù)數(shù)中輸入入10個(gè)數(shù)據(jù),,調(diào)用函函數(shù)排序序,然后后輸出排排序好的的10個(gè)數(shù)據(jù)。。(輸入入數(shù)據(jù)::6,8,9,1,2,5,4,7,3,18)#include<stdio.h>voidsort(intA[],intn){ inti,j,k; intt;//改進(jìn)后的的選擇法法排序for(i=0;i<n-1;i++){k=i;for(j=i+1;j<n;j++)if(A[k]>A[j])k=j;//<為由大到到小,>為由小到到大,A[k]表示前面面的數(shù),A[j]表示后面面的數(shù)if(k!=i){t=A[i],A[i]=A[k],A[k]=t;}}}voidmain(){ intA[10]; inti;printf("連續(xù)輸入入10個(gè)數(shù)據(jù)((用空格格或者TAB或者回車車間隔))\n");for(i=0;i<10;i++)scanf("%d",&A[i]);sort(A,10);//輸出排序序后的數(shù)數(shù)組for(i=0;i<10;i++)printf("%d",A[i]);}9、靜夜四無鄰鄰,荒居舊業(yè)業(yè)貧。。12月-2212月-22Wednesday,December7,202210、雨中黃葉樹樹,燈下白頭頭人。。21:53:2521:53:2521:5312/7/20229:53:25PM11、以我獨(dú)沈沈久,愧君君相見頻。。。12月-2221:53:2521:53Dec-2207-Dec-2212、故故人人江江海海別別,,幾幾度度隔隔山山川川。。。。21:53:2521:53:2521:53Wednesday,December7,202213、乍見見翻疑疑夢(mèng),,相悲悲各問問年。。。12月月-2212月月-2221:53:2521:53:25December7,202214、他鄉(xiāng)鄉(xiāng)生白白發(fā),,舊國(guó)國(guó)見青青山。。。07十十二二月20229:53:25下下午21:53:2512月月-2215、比不了了得就不不比,得得不到的的就不要要。。。十二月229:53下午午12月-2221:53December7,202216、行動(dòng)出出成果,,工作出出財(cái)富。。。2022/12/721:53:2521:53:2507December202217、做前,,能夠環(huán)環(huán)視四周周;做時(shí)時(shí),你只只能或者者最好沿沿著以腳腳為起點(diǎn)點(diǎn)的射線線向前。。。9:53:25下午午9:53下午午21:53:2512月-229、沒有失敗,,只有暫時(shí)停停止成功!。。12月-2212月-22Wednesday,December7,202210、很多事情努努力了未必有有結(jié)果,但是是不努力卻什什么改變也沒沒有。。21:53:2521:53:2521:5312/7/20229:53:25PM11、成功功就是是日復(fù)復(fù)一日日那一一點(diǎn)點(diǎn)點(diǎn)小小小努力力的積積累。。。12月月-2221:53:2521:53Dec-2207-Dec-2212、世間間成事事,不不求其其絕對(duì)對(duì)圓滿滿,留留一份份不足足,可可得無無限完完美。。。21:53:2521:53:2521:53Wednesday,December7,202213、不知香積積寺,數(shù)里里入云峰。。。12月-2212月-2221:53:2521:53:25December7,202214、意志堅(jiān)強(qiáng)的的人能把世界界放在手中像像泥塊一樣任任意揉捏。07十二月月20229:53:25下午21:53:2512月-2215、楚塞塞三湘湘接,,荊門門九派派通。。。。十二月月229:53下下午午12月月-2221:53December7,202216、少年十五二二十時(shí),步行行奪得胡馬騎騎。。2022/12/721:53:2621:53:2607December202217、空山新雨雨后,天氣氣晚來秋。。。9:53:26下下午9:53下下午21:53:2612月-229、楊楊柳柳散散和和風(fēng)風(fēng),,青青山山澹澹吾吾慮慮。。。。12月月-2212月月-22Wednesday,December7,202210、閱閱讀讀一一切切好好書書如如同同和和過過去去最最杰杰出出的的人人談?wù)勗捲挕!?1:53:2621:53:2621:5312/7/20229:53:26PM11、越越是是沒沒有有本本領(lǐng)領(lǐng)的的就就越越加加自自命命不不凡凡。。12月月-2221:53:2621:53Dec-2207-Dec-2212、越是無能的的人,越喜歡歡挑剔別人的的錯(cuò)兒。21:53:2621:53:2621:53Wednesday

溫馨提示

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

最新文檔

評(píng)論

0/150

提交評(píng)論