c++中使用substr函数分离一个字符串(或整数)末尾的N位

今日在做PAT乙-1091 N-自守数这道题时,需要将一个整数K的末尾的N位分离出来。

例如将整数25592 的最后两位 92 分离出来。

常规的做法是对这个整数做求余运算,既  K % (10^N)

但求N的长度以及算10^N写起代码来比较烦。

 

于是在看了网上其他大神的博客后,get到了运用substr函数分离末尾数字的方法,现总结如下。

#include 
using namespace std;
int main()
{
	int n=3;//例如要分离最后三位 
	string str("123456789");
	string res=str.substr(str.length()-n); 
	cout<

那么,当我们要求一个数字的末尾N位时候,就可以先将这个数字转换成string,然后再用这个方法很方便求得啦。

参考博客:C++中substr函数的用法 - GGBeng - 博客园

你可能感兴趣的:(学习笔记)