递归算法-1164:digit函数

1164:digit函数

时间限制: 1000 ms 内存限制: 65536 KB
提交数: 9403 通过数: 6385
【题目描述】
在程序中定义一函数digit(n,k),它能分离出整数n从右边数第k个数字。

【输入】
正整数n和k。

【输出】
一个数字。

【输入样例】
31859 3
【输出样例】
8


思路:用递归思想定义一个函数功能:返回数字 n 从左数起第k位。

#include<iostream> 
using namespace std;
long sh(int n,int k)//函数功能:返回数字 n 从左数起第k位.
{
	k = k - 1;
	if(k == 0)//判断是否到达递归边界k=0
	return n % 10;
	else return sh(n / 10,k); //否则继续递归
}
int main(){
	int n,k;
	cin >> n >> k;
	cout << sh(n,k);
	return 0;
}
發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章