程式设计範例及练习.DOCVIP

  • 1
  • 0
  • 约3.84万字
  • 约 81页
  • 2018-11-02 发布于天津
  • 举报
程式设计範例及练习

PAGE PAGE 1 程式設計範例及練習 Class 1.2 副程式範例 Index HYPERLINK \l e1 Example 1.2-1 計算M取N階層 () HYPERLINK \l e2Example 1.2-2 矩陣相加 HYPERLINK \l e3 Example 1.2-3 矩陣相乘 HYPERLINK \l e4Example 1.2-4 找出1到n中所有的質數 HYPERLINK \l e5 Example 1.2-5 電費計算 HYPERLINK \l e6Example 1.2-6 計算平均分數, 及與平均分數的分數差 HYPERLINK file:///C:\\Documents%20and%20Settings\\桌面\\class11.doc \l e7#e7 練習1 HYPERLINK \l e7Example 1.2-7 氣泡排序法 HYPERLINK \l e8Example 1.2-8 選擇排序法 HYPERLINK \l e9Example 1.2-9 插入排序法 HYPERLINK file:///C:\\Documents%20and%20Settings\\桌面\\class11.doc \l e7#e7 練習2 HYPERLINK \l e10Example 1.2-10 求 |Xi-Yj| 的最小值 HYPERLINK \l e11Example:1.2-11 計算矩陣位置 HYPERLINK \l e11Example:1.2-12 字串排序 HYPERLINK \l e11Example:1.2-13 Stack之實作與應用 HYPERLINK \l e11Example:1.2-14 Queue實作與應用 HYPERLINK \l e11Example:1.2-15 利用 structure 建構資料 及 排序資料 HYPERLINK \l e11Example:1.2-16 利用 structure 新增資料 及 刪除資料 Example 1.2-1: 輸入兩個數M及N,計算M取N的值,亦即M!/(N!(M-N)!) HYPERLINK \l index Go to index /* 程式功能: 輸入兩個數M及N,計算M取N的值,亦即M!/(N!(M-N)!) */ #include stdio.h long int Fact(int I); void main(void) { long int M, N, C; printf (輸入兩個正數值M,N,且M須大於等於N); printf (\n); printf (M=); scanf(%ld,M); /*由鍵盤輸入數值*/ printf (\n); printf (N=); scanf(%ld,N); C = Fact(M)/(Fact(N)*Fact(M-N)); /*印出總和*/ printf(M取N=%ld,C); return; } long int Fact(int I) /* 計算整數I的階乘值,即I! */ { /* 注意: 此函數未處理overflow的問題,也就是當I大於某個數時, */ /* 其計算結果不會是正確的值 */ long int J, P=1; if (I0) return 0; /* I小於0為不合理的值*/ for (J=1; J=I; J++) P = P*J; return P; } 解釋: 在這以前,我們從未介紹過副程式,所謂副程式,就是在一個程式內被呼叫的一個程式,以這個例子而言,我們的副程式就是Fact,而Fact的功能在於算一個整數的階乘,因為有副程式,我們就會有主程式,主程式永遠叫做main,然而副程式的名字我們可以任意取,但是必須要事先宣告,假如甲程式會呼叫一個乙副程式,我們建議你在甲程式的前面先宣告乙副程式.   以我們這個例子而言,我們只有一個副程式,這個副程式就是Fact,而以下是有關於Fact的宣告: long int Fact(int I); Fact前面的long int表明這個副程式的輸出是一個很長的整數,至於int I是指Fact的輸入是I,而且必須是一個整數.   在C語言程式中,是只可以有一個輸出的,如果你想輸出一個以上的結果

文档评论(0)

1亿VIP精品文档

相关文档