IT数码 购物 网址 头条 软件 日历 阅读 图书馆
TxT小说阅读器
↓语音阅读,小说下载,古典文学↓
图片批量下载器
↓批量下载图片,美女图库↓
图片自动播放器
↓图片自动播放器↓
一键清除垃圾
↓轻轻一点,清除系统垃圾↓
开发: C++知识库 Java知识库 JavaScript Python PHP知识库 人工智能 区块链 大数据 移动开发 嵌入式 开发工具 数据结构与算法 开发测试 游戏开发 网络协议 系统运维
教程: HTML教程 CSS教程 JavaScript教程 Go语言教程 JQuery教程 VUE教程 VUE3教程 Bootstrap教程 SQL数据库教程 C语言教程 C++教程 Java教程 Python教程 Python3教程 C#教程
数码: 电脑 笔记本 显卡 显示器 固态硬盘 硬盘 耳机 手机 iphone vivo oppo 小米 华为 单反 装机 图拉丁
 
   -> C++知识库 -> 【C语言实例100(三)】 -> 正文阅读

[C++知识库]【C语言实例100(三)】

28.阶乘

一个正整数的阶乘是所有小于及等于该数的正整数的积,并且0的阶乘为1。自然数n的阶乘写作n!。
n!=1×2×3×…×n。阶乘亦可以递归方式定义:0!=1,n!=(n-1)!×n。

28.1 循环实现

(1)代码

#if 0
int main()
{
	int n, i;
    unsigned long long factorial = 1;
 
    printf("输入一个整数: ");
    scanf("%d",&n);
 
    // 如果输入是负数,显示错误
	if (n < 0)
		printf("Error! 负数没有阶乘");
    else
	{
		for(i=1; i<=n; ++i)
		{
			factorial *= i;// factorial = factorial*i;
		}
		printf("%d! = %llu", n, factorial);
    }
	system("pause");
	return 0;
}
#endif

(2)运行结果

在这里插入图片描述

28.2 递归实现

(1)代码

#if 0
int main()
{
	int n;
    printf("输入一个整数: ");
    scanf("%d", &n);
    printf("%d! = %ld", n, multiplyNumbers(n));
	system("pause");
	return 0;
}

long int multiplyNumbers(int n)
{
	if (n >= 1)
		return n*multiplyNumbers(n-1);
    else
		return 1;
}
#endif
long int multiplyNumbers(int n);//函数声明

(2)运行结果

在这里插入图片描述

29.循环输出26个字母(大写字母)

(1)代码

#if 0
int main()
{
	char c;
    for(c = 'A'; c <= 'Z'; ++c)
		printf("%c ", c);
	system("pause");
	return 0;
}
#endif

(2)运行结果

在这里插入图片描述

30.输出大写或小写字母

(1)代码

#if 0
int main()
{
	char c;
    printf("输入u显示大写字母,输入l显示小写字母: ");
    scanf("%c", &c);
 
    if(c== 'U' || c== 'u')
	{
		for(c = 'A'; c <= 'Z'; ++c)
		printf("%c ", c);
    }
	else if (c == 'L' || c == 'l')
	{
		for(c = 'a'; c <= 'z'; ++c)
		printf("%c ", c);
    }
	else
		printf("Error! 输入非法字符。");
	system("pause");
	return 0;
}
#endif

(2)运行结果

在这里插入图片描述

31.判断数字为几位数

(1)代码

#if 0
int main()
{
	long long n;
    int count = 0;
    printf("输入整数n: ");
    scanf("%lld", &n);
 
    while(n != 0)
	{
		// n = n/10
		n /= 10;
        ++count;
    }
	printf("n 是 %d 位数。", count);
	system("pause");
	return 0;
}
#endif

(2)运行结果

在这里插入图片描述

32.计算一个数的 n 次方,例如: 23,其中 2为基数,3为指数。

32.1 while循环实现

(1)代码

#if 1
int main()
{
	int base, exponent;
    long long result = 1;
 
    printf("基数: ");
    scanf("%d", &base);
    printf("指数: ");
    scanf("%d", &exponent);
 
    while (exponent != 0)
	{
		result *= base;
        --exponent;
    }
	printf("结果:%lld", result);
	system("pause");
	return 0;
}
#endif

(2)运行结果

在这里插入图片描述

32.2 利用POW()库函数实现

(1)代码

#if 0
int main()
{
	double base, exponent, result;
 
    printf("基数: ");
    scanf("%lf", &base);
    printf("指数: ");
    scanf("%lf", &exponent);
 
    // 计算结果
	result = pow(base, exponent);
 
    printf("%.1lf^%.1lf = %.2lf", base, exponent, result);
	system("pause");
	return 0;
}
#endif

(2)运行结果

在这里插入图片描述

32.3 递归实现

(1)代码

#if 0
int main()
{
	int base, powerRaised, result;
 
    printf("基数: ");
    scanf("%d",&base);
    printf("指数(正整数): ");
    scanf("%d",&powerRaised);
 
    result = my_power(base, powerRaised);//(2,3)、(2,2)、(2,1)
 
    printf("%d^%d = %d", base, powerRaised, result);
	system("pause");
	return 0;
}

int my_power(int base, int powerRaised)
{
	if (powerRaised != 0)
		return (base*my_power(base, powerRaised-1));
	else
		return 1;
}
#endif
int my_power(int n1, int n2);//函数声明

(2)运行结果

在这里插入图片描述

  C++知识库 最新文章
【C++】友元、嵌套类、异常、RTTI、类型转换
通讯录的思路与实现(C语言)
C++PrimerPlus 第七章 函数-C++的编程模块(
Problem C: 算法9-9~9-12:平衡二叉树的基本
MSVC C++ UTF-8编程
C++进阶 多态原理
简单string类c++实现
我的年度总结
【C语言】以深厚地基筑伟岸高楼-基础篇(六
c语言常见错误合集
上一篇文章      下一篇文章      查看所有文章
加:2022-04-04 11:50:13  更:2022-04-04 11:56:01 
 
开发: C++知识库 Java知识库 JavaScript Python PHP知识库 人工智能 区块链 大数据 移动开发 嵌入式 开发工具 数据结构与算法 开发测试 游戏开发 网络协议 系统运维
教程: HTML教程 CSS教程 JavaScript教程 Go语言教程 JQuery教程 VUE教程 VUE3教程 Bootstrap教程 SQL数据库教程 C语言教程 C++教程 Java教程 Python教程 Python3教程 C#教程
数码: 电脑 笔记本 显卡 显示器 固态硬盘 硬盘 耳机 手机 iphone vivo oppo 小米 华为 单反 装机 图拉丁

360图书馆 购物 三丰科技 阅读网 日历 万年历 2024年11日历 -2024/11/24 0:30:13-

图片自动播放器
↓图片自动播放器↓
TxT小说阅读器
↓语音阅读,小说下载,古典文学↓
一键清除垃圾
↓轻轻一点,清除系统垃圾↓
图片批量下载器
↓批量下载图片,美女图库↓
  网站联系: qq:121756557 email:121756557@qq.com  IT数码