引用 | 編輯
丫泰
2007-01-03 00:38 |
樓主
▼ |
||
x0
因期末考 老師出了十題 需要解其中之過程 麻煩高手代解 謝謝/*bubble-sort*/ main() { int n,i,j,t,k={9999,3,7,5,4,2,1,8,6},comp,change; comp=0; change=0; n=8; for (i=1;i<=n-1;i++) for(j=n;j>=i+1;j--) { comp=comp+1; if(k-k<0) { change=change+1; t=k; k=k; k=t; } } for(i=1;i<=n;i++) printf("%d ",k); printf("\ncomp=%d change=%d",comp,change); } /*double loop*/ main() { int n,s,i,p,j; scanf("%d",&n); s=0; for (i=1;i<=n;i++) { p=1; for (j=1;j<=3;j++) p=p*j; s=s+p; } printf("s=%d",s); } /*alternative GCD*/ main() { int a,b,r,k; scanf("%d %d",&a,&b); a_rtn: k=a/b; r=a-k*b; a=b; b=r; if(r!=0)goto a_rtn; printf("%d",a); } /*continue statement exercise*/ main() { int i,p; p=1; for (i=2;i<=30;i=i+2) { if(i%5!=0) continue; p=p*i; } printf("p=%d",p); } /*s=1+4+8+13+19+26+34+...+n*/ main() { int n,s,k,i; scanf("%d", .. 訪客只能看到部份內容,免費 加入會員 x0
|
引用 | 編輯
marktown
2007-01-06 00:57 |
1樓
▲ ▼ |
其時解過程沒有難處只要看的懂在作什麼 該有宣告變數就會有值有比較就有不同路逕有回圈就會重覆作個幾次當然最後宣告的變數被改變了沒輸出要那個慢慢跑一下流程就可以知道了
通常我都是用二維的方式解程式狀態當 xxx到那那個變數值變了除非特殊才要用三維 x0 |
引用 | 編輯
youck
2007-01-06 12:27 |
2樓
▲ |
第一題關件:
複製程式 comp=comp+1; //計算小迴園執行次數 if(k[j]-k[j-1]<0)//判斷後減前是否<0(表示前>後);是的前後交換 { change=change+1;//計算交換次數 第二題關件 複製程式 p=1;//定義初值 for (j=1;j<4;j++) { p=p*j;//計算1*1,1*2,2*3 s=s+p;//將p值疊加 } 第二題關件 複製程式 a_rtn: k=a/b;//求商數k r=a-k*b;//計算r值 a=b;//把b給a b=r;//把r給b if(r!=0)goto a_rtn;//當r不等於0時反覆執行a_rtn x1 |