三周C 總結4 函式

2021-06-18 00:12:01 字數 2980 閱讀 8689

如何只遍歷一次陣列,

從中找到兩個最小的數.

public

static

void findmin(int arr)

int min1, min2;

if (arr[0] > arr[1])

min1 = 1; min2 = 0;

else  ",arr[min1],arr[min2]);

1.c#函式只能在某個類中定義,函式不能巢狀定義即在某個函式中定義其它函式。

函式由訪問屬性(public,private,protected,…);

2、函式呼叫:如果是靜態函式,可以通過類名去直接呼叫;如果是非靜態函式則需要通過類物件去呼叫。

3、形式引數與實際引數傳遞:

1) 值傳遞:

基本值型別資料

static

void swap(int x, int y)//不能交換x,y值

int t = x; x = y; y = t;

2) 引用傳遞:

static

void swap(int arr)

int t = arr[0]; arr[0] = arr[1]; arr[1] = t;//能交換arr[0],arr[1]值

4、輸出引數out

static

void fun(int x1, int x2, out

int x3)

x3 = x1 + x2;

static

void main(string args)

int x = 10, y = 100, z;

fun(x, y, out z);//接收輸出引數值,不需要為z賦初始值

console.writeline(x+" "+y+" "+z);

console.readline();

5、帶有可變引數的函式

static

int fun(int a,params

int x)

int s = 0;

for (int i = 0; i 

s += x[i];

return s;

static

void main(string args)

console.writeline(fun(1,2,3,4));

console.writeline(fun(1));

console.writeline(fun(1,3,4,4,6,7));

console.readline();

6.、遞迴函式:函式遞迴呼叫

遞迴函式:1)遞推公式,2)遞迴出口

//求階乘

static long fac(int n)--->", a, c);

static

void hannota(string a, string b, string c, int n)

if (n == 1)

disp(a, c);

else

hannota(a, c, b, n - 1);

disp(a, c);

hannota(b, a, c, n - 1);

練習:

編寫乙個程式找出100~1000之間的所有姐妹素數。

注: 姐妹素數是指相鄰兩個奇數均為素數。

利用求n!的方法計算 2!+4!+5!的值。分別利用遞迴和非遞迴方法實現求n!

(1)遞迴:

class

pr4_6

static

int digui(int n)

int sum=0;

if (n == 0 || n == 1)

sum = 1;

else

sum = n * digui(n - 1);

return sum;

static

void main(string args)

int sum =digui(2)+digui(4)+digui(5);

console.writeline("++=","2!","4!","5!", sum);

console.readline();

(2)非遞迴:

class

pr4_6

static

int digui(int n)

int sum=1;

if (n == 0 || n == 1)

sum = 1;

else

for (int i = 2; i <= n; i++)

sum = sum * i;

return sum;

static

void main(string args)

int sum =digui(2)+digui(4)+digui(5);

console.writeline("++=","2!","4!","5!", sum);

console.readline();

三周C 總結三

1 陣列概念 陣列名變數代表陣列首位址。定義 int x1 new int 10 string names 2.折半查詢演算法 要求陣列按照大小有序 static int quickfind int arr,int x 形式引數 int index 1 int low 0,high arr.leng...

c 培訓周總結4

培訓部分 資料結構的概念 邏輯結構 物理結構 運算結構 幾個常用的資料結構 堆疊 棧 佇列鍊錶 二叉樹 有序 資料結構的分類 抽象層 邏輯結構 人腦中 結構層 物理結構 計算機 實現層 運算結構 應用角度 邏輯結構的分類 集合結構 集 結構中的元素除了 同屬於乙個集合之外沒有 其他的關係。線性結構 ...

C 筆記總結(第三週)

define add a,b a b 巨集函式 intadd int a,int b 自定義函式 intmain c語言 凡是用inline中修飾函式都會被內嵌到函式呼叫的地方 注意事項 短小 簡單 且不被頻繁呼叫的函式 c 編譯器做判斷 用inline修飾的函式不一定被內嵌到呼叫的地方 限制條件 ...