栏目分类:
子分类:
返回
名师互学网用户登录
快速导航关闭
当前搜索
当前分类
子分类
实用工具
热门搜索
名师互学网 > IT > 软件开发 > 后端开发 > C/C++/C#

给一个不多于5位的正整数,要求:1.求出它是几位数;2.分别给出每一位数字;3.按逆序输出各位数字。

C/C++/C# 更新时间: 发布时间: IT归档 最新发布 模块sitemap 名妆网 法律咨询 聚返吧 英语巴士网 伯小乐 网商动力

给一个不多于5位的正整数,要求:1.求出它是几位数;2.分别给出每一位数字;3.按逆序输出各位数字。

给一个不多于5位的正整数,要求:

1.求出它是几位数;

2.分别给出每一位数字;

3.按逆序输出各位数字,例如原数为 123,应输出 321。

说明:本代码用到递归算法,递归:简言之就是函数调用自身的过程。

//逆序输出函数
void Reserve(int num)
{
	if (num > 0) {

		printf("%d", num % 10);
		Reserve(num /10);//运用递归
	}
}
//打印每一位数字的函数
void print(int num)
{
	
	if (num > 9)
	{
		print(num / 10);//运用递归
	}

	printf("%d ", num%10);
}
int main()
{
	int num;
	printf("请输入一个不多于5位的数:n");
	scanf("%d", &num);
	int count = 1;
	printf("每位为:");
	print(num);//函数调用
	printf("n");
	printf("倒序输出为:");
	Reserve(num);//函数调用
	printf("n");
	while (num / 10 > 0)
	{
		num = num / 10;
		count++;
	}
	printf("该数是%d位数n", count);
	return 0;
}

转载请注明:文章转载自 www.mshxw.com
本文地址:https://www.mshxw.com/it/675642.html
我们一直用心在做
关于我们 文章归档 网站地图 联系我们

版权所有 (c)2021-2022 MSHXW.COM

ICP备案号:晋ICP备2021003244-6号