C語言實用程序設計100例流程圖_第1頁
C語言實用程序設計100例流程圖_第2頁
C語言實用程序設計100例流程圖_第3頁
C語言實用程序設計100例流程圖_第4頁
C語言實用程序設計100例流程圖_第5頁
已閱讀5頁,還剩31頁未讀 繼續免費閱讀

下載本文檔

版權說明:本文檔由用戶提供并上傳,收益歸屬內容提供方,若內容存在侵權,請進行舉報或認領

文檔簡介

1、C語言實用程序100例第一篇基礎與提高實例1利用庫函數編寫基本顯示程序實例2變量屬性實例3運算符與類型實例4關于程序結構實例5顯示函數曲線圖實例6二分法選代的應用實例7多變的立方體實例8一維整型數組應用(1)實例9一維整型數組應用(2)實例10一維整型數組應用(3)實例11一維整型數組應用(4)實例12二維數組應用(1)顯示楊輝三角實例13二維數組應用(2)魔方陣實例14字符數組應用(1)邏輯判斷實例15字符數組應用(2)數據模擬實例16二維數組應用字符比較實例17利用指針進行數據處理實例18指針與字符串實例19利用指針處理二維數組實例20一級指針實例21利用指針傳遞參數值實例22結構體的應用

2、實例23鏈表的應用(1)實例24鏈表的應用(2)實例25鏈表的應用(3)實例26共用體的應用實例27枚舉類型應用實例28位運算買例29義件加密實例30文件的按記錄隨機讀寫第二篇圖形與多媒體實例31改變文字背景色實例32及本顏色設置實例33制作表格實例34制作多樣的橢圓實例35美麗的透視圖形實例36錯位窗口實例37能移動的矩形實例38多變的填充矩形實例39黃黑相間的矩形與圓實例40六葉圖案實例41特殊圖案實例42國際象棋棋盤實例43制作樓梯實例44使用線類型函數設置多個漢字實例45彩色群點實例46餅圖買例47產品折線圖實例48直方圖實例49變大變色的拒形與國實例50多變的填充多邊形實例51流星球

3、實例52小球動態碰撞買倒53多,曲線實例54多變的圓與環實例55優美的球體實例56運動的小車實例57統計動畫消失次數實例58運行的時鐘實例59直升飛機實例60演繹“生命游戲”實例61猜猜看買例62藝術清屏買倒63制作火焰實例64動態繪制256條不同顏色的直線實例65紅綠藍三原色漸變第三篇綜合小程序實例66兩個矩陣相乘實例67藝術鐘實例68家庭財務管理小程序實例69用系統時間實現隨機數實例70閃動的多彩圓實例71檢查系統有無鼠標實例72圓形光盤與矩形實例73動態漸變圖案實例74往返兩地間的小車實例75飄揚的紅旗實例76顯示藍天白云圖形實例77百葉窗第四篇計算機等級考試上機試題(二級)第五篇計算機

