C語言必背18個經(jīng)典程序_第1頁
C語言必背18個經(jīng)典程序_第2頁
C語言必背18個經(jīng)典程序_第3頁
C語言必背18個經(jīng)典程序_第4頁
C語言必背18個經(jīng)典程序_第5頁
已閱讀5頁,還剩4頁未讀, 繼續(xù)免費閱讀

下載本文檔

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

文檔簡介

1、C語言必背18個經(jīng)典程序1、/*輸出9*9 口訣。共9行9列,i控制行,j控制列。*/#include Hstdio.hHmain()int ij result;fdr(i=l;i10;i+) for(j=ljresult);/*-3d 表示左對齊,占 3 位*7每一行后換行 */2、/*古典問題:有一對兔子,從出生后第3個月起每個月都生一對兔子,小兔子長到第三 個月后每個月又生一對兔子,假如兔子都不死,問每個月的兔子總數(shù)為多少?兔子的規(guī)律為數(shù)列1,1,2,3,5,8,13,21.*/main()long fl.fZ;inti;fl =2=1;fbr(i=l;i=20;i+) printf(,

2、%121d %121dH,fhf2);if(i%2=0) pnntf(HnM)y*控制輸出,每行四個*/fl=fl+f2; /*前兩個月加起來賦值給第三個月*/2=fl+f2; /*前兩個月加起來賦值給第三個月*/3、/*判斷101-200之間有多少個素數(shù),并輸出所有素數(shù)及素數(shù)的個數(shù)。程序分析:判斷素數(shù)的方法:用一個數(shù)分別去除2到sqrt(這個數(shù)),如果能被整除,則表明此數(shù)不是素數(shù),反之是素數(shù)。*/#include ”math.hmain()mt m,i,k.h=0Jeap=l;pnntfC,nM);foi(m= 101 ;m=200;m+) k=sqit(m+l);fbr(i=2;i=k;i

3、-H-)leap=O;break;if(leap) /*內(nèi)循環(huán)結(jié)束后,leap依然為1,則m是素數(shù)*7pnntf(n%-4d,m);h+;if(h%10=0)pnntf(MnM);leap=l;pnntf(MnThe total is %d*h);4、/*一個數(shù)如果恰好等于它的因子之和,這個數(shù)就稱為“完數(shù)”。例如6=14-2 + 3編程找出1000以內(nèi)的所有完數(shù)。*/main()static int k10;mt i,j,s;fbr(j=2j1000j+)n=-l;s=J;for(i=l;ij;i+)if(j%i)=O) n+;s=si;kn=i;if(s=0)piintff %d is a

4、waiishu: M,j);pnntf(M%dii,kn);5、/*卞面程序的功能是將一個4X4的數(shù)組進行逆時針旋轉(zhuǎn)90度后輸出,要求原始數(shù)組的 數(shù)據(jù)隨機輸入,新數(shù)組以4行4列的方式輸出,請在空白處完善程序。*/main() int a44,b44,i,j;/*a存放原始數(shù)組數(shù)據(jù),b存放旋轉(zhuǎn)后數(shù)組數(shù)據(jù)*/16 numbers:/*輸入一組數(shù)據(jù)存放到數(shù)組a中,然后旋轉(zhuǎn)存放到b數(shù)組中*/fbr(i=0;i4;i-H-)fbr(j=0j4j+)scanf(%d,&ai|j);b3-ji=aij;prmtf(nanay b:ir);fbr(i=0;i4;i+) for(j=0;j4j+)printf(

5、”6d”,bij);piintfpiT);6、/*編程打印直角楊輝三角形*/main()mt ij,a66;fbr(i=0;i=5;i+)aii=l;aiO=l;fbr(i=2;i=5;i+)aij=ai-lj+ai-lU-l;fbr(i=0;i=5;i+)for(j=Oj=ij-H-)pnntf(” 4d,aij);prmtf(HnH);7、/*通過鍵盤輸入3名學(xué)生4門課程的成績,分別求每個學(xué)生的平均成績和每門課程的平均成績。要求所有成績均放入一個4行5列的數(shù)組中,輸入時同一人數(shù)據(jù)間用空格,不同人用回車 其中最后一列和最后一行分別放每個學(xué)生的平均成績、每門課程的平均成績及班級總平均 分。3V

6、#include #include main() float a45.suml,suni2;intij;for(i=0;i3;i-H-)foi(j=0;j4j+)scanff%f;&aij); suml=0;foi(j=0;j4j+)suml-r=aij;ai4=suml/4;for(j=O;j5j+) suni2=0;fbr(i=O;i3;i+)suni2+=aiIj;a3j=suni2/3;fbr(i=0;i4;i+)for(j=0;j5j+)pnntfC%6.2f,ai|j);8、/*完善程序,實現(xiàn)將輸入的字符串反序輸出, 如輸入 windows 輸出 swodmwo */#includ

