知識(shí)
不管是網(wǎng)站,軟件還是小程序,都要直接或間接能為您產(chǎn)生價(jià)值,我們?cè)谧非笃湟曈X(jué)表現(xiàn)的同時(shí),更側(cè)重于功能的便捷,營(yíng)銷的便利,運(yùn)營(yíng)的高效,讓網(wǎng)站成為營(yíng)銷工具,讓軟件能切實(shí)提升企業(yè)內(nèi)部管理水平和效率。優(yōu)秀的程序?yàn)楹笃谏?jí)提供便捷的支持!
C語(yǔ)言 | 函數(shù)的基本使用和遞歸
發(fā)表時(shí)間:2020-10-19
發(fā)布人:葵宇科技
瀏覽次數(shù):54
文章目錄
- 函數(shù)是什么?
- 一、C語(yǔ)言中函數(shù)的分類
- 二、函數(shù)的參數(shù)
- 1.實(shí)際參數(shù)(實(shí)參)
- 2.形式參數(shù)(形參)
- 三、函數(shù)的調(diào)用
- 四、函數(shù)的聲明和定義
- 五、函數(shù)遞歸
函數(shù)是什么?
- 在計(jì)算機(jī)科學(xué)中,子程序是一個(gè)大型程序中的某部分代碼,由一個(gè)或多個(gè)語(yǔ)句塊組成。它負(fù)責(zé)完成某項(xiàng)特定任務(wù),而且相較于其他代碼,具備相對(duì)的獨(dú)立性。
- 一般會(huì)有輸入?yún)?shù)并有返回值,提供對(duì)過(guò)程的封裝和細(xì)節(jié)的隱藏。這些代碼通常被集成為軟件庫(kù)。
一、C語(yǔ)言中函數(shù)的分類
1、庫(kù)函數(shù)
為了支持可移植性和提高程序的效率,C語(yǔ)言的基礎(chǔ)庫(kù)中提供了一系列庫(kù)函數(shù),滿足一些基礎(chǔ)功能,他們不是業(yè)務(wù)性的代碼,在開(kāi)發(fā)的過(guò)程中每個(gè)程序員都可能用的到,方便程序員進(jìn)行軟件開(kāi)發(fā)。
C語(yǔ)言常用庫(kù)函數(shù):
- IO函數(shù)
- 字符串操作函數(shù)
- 字符操作函數(shù)
- 內(nèi)存操作函數(shù)
- 時(shí)間/日期函數(shù)
- 數(shù)學(xué)函數(shù)
- 其他庫(kù)函數(shù)
使用庫(kù)函數(shù),必須包含#include對(duì)應(yīng)的頭文件
庫(kù)函數(shù)學(xué)習(xí):www.cplusplus.com
2、自定義函數(shù)
函數(shù)的組成:
ret_type fun_name(para1,*)
{
statement;
}
/*
ret_type:返回值類型
fun_name:函數(shù)名
para1,*:形參列表
*/
C語(yǔ)言默認(rèn)返回值是整形,函數(shù)傳參要發(fā)生形參實(shí)例化,這個(gè)過(guò)程要發(fā)生值拷貝。(形參的實(shí)例化之后其實(shí)相當(dāng)于實(shí)參的一份臨時(shí)拷貝)
二、函數(shù)的參數(shù)
1.實(shí)際參數(shù)(實(shí)參)
真實(shí)傳給函數(shù)的參數(shù),叫實(shí)參。實(shí)參可以是:常量,變量,表達(dá)式,函數(shù)等。無(wú)論實(shí)參是何種類型的量,在進(jìn)行函數(shù)調(diào)用時(shí),它們都必須有確定的值,以便把這些值傳給形參。
2.形式參數(shù)(形參)
形式參數(shù)是指函數(shù)名后括號(hào)中的變量,因?yàn)樾问絽?shù)只有在函數(shù)在被調(diào)用的過(guò)程中才實(shí)例化(分配內(nèi)存單元),所以叫形式參數(shù)。形式參數(shù)當(dāng)函數(shù)調(diào)用完成之后就自動(dòng)銷毀了。因此形式參數(shù)只在函數(shù)中有效。
函數(shù)傳參必定形成臨時(shí)變量,臨時(shí)變量的形成是在函數(shù)被調(diào)用時(shí),但正式的代碼執(zhí)行之前。
例:寫(xiě)一個(gè)函數(shù)可以交換兩個(gè)整形變量的內(nèi)容
#include<stdio.h>
#include<windows.h>
//每調(diào)用一次,就會(huì)將num的值加1
void add(int *cp){
(*cp)++;
}
//交換兩個(gè)整形變量的內(nèi)容
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;
}
結(jié)果:
Swap1:num1 = 1 num2 = 2
Swap2:num1 = 2 num2 = 1
請(qǐng)按任意鍵繼續(xù). . .
三、函數(shù)的調(diào)用
- 傳值調(diào)用
- 傳址調(diào)用
例:寫(xiě)一個(gè)函數(shù),每調(diào)用一次這個(gè)函數(shù),就會(huì)將num的值增加1。
#include<stdio.h>
#include<windows.h>
//每調(diào)用一次,就會(huì)將num的值加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;
}
四、函數(shù)的聲明和定義
五、函數(shù)遞歸
相關(guān)案例查看更多
相關(guān)閱讀
- 網(wǎng)站建設(shè)開(kāi)發(fā)
- 云南網(wǎng)站制作
- 昆明小程序公司
- 網(wǎng)站優(yōu)化
- 生成海報(bào)
- 網(wǎng)站建設(shè)
- 網(wǎng)站制作哪家好
- 服務(wù)器
- 云南網(wǎng)站建設(shè)一條龍
- 報(bào)廢車(chē)回收
- 模版信息
- 云南省建設(shè)廳網(wǎng)站
- 云南網(wǎng)站建設(shè)首選
- 云南科技公司
- 云南做網(wǎng)站
- 關(guān)鍵詞快速排名
- 昆明網(wǎng)站開(kāi)發(fā)
- 報(bào)廢車(chē)管理
- 云南小程序代建
- 網(wǎng)站優(yōu)化公司
- 云南軟件定制公司
- 汽車(chē)報(bào)廢管理
- 人人商城
- uniapp開(kāi)發(fā)小程序
- 小程序定制開(kāi)發(fā)
- 網(wǎng)站建設(shè)制作
- 云南省建設(shè)廳官方網(wǎng)站
- 小程序商城
- 小程序密鑰
- 小程序開(kāi)發(fā)聯(lián)系方式