C++函數基礎04

帶默認參數的函數

在這裏插入圖片描述
在這裏插入圖片描述
在這裏插入圖片描述
在這裏插入圖片描述
在這裏插入圖片描述

內聯函數

在這裏插入圖片描述

#include<iostream>
using namespace std;
inline char max(char ch1,char ch2);
int main()
{
	char ch;
	ch=max('s','j');
	cout<<"較大的字符是:"<<ch<<endl;
	return 0;
}
inline char max(char ch1,char ch2)
{
	return (ch1>ch2?ch1:ch2);
}

在這裏插入圖片描述
在這裏插入圖片描述

嵌套調用

在這裏插入圖片描述

int maxoftwo(int x, int y)
{
	cout << "進入maxoftwo函數" << endl;
	cout << "離開maxoftwo函數" << endl;
	return (x > y ? x : y);

}
//求三個數中的最大數
int maxofthree(int x, int y, int z)
{
	cout << "進入maxofthree函數" << endl;
	int max1, max2;
	max1 = maxoftwo(x, y);//max1爲x和y中的最大數
	max2 = maxoftwo(max1, z);//max2爲x,y,z中的最大數
	cout << "離開maxofthree函數" << endl;
	return max2;
}

遞歸調用

在這裏插入圖片描述
在這裏插入圖片描述
在這裏插入圖片描述

#include<iostream>
using namespace std;
long f(int n);
int main()
{
	cout << "=========開始main函數執行=========" << endl;
	int a;
	cout << "請輸入需要求階乘的整數:";
	cin >> a;
	cout << "數" << a << "!=" << f(a) << endl;
	cout << "=========結束main函數執行=========" << endl;
	return 0;
}

//求n!的函數f
long f(int n)
{
	cout << "進入n=" << n << "時的f函數調用" << endl;
	int m;
	if (n == 1 || n == 0)
	{
		m = 1;
		cout << "離開n=" << n << "時的f函數調用,返回到其上一級調用函數" << endl;
	}
	else
	{
		m = n * f(n - 1);
		cout << "離開n=" << n << "時的f函數調用,返回到其上一級調用函數" << endl;
	}
	return m;
}

在這裏插入圖片描述

發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章