7、e main() char c200,cl;int i,j,k;printf(Enter a string:);scanf(%s 舄 c);k=strlen(c);for (i=0 j=k-l ;ik/2;i+j-) cl=ci;ci=cj;cj=cl;pnntfC%siT,c);指針法:void invert(char *s)mt ij,k;chai t;k=strlen(s);fbr(i=O j=k-l ;ik/2;i+J-)t=*(s+i);*(s+i)=*(s+j);*(s+j)=t; main() FILE *fp;char str200,*p,ij;if(fp=fbpen(np9_

8、2.out,vH)=NULL) printf(ncaniiot open the fileiiH);exit(O);prmtf(Hmput str:nn);gets(str);pnntf(“n%sjstr);如 nntf(4V%snstr);mveit(sti);pnntf(“n%s 冷 str);fjmntf(4Vn%sJstr);fclose(fp);9、/*卞面程序的功能是從字符數(shù)組s中刪除存放在c中的字符。*/include main() char s80,c;mt j,k;pimtfCiiEnter a string:gets(s);printf(nEnter a chaiacter

9、:);c=getchar();for(j=k=0;s|j!=忙+)if(sj!=c)sk+=sj;sk= 0:pnntf(”n%s”,s);10、/*編寫一個void soi1(int *x,iiit n)實現(xiàn)將x數(shù)組中的n個數(shù)據(jù)從犬到小排序。n及數(shù)組元素在主函數(shù)中輸入。將結(jié)果顯示在屏幕上并輸出到文件p9_l.out中引#iiicludevoid sort(int *x.mt n)intfor(i=0;in-l;i-H-)k=i;for(j=i+lJxk) k=j;if(k!=i)t=xi;xi=xk;xk=t;void main()FILE *fp;mt *p,i,al0;fp=fopen(

10、Mp9_l .out,7,wH);p=a;printf(MIiiput 10 numbers:M);fbr(i=0;i10;i+)scanfC%cT+);p=a;sort(pJO); fbi(;px) ai+l=ai; i-;/*將比x大的數(shù)往后移動一個位置*/a+i=x;J+;/*插入X后元素總個數(shù)增加*/fbr(i=l;ij ;i+) prmtf(M%8drai);pnntffXir);12、/*編寫函數(shù)replace(chai *s,char cl,char c2)實現(xiàn)將s所指向的字符串中所有字符cl 用c2替換,字符串、字符cl和c2均在主函數(shù)中輸入,將原始字符串和替換后的字符串顯 示

11、在屏幕上,并輸出到文件pl0_2.out中*/#iiicludeieplace(chai *s,char cl,chai c2)wlule(*s!=,0,) if (*s=cl)*s=c2;s+;main() FILE *fp;char str100,a,b;if(fl)=fbp3Cp 10_2 out”,”w J)=NULL) priiitf(Hcamiot open tlie fileViT); exit(O);priiitf(nEnter a stiiiig:nn);gets(sti);pnntf(MEnter a&b:nM);scanf(M%c,%cH,&a,&b);fprmtfp/s

12、Virsti);replace(str.a.b);pnntHThe new stiing is一一%sn*str);fpiiiitffp/The new stiing is%sn,str);fclose(fp);13、/*在一個字串si中查找一子串s2,若存在則返回子串在主串中的起始位置,不存在則返回1。*/main()char si=”thisis”;char s25=”is”;pnntf(M%dii,search(sl,s2);system(HpauseM);mt search(char sl,char s2)int i=0 j Jen=strlen(s2);wliile(sli)for(

13、j=0;j=len)retuni i;else i+;return -1;14、/*用指針變量輸出結(jié)構(gòu)體數(shù)組元素。*/struct studentiiit num;chai *name;chai sex;int age;stu5=1001,lihua”,F,18,1002, ”liuxing;M;19,1003rhuangke;F9,1004, ”fbngshoiF, 19 , 100518 ;main()mt i;struct student *ps;prmtf(nNumtNametttSextAgetnn);/*用指針變量輸出結(jié)構(gòu)體數(shù)組元素。*/fbr(ps=stu ;ps iium.ps

14、-naiiie,ps-sex.ps-age);/*用數(shù)組下標(biāo)法輸出結(jié)構(gòu)體數(shù)組元素學(xué)號和年齡。*/fbr(i=0;inum,p-name,p-age);p=p-next; wliile(p! =NULL);16、/*輸入一個字符串,判斷其是否為回文?;匚淖址侵笍淖蟮接易x和從右到左讀 完全相同的字符串。*/#include #include #mclude main() char s100;int ij ji;pmitf(”輸入字符串:n”); gets(s);n=stilen(s);for(i=Oj=n-l ;i=j) pnntf(”是回文串n”); else不是回文串nj;17、嚴(yán)冒泡排序

15、,從小到人,排序后結(jié)果輸出到屏幕及文件myf2.out*/#includevoid fun(mt a.iiit n)int ij,t;fbi(i=O;i=n-l ;i+)foi-(j=o;jaj+l) t=aj;aj=a|j+l;aj4-l=t;main()int a10= 12,45,7,8,96,4,10,48,2,46,n=10,i;FILE *f;if(fMdpm(”myf2ouLwJ)=NULL)piiiitf(nopen file myf2.out failedfiin(aJO);fbi(i=0;i10;i+)prmtf(n%4d,ai);fclose(f);18、編寫函數(shù)countpi,利用公式龍12123123423353573579計算兀的近似值,當(dāng)某一項的值小于10-5時,認(rèn)為達到精度要求,請完善函數(shù)。將結(jié)果顯示 在屏幕上并輸出到文件p7_3.out中。#includedouble countpi(double eps)/*eps 為允許誤差*7iiit m=l;double temp=1.0,s

溫馨提示

  • 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)用戶因使用這些下載資源對自己和他人造成任何形式的傷害或損失。

評論

0/150

提交評論