




版權說明:本文檔由用戶提供并上傳,收益歸屬內容提供方,若內容存在侵權,請進行舉報或認領
文檔簡介
1、分支案例分析案例分析分支程序設計 簡單分支簡單分支 雙分支雙分支 多分支多分支簡單分支程序設計 求絕對值求絕對值 顯示三個數中的奇數顯示三個數中的奇數 三數中取極值三數中取極值main()int x,y;printf(“請輸入一個數請輸入一個數n”);scanf(“%d”,&x);y=x;if (xmax) max=b; if(cmax); max=c; printf(The max number is%dn,max); 雙分支程序設計 兩數的比較兩數的比較 判斷一數能否被另一數整除判斷一數能否被另一數整除兩數的比較兩數的比較main() int x,y; printf (please
2、 input x,y.n); scanf (%d%d,&x,&y); if(xy) printf(The max number is%dn,x); else printf(The max number is%dn,y); 判斷一數能否判斷一數能否被另一數整除被另一數整除main() int x,y; printf (please input x,y.n); scanf (%d%d,&x,&y); if(x%y) printf(“No); else printf(“Yes”); 多分支程序設計 分段函數求解分段函數求解 一元二次方程求解一元二次方程求解 顯示學生成
3、績與等級顯示學生成績與等級分段函數求解分段函數求解main() int y; float x; printf(“ input x:n”); scanf(“%f”,&x); switch(x=0 x2=sqrt(d)/2a輸出x1x2x2=sqrt(-d)/2a輸出x1x2i結 束YesNoYesNo#include “math.h”main()float a,b,c,a2,x1,x2;printf(“輸入系數輸入系數a,b,cn”);scanf(“%f%f%f”,&a,&b,&c);if(a=0) printf(“root=%fn”,x1=-c/b);else
4、d=b*b-4*a*c; a2=2*a; x1=-b/a2; if(d=0) x2=sqrt(d)/a2; printf(“root1=%f,root2=%fn”,x1+x2,x1-x2); else x2=sqrt(-d)/a2; printf(“root1=%f+%fin”,x1,x2); printf(“root1=%f-%fin”,x1,x2 顯示學生成績與等級顯示學生成績與等級main() float score; int num,i=0; printf(please input the total students.n); scanf (%d,&num); printf(p
5、lease input each students score.n); while (i=100)|(score0) printf (error!repeat inputn); continue; switch (int)(score/10) case 10 : c a s e 9 : p r i n t f ( “ % d i s g r a t e A”,score);break; c a s e 8 : p r i n t f ( “ % d i s g r a t e B”,score);break; case 7 : printf(“%d is grate C”,score);bre
6、ak; case 6 : printf(“%d is grate D”,score);break; case 5 :case 4 :case 3 :case 2 :case 1 :case 0 : printf(“%d is fail”,score); i=i+1; 照貓畫虎1.輸入三角形的三條邊輸入三角形的三條邊,若構成直角三角形若構成直角三角形,則則輸出相應信息。輸出相應信息。2.一個一個5位數位數,判斷它是不是回文樹判斷它是不是回文樹.即即12321是是回文數回文數,個位與萬位相同個位與萬位相同,十位與千位相同。十位與千位相同。3.請輸入星期幾的第一個字母來判斷是星期請輸入星期幾的第一個
7、字母來判斷是星期幾幾,如果第一個字母一樣如果第一個字母一樣,則繼續判斷第二個則繼續判斷第二個字母。字母。c分支和循環案例分析 1.和積計算和積計算 求和求和:s=1*2+2*3+99*100 3.求特定數判斷一數能否被另一數整除求特定數判斷一數能否被另一數整除求從鍵盤任意輸入的兩個整數的最大公約數與最小公倍數求從鍵盤任意輸入的兩個整數的最大公約數與最小公倍數水仙花數:三位數的各位數字的立方和等于該三位數即為水水仙花數:三位數的各位數字的立方和等于該三位數即為水仙花數,求出所有水仙花數。仙花數,求出所有水仙花數。 2.素數探求素數探求 打印輸出打印輸出100200之間的素數。之間的素數。 質因數
8、分解:輸入自然數質因數分解:輸入自然數n,將其表示為質因數從小到大,將其表示為質因數從小到大順序連乘形式。如:順序連乘形式。如:90=2*3*3*5c分支和循環案例分析 4.不定方程求解一元二次方程求解不定方程求解一元二次方程求解中國古代數學家張丘建在他的算經中提出了著名的“百錢買百雞問題”:雞翁一,值錢五,雞母一,值錢三,雞雛三,值錢一,百錢買百雞,問翁、母、雛各幾何? 5.利用迭代公式求值利用迭代公式求值用迭代法求某個數用迭代法求某個數a的平方根。的平方根。 已知求平方根的迭代公式為:已知求平方根的迭代公式為:)(21001xaxxc分支和循環案例分析1.和積計算求和求和:s=1*2+2*
9、3+99*100main()long I,s;s=0;for (i=1;i=99;i+) s+=i*(i+1);printf(1*2+2*3+99*100 =%ldn,s); 問題變通問題變通1:求求s= 1*2+2*3+n*(n+1) 2.求和求和:s=1*3+3*5+(2n-1)*(2n+1)累加和:累加和:c分支和循環案例分析1.和積計算求求n!=1*2*3*nmain()int I,n;long t;scanf(“%d”,&n);t=1;for (i=1;i=n;i+) t=t*i;printf(“%d!=%ldn,n,t);問題變通問題變通1:求求s= 1+1/1!+1/2!
10、+1/3!+1/n!問題引申問題引申:求階乘和數求階乘和數:一個正整數如果等于組成它的各位數字的一個正整數如果等于組成它的各位數字的階乘之和階乘之和,該正整數稱為階乘和數該正整數稱為階乘和數.階乘計算:階乘計算:c分支和循環案例分析2.素數探求打印輸出打印輸出100200之間的素數。之間的素數。main() int i,j; for(i=100;i=200;i+) for(j=2;ji-1) printf(%5d,i); 探求區間素數:探求區間素數:思考:如何改進可提高程序的判別效率?思考:如何改進可提高程序的判別效率?c分支和循環案例分析2.素數探求輸入自然數輸入自然數n,將其表示為質因數從
11、小到大順序連乘形式。,將其表示為質因數從小到大順序連乘形式。如:如:90=2*3*3*5#includemain()long n,k, t;scanf(“%ld”,&n);t=n;for (k=2;k1)printf(“%ld*”,k);continue; if(t=1) printf(“%ldn”,k); if(t1&tn) printf(“%ldn”,t);if(t=n) printf(“%ldn是素數是素數”,n);質因數分解:質因數分解:c分支和循環案例分析3.求特定數求從鍵盤任意輸入的兩個整數的最大公約數與最小公倍數求從鍵盤任意輸入的兩個整數的最大公約數與最小公倍數
12、main() int a,b,temp,k; printf(Input a & b:); scanf(%d%d,&a,&b); k=a*b; if(ab) temp=a;a=b; b=temp; while(b!=0) temp=a%b; a=b; b=temp; printf(“最大公約數是最大公約數是: %dn,a); printf(“最小公倍數是最小公倍數是:%dn”,k/a);最大公約數與最小公倍數:最大公約數與最小公倍數:main() int a,b,t; printf(Input a & b:); scanf(%d%d,&a,&b);
13、 if(a=1;t-) if(a%t=0&b%t=0) break; printf(“最大公約數是最大公約數是: %dn,t); printf(“最小公倍數是最小公倍數是:%dn”,a*b/t);c分支和循環案例分析3.求特定數三位數的各位數字的立方和等于該三位數即為水仙花數,求出所有水仙花數。三位數的各位數字的立方和等于該三位數即為水仙花數,求出所有水仙花數。main()int i,a,b,c;for(i=100;i=999;i+) a=i/100; b=(i/10)%10; c=i%10; if(i=a*a*a+b*b*b+c*c*c) printf(%d”,i); 水仙花數:水仙
14、花數:main()int i,j,k,n;for(i=1;i=9;i+) for(j=0;j=9;j+) for(k=0;k=9;k+) n=i*100+j*10+k; if(n=i*i*i+j*j*j+k*k*k) printf(%d”,n); c分支和循環案例分析1.有有100100克的藥需用天平秤量,現在砝碼只有克的藥需用天平秤量,現在砝碼只有1 1克、克、2 2克和克和5 5克共克共3 3種,問要求加的種,問要求加的砝碼總數為砝碼總數為3030個,有幾種不同的加法?個,有幾種不同的加法? # include main( ) int i,j,k,sum; sum=0; for (i=0;
15、i30;i+) for(j=0;j30-i;j+) k=30-i-j; if (i+2*j+5*k=100) sum=sum+1; printf(one result:%2d,%2d,%2dn,i,j,k); printf(sum=%d,sum); 4.不定方程求解c分支和循環案例分析1.中國古代數學家張丘建在他的中國古代數學家張丘建在他的算經算經中提出了著名的中提出了著名的“百錢買百雞問百錢買百雞問題題”:雞翁一,值錢五,雞母一,值錢三,雞雛三,值錢一,百錢買百雞,:雞翁一,值錢五,雞母一,值錢三,雞雛三,值錢一,百錢買百雞,問翁、母、雛各幾何?問翁、母、雛各幾何?題目分析與算法設計題目分析
16、與算法設計 設雞翁、雞母、雞雛的個數分別為設雞翁、雞母、雞雛的個數分別為x,y,z,題意給定共,題意給定共100錢要買百雞,若錢要買百雞,若全買公雞最多買全買公雞最多買20只,顯然只,顯然x的值在的值在020之間;同理,之間;同理,y的取值范圍在的取值范圍在033之間,可得到下面的不定方程:之間,可得到下面的不定方程: 5x+3y+z/3=100 x+y+z=100 所以此問題可歸結為求這個不定方程的整數解。所以此問題可歸結為求這個不定方程的整數解。4.不定方程求解c分支和循環案例分析 #includevoid main() int x,y,z,j=0; printf(“下面程序是百錢買百雞下
17、面程序是百錢買百雞.n); for(x=0;x=20;x+) for(y=0;y=33;y+) for(z=0;y=100;z+) if(z%3=0&x+y+z=100&5*x+3*y+z/3=100) printf(“%2d:公雞公雞=%2d 母雞母雞=%2d 小雞小雞=%2dn,+j,x,y,z); c分支和循環案例分析 #includevoid main() int x,y,z,j=0; printf(“下面程序是百錢買百雞下面程序是百錢買百雞.n); for(x=0;x=20;x+) for(y=0;y=33;y+) z=100-x-y; if(z%3=0&5*
18、x+3*y+z/3=100) printf(“%2d:公雞公雞=%2d 母雞母雞=%2d 小雞小雞=%2dn,+j,x,y,z); 改進程序改進程序:c分支和循環案例分析圖形圖案打印打印n n層用層用“* *”組成的金字塔(如下圖為組成的金字塔(如下圖為5 5層)。層)。 * * * * * main() int n,k,m; printf(“請輸入金字塔的行數請輸入金字塔的行數.n); scanf(“%d”,&n); for(k=1;k=n;k+) for(m=1;m=50-k;m+) printf(“ “); for(m=1;m=2*k-1;m+) printf(“ *“); pr
19、intf(“n”); c分支和循環案例分析循環程序典型例題分析1以下程序的輸出結果是以下程序的輸出結果是 。#include main() int i=1,j=1; for (; j5) break; if (j%2!=0) j+=3; continue;j-=1;printf(“%d,%d”,i,j); 1,9c分支和循環案例分析2以下程序的輸出結果是以下程序的輸出結果是#include main() int k=0,m=0; int i,j; for(i=0;i2;i+) for (j=0;j3;j+) k+; k-=j;m=i+j;printf(”k=%d,m=%d”,k,m);Ak=0
20、,m=3 Bk=0,m=5 Ck=1,m=3Dk=1,m=5c分支和循環案例分析3以下程序的輸出結果是_。# include main() int i,s=0; for (i=1;i=100;i+) if (i%2=0) continue; s+=i; printf(“s=%dn”,s);2500c分支和循環案例分析1. 求求s=a+aa+aaa+aaaa+aaaa的值,其中的值,其中a是一個數字。例如是一個數字。例如2+22+222+2222+22222(此(此時共有時共有5個數相加),幾個數相加由鍵盤控制。個數相加),幾個數相加由鍵盤控制。2. 求求s=1!+2!+3!+n!編程題c分支和循環案例分析main()int a,n,count=1;long int sn=0,tn=0;printf(please input a and nn);scanf(%d,%d,&a
溫馨提示
- 1. 本站所有資源如無特殊說明,都需要本地電腦安裝OFFICE2007和PDF閱讀器。圖紙軟件為CAD,CAXA,PROE,UG,SolidWorks等.壓縮文件請下載最新的WinRAR軟件解壓。
- 2. 本站的文檔不包含任何第三方提供的附件圖紙等,如果需要附件,請聯系上傳者。文件的所有權益歸上傳用戶所有。
- 3. 本站RAR壓縮包中若帶圖紙,網頁內容里面會有圖紙預覽,若沒有圖紙預覽就沒有圖紙。
- 4. 未經權益所有人同意不得將文件中的內容挪作商業或盈利用途。
- 5. 人人文庫網僅提供信息存儲空間,僅對用戶上傳內容的表現方式做保護處理,對用戶上傳分享的文檔內容本身不做任何修改或編輯,并不能對任何下載內容負責。
- 6. 下載文件中如有侵權或不適當內容,請與我們聯系,我們立即糾正。
- 7. 本站不保證下載資源的準確性、安全性和完整性, 同時也不承擔用戶因使用這些下載資源對自己和他人造成任何形式的傷害或損失。
最新文檔
- 豆類食品加工企業生產計劃與調度考核試卷
- 肉類加工過程中的質量監控技術考核試卷
- 新生兒喂養指導要點
- 院前急救與護理要點解析
- 誼安呼吸機510臨床操作與產品解析
- Guamecycline-生命科學試劑-MCE
- 單站閃電定位儀在哪些場景應用
- 新疆棉紡織產業發展現狀與趨勢調研報告
- 2025年下半年保險行業策略報告:新增負債成本顯著下降板塊兼具基本面及資金面催化
- 新能源汽車在城市公共交通中的應用與城市能源結構轉型報告
- 杭州市富陽區衛健系統事業單位招聘筆試真題2024
- 2023-2024學年貴州省黔南州都勻市統編版三年級下冊期末考試語文試卷
- 2025遼寧沈陽副食集團所屬企業招聘25人筆試參考題庫附帶答案詳解析集合
- 2024年福建省廈門市思明區初中畢業班適應性練習(二)地理試卷
- 創造良好工作氛圍的有效途徑
- 2025年心理學基礎考試試卷及答案
- 2025上海電子信息職業技術學院輔導員考試試題及答案
- 三大國企面試題及答案
- 無人機設計與架構試題及答案
- 2025年航天知識競賽題庫及答案
- 游泳救生員勞務合同協議
評論
0/150
提交評論