4、等級考試上機試題(三級)部分流程圖實例11=>flag當flag=1時輸出選擇信息ch=getchar()得到大寫字符:ch=toupper(ch)ch='F'否是調用函數print返回:return實例2定義宏代換:10=>N-1=>k0=>n 當!(n>0&&(k>0&&k<=65536)時輸出顯示信息scanf("%ld%ld",&k,&n)若數據錯誤,輸出錯誤信息調用隨機數子函數生成隨機數輸出隨機數實例3原始進制賦值:1=>k,0=>xb,0=>

5、;x1,0=>x2得到初始值:xa,a,b 當x1!=0時x2+(x1%10)*k=>x2x1/10=>x1a/10=>a1=>k,x2=>x1 當x1!=0時xb+(x1%b)*k=>xbx1/b=>x1k*10=>kY=>yes 當toupper(yes)='Y'時0=>count產生隨機數:number 當guess!=number時輸入guess值給出判斷信息15次退出輸入yes值當1<guess<100時實例4實例50=>i 當i<H時a=30*sin(i*N)0=>j 當

6、j<a+40時j=40是 否Printf(“%c”,|);Printf(“%c”,BLANK);j+Printf(“%c”,DOC);a<0是 否a+40=>j 當j<40時printf("%c",BLANK); j+printf("%c",'|');printf("n");實例6 當fmin*fmax>0時輸入初始范圍:xmin,xmax得到最大值與最小值:fmax,fmin 當fabs(fmax-fmin)>=1e-5時fun(xmid)=>fmid(xmin+xmax)/

7、2=>xmidfmid*fmin<0是 否xmid=>xminfmid=>fminxmid=>xmaxfmid=>fmax輸出結果實例7主函數main()Y =>ch 當ch=Y得到繼續鍵值給chch的大寫值=>ch調用遞歸函數hanoi解題得到盤子數 遞歸函數hanoin>0是 否遞歸調用hanoi(n-1,a,c,b)顯示移盤信息move遞歸調用hanoi(n-1,c,b,a)實例8i=12=>a0 當i<(N-1)i+ai=2*i+1i=1 當i<(N-1) ai!=0是 否 當j<N時j=i+1aj%ai=0

8、是 否aj=0j+當i<N時i=0,j=0ai!=0是 否 ai!=0是 否printf("%5d",ai)printf("n")i+實例92=>a0i=1 當i<(N-1)ai=2*i+1i+ 當i<(N-1)i=1 ai!=0是 否j=i+1 當j<N時aj%ai=0是 否aj=0j+當i<N時i=0,j=0ai!=0是 否printf("%5d",ai) ai!=0是 否printf("n")i+實例100=>i 當i<n-1時i=>k i+1=>j

9、 當j<m時 aj<ak是 否 j=>k aj<ak是 否交換ai與akj+i+實例110=>find 0=>first (n-1)=>last交互得到查找值k 當(first<=last)并且(find=0)時(first+last)/2=>halfk>ahalf是 否k=ahalf是 否輸出找到信息1=>findhalf-1=>lasthalf+1=>first實例12 當i<=n時2=>i1=>j 當j<i時ai-1j-1+ai-1j=>aijj+i+0=>i 當i<=

10、n時 當j<(70-6*i)/2時printf(" ");j+0=>j 當j<=i時printf("%6d",aij);j+0=>j實例13 當i<N時0=>j 當j<N時0=>aijj+N/2=>j1=>a0j 當k<=N*N時2=>kj-,i+i<0是 否(i+2)%N=>iN-1=>i 當i<N時j>N-1是 否0=>j>j>aij=0是 否k=>aij0=>iprintf("t");0=>j

11、 當j<N時printf("%4d",aij);j+printf("nn");i+; 實例14A=>xwei0, 1=>i 當i<5時B=>xweii, 1=>j 當j<5時j!=i是 否C=>xweij, 1=>k 當k<5時k!=i&&k!=j是 否D=>xweik,E=>xwei10-i-j-k判斷輸出k+j+實例150=>i 當i<4時0=>j 當j<13時ai=>s2*j+26*i,bj=>s2*j+26*i+1j+0=&

12、gt;ii+生成隨機數 當i<52時j=random(52-i);與最后一張牌交換花色i+與最后一張牌交換牌值0=>i 當i<104時(j%13)!=0是 否printf("nnn");printf(" %c%c",si,si+1);i+=2,j+圖15-2 流程圖實例16得到原始字符串,標志信息數組置初值-, 0=>i 當i<N時str0i='0'是 否i=>j 當(j<N)&&(str1j!='0'時flagj0='y'flagj4=str1j;

13、j+str1i='0'是 否 當(j<N)&& (str0j!='0')'時i=>jflagj0='y'flagj2=str1j;j+str0i!=str1i)是 否flagi0='y' lagi2=str0i;flagi4=str1i;實例17 當*p!='0'&&(*p>='0')&&(*p<='9')時k=*(p+)-48;number=10*number+k;return number;實例18得

14、到字符串:gets(p) 當*p!='0'時 (*p>='A')&&(*p<='Z')是 否up+ (*p>='a')&&(*p<='z')是 否low+; *p=' '是 否space+;digit+;other+;i+圖18-2 流程圖實例190=>i 當i<M時0=>flag0=>j當j<N時*(*(p+i)+j)<60=1是 否1=>flagj+flag=1是 否順序顯示成績i+實例200=&g

15、t;i 當i<N時i+1=>j 當j<N時 strcmp(*(p+i),*(p+j)>0是 否pstr=*(p+j); *(p+j)=*(p+i);*(p+i)=pstr;j+i+實例21(b-a)/N=>h(*fun)(a)+(*fun)(b)/2.0=>s 當i<=N時s+(*fun)(a+i*h)=>s1=>ii+return (s*h)實例22gets();gets(numstr);printf("nInputdata(name,number,sex(m/w),score)of studene%d

16、:n",n+1);studentn.sex=getchar();studentn.number=atol(numstr);getchar();studentn.score=atof(numstr);gets(numstr);n+;實例231=>flaghead=>*p 當p!=NULL&&flag=1時p->key=k是 否0=>flagp->next=>p flag=0是 否否否p->count+;head=>phead=(struct number *)malloc(LENGTH);head->key=k; h

17、ead->count=1; head->next=p;實例24函數newhead=>p1,head=>p2開辟空間:p=(struct student *)malloc(LENGTH);gets(numstr);p->number=atol(numstr); gets(p->name); p->number>0是 否 head=NULL是 否p=>headNULL=>p->nextn+; 當(p->number>p1->number)&& (p1- >next!=NULL)時p1=>

18、p2, p1->next=>p1p->number<p1->number是 否顯示錯誤信息函數listp->number<p1->number是 否head=p1是 否head=p;p>next=p1;n+;p2>next=p; p>next=p1; n+;p->number=p1->number是 否strcpy(p1>name,p->name);p1>next=NULL是 否p1->next=p;p>next=NULL;n+;實例25atol(gets(numstr)=>k h

19、ead=NULL是 否顯示空表信息head->number=k是 否p1=head;head=head->nextn-;free(p1);head=>p1 當p1->number!=k&&p1->next!=NULL時p2=p1; p1=p1->next;p1->number=k是 否p2->next=p1->next; free(p1); n-;顯示錯誤信息圖25-2 流程圖實例260=>i 當i<N時gets();scanf("%d",&infoi.age);

20、getchar();infoi.sex=getchar();getchar();infoi.job=getchar();getchar();根據職業不同選擇單位類型輸入數據實例27i=RED 當i<=BLACK時j=RED 當j<=BLACK時i!=j是 否另外三種賦值另外三種賦值k=RED 當k<=BLACK時 k!=i&&k!=j是 否printf("%-4d",+n);新排列組合則輸出結果實例28b=number>>n循環右移a=number<<(16-n);number=a|b;return (number)

21、;進制轉換顯示k=0x8000;printf(" %04x(16) t",number); 當i<16時bit=(k&number)?1:0;printf("%d",bit);i=7是 否printf("-");k>>=1;printf("(2)n");實例291=>flag(fp1=fopen("file1.txt","r")=NULL是 否輸出信息:文件打不開flag=0;fclose(fp1); flag=1是 否(fp2=fopen(&

22、quot;file2.txt","w")=NULL是 否輸出信息:文件打不開flag=0;fclose(fp2);fclose(fp1); 當flag=1時 當(ch=fgetc(fp1)!=EOF時ch=new(ch); fputc(ch,fp2);flag=0;fclose(fp1);fclose(fp2);printf("n source file: file1.txt n new file: file2.txt");實例30寫新記錄k=n*sizeof(struct student);打開文件文件指針移動到指定地點gets(numstr

23、); stud.number=atol(numstr);gets();gets(numstr); stud.score=atof(numstr);fwrite(&stud,sizeof(struct student),1,fp);n+;實例78 定義變量x ,y, z for (x=0 ; x<=100 ; x+) for ( y=0 ; y<=100 ; y+) z=100-x-y 15x+9y+z=300 T F 打印x ,y ,z 實例79 n=0 x 從apple變到 pear y 從apple變到 pear xy T F z從apple變到 pe

24、ar z x和zy T F For (loop =1 ;loop<=3 ;loop+) loop 1 2 3 pri=x pri=y pri=z pri apple arange banana pineapple pear 打印 打印 打印 打印 打印 apple arrange banana pineapple pear n=n+1 輸出制法的總數 實例 x=1, y=18y >0x=2*(x+1)y-打印x真假80實例81輸入a,bm=a ,n=ba<ba ,b 交換c=a%b c!=0a=b, b=c , c=a%b輸出最大公約數和最小公倍數真假真假實例82定義數組a318, s18輸入三個字符串a0>a1交換a0 和a1a0>a2a1>a2交換a0 和a2交換a1 和a2輸出三個字符串a0 , a1 , a2真假真假假真實例83定義符號常量N為10輸入N名學生的學號和成績并給數組num和st表達式1 x=1x<=Nsum=sum+stx x+ave=sum/N 打印ave表達式1 x=1x<=NStx>=ave打印numx , stxx+真假真真假定義數

溫馨提示

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

評論

0/150

提交評論