C++【求逆序数The Number of Inversions】如1234的逆序数为4321;

C++【求逆序数The Number of Inversions】如1234的逆序数为4321;,第1张

/*求整数n的逆序数并返回,如1234的逆序数为4321;*/
#include
using namespace std;
long int inverse(long int x);
int main()
{
	long int x;
	cin>>x;
	inverse(x);
	return 0;
}
long int inverse(long int x)
{
	if(x==0)
	{
		cout<<endl;
		return 0;
	}
	else
	{
		cout<<x%10;
		inverse(x/10);
	}	//递归方法求得逆序
	return 0;
}

注意 以下,是我犯过的一个错误

可以看到“[警告] 控制到达非void函数的末尾[-Wreturn-type]
(warning: control reaches end of non-void function)”
意思是你定义的函数本应是带有返回值的,但执行到函数末尾好像没有。
原因是子函数中虽然有返回值,但没有找到,
试想一下如果if else中的条件都不满足,最终这个子函数执行到末尾岂不是找不到返回值,所以会出现此waring。
如果我们在最后加上一个return 0,warning就会消失。

若要实现同样效果请看前文: C++程序设计基础之基于Dev-Cpp的环境搭建


版权声明:本文为CSDN博主「 Apollo-007」的原创文章,

遵循CC BY-NC-SA 4.0版权协议,转载请附上原文出处链接及本声明。

原文链接: https://apollo.blog.csdn.net/article/details/125312066

欢迎分享,转载请注明来源:内存溢出

原文地址: https://outofmemory.cn/langs/1498569.html

(0)
打赏 微信扫一扫 微信扫一扫 支付宝扫一扫 支付宝扫一扫
上一篇 2022-06-25
下一篇 2022-06-25

发表评论

登录后才能评论

评论列表(0条)

保存