C語言 | 函數的(de)基本使用和(hé / huò)遞歸 - 新聞資訊 - 雲南小程序開發|雲南軟件開發|雲南網站建設-昆明融晨信息技術有限公司

159-8711-8523

雲南網建設/小程序開發/軟件開發

知識

不(bù)管是(shì)網站,軟件還是(shì)小程序,都要(yào / yāo)直接或間接能爲(wéi / wèi)您産生價值,我們在(zài)追求其視覺表現的(de)同時(shí),更側重于(yú)功能的(de)便捷,營銷的(de)便利,運營的(de)高效,讓網站成爲(wéi / wèi)營銷工具,讓軟件能切實提升企業内部管理水平和(hé / huò)效率。優秀的(de)程序爲(wéi / wèi)後期升級提供便捷的(de)支持!

您當前位置>首頁 » 新聞資訊 » 技術分享 >

C語言 | 函數的(de)基本使用和(hé / huò)遞歸

發表時(shí)間:2020-10-19

發布人(rén):融晨科技

浏覽次數:54

文章目錄

  • 函數是(shì)什麽?
  • 一、C語言中函數的(de)分類
  • 二、函數的(de)參數
    • 1.實際參數(實參)
    • 2.形式參數(形參)
  • 三、函數的(de)調用
  • 四、函數的(de)聲明和(hé / huò)定義
  • 五、函數遞歸


函數是(shì)什麽?

  • 在(zài)計算機科學中,子(zǐ)程序是(shì)一個(gè)大(dà)型程序中的(de)某部分代碼,由一個(gè)或多個(gè)語句塊組成。它負責完成某項特定任務,而(ér)且相較于(yú)其他(tā)代碼,具備相對的(de)獨立性。
  • 一般會有輸入參數并有返回值,提供對過程的(de)封裝和(hé / huò)細節的(de)隐藏。這(zhè)些代碼通常被集成爲(wéi / wèi)軟件庫。

一、C語言中函數的(de)分類

1、庫函數
爲(wéi / wèi)了(le/liǎo)支持可移植性和(hé / huò)提高程序的(de)效率,C語言的(de)基礎庫中提供了(le/liǎo)一系列庫函數,滿足一些基礎功能,他(tā)們不(bù)是(shì)業務性的(de)代碼,在(zài)開發的(de)過程中每個(gè)程序員都可能用的(de)到(dào),方便程序員進行軟件開發。
C語言常用庫函數:

  • IO函數
  • 字符串操作函數
  • 字符操作函數
  • 内存操作函數
  • 時(shí)間/日期函數
  • 數學函數
  • 其他(tā)庫函數

使用庫函數,必須包含#include對應的(de)頭文件

庫函數學習:www.cplusplus.com

2、自定義函數
函數的(de)組成:

ret_type fun_name(para1,*)
{
	statement;
}
/*
ret_type:返回值類型
fun_name:函數名
para1,*:形參列表
*/

C語言默認返回值是(shì)整形,函數傳參要(yào / yāo)發生形參實例化,這(zhè)個(gè)過程要(yào / yāo)發生值拷貝。(形參的(de)實例化之(zhī)後其實相當于(yú)實參的(de)一份臨時(shí)拷貝)

二、函數的(de)參數

1.實際參數(實參)

真實傳給函數的(de)參數,叫實參。實參可以(yǐ)是(shì):常量,變量,表達式,函數等。無論實參是(shì)何種類型的(de)量,在(zài)進行函數調用時(shí),它們都必須有确定的(de)值,以(yǐ)便把這(zhè)些值傳給形參。

2.形式參數(形參)

形式參數是(shì)指函數名後括号中的(de)變量,因爲(wéi / wèi)形式參數隻有在(zài)函數在(zài)被調用的(de)過程中才實例化(分配内存單元),所以(yǐ)叫形式參數。形式參數當函數調用完成之(zhī)後就(jiù)自動銷毀了(le/liǎo)。因此形式參數隻在(zài)函數中有效。
函數傳參必定形成臨時(shí)變量,臨時(shí)變量的(de)形成是(shì)在(zài)函數被調用時(shí),但正式的(de)代碼執行之(zhī)前。

:寫一個(gè)函數可以(yǐ)交換兩個(gè)整形變量的(de)内容

#include<stdio.h>
#include<windows.h>

//每調用一次,就(jiù)會将num的(de)值加1
void add(int *cp){
	(*cp)++;
}
//交換兩個(gè)整形變量的(de)内容
void Swap1(int x, int y){
	int tmp = 0;
	tmp = x;
	x = y;
	y = tmp;
}
void Swap2(int *px, int *py){
	int tmp = 0;
	tmp = *px;
	*px = *py;
	*py = tmp;
}
int main(){
	//int count = 1;
	//for (int i = 1; i <= 10; i++){
	//	add(&count);
	//	printf("%d\n", count);
	//}
	int num1 = 1;
	int num2 = 2;
	Swap1(num1, num2);
	printf("Swap1:num1 = %d num2 = %d\n", num1, num2);
	Swap2(&num1, &num2);
	printf("Swap2:num1 = %d num2 = %d\n", num1, num2);
	system("pause");
	return 0;
}

結果:

Swap1:num1 = 1 num2 = 2
Swap2:num1 = 2 num2 = 1
請按任意鍵繼續. . .

三、函數的(de)調用

  • 傳值調用
  • 傳址調用

:寫一個(gè)函數,每調用一次這(zhè)個(gè)函數,就(jiù)會将num的(de)值增加1。

#include<stdio.h>
#include<windows.h>
//每調用一次,就(jiù)會将num的(de)值加1
void add(int *cp){
	(*cp)++;
}
int main(){
	int count = 1;
	for (int i = 1; i <= 10; i++){
		add(&count);
		printf("%d\n", count);
	}
	system("pause");
	return 0;
}

四、函數的(de)聲明和(hé / huò)定義

五、函數遞歸


相關案例查看更多