题目描述
在程序中定义一函数digit(n,k),它能分离出整数 n 从右边数第 k 个数字。
输入格式
正整数 n 和 k。
输出格式
一个数字。
输入输出样例
输入 #1
31859 3
输出 #1
8
说明/提示
n≤109。
k≤10。
#include<bits/stdc++.h>
using namespace std;
//定义digit函数
int digit(long long n,long long k){
long long aa,m;//每位数字 m为1,10,100这类数
long long r[10000];//分离数字存储的数组
m=1;
long long i=0;//循环变量
//如果是负数*-1变成正数
if(n<0){
n = n*-1;
}
//while循环进行位数分离
while((n/m)>0)
{
++i;
aa=n/m%10;
r[i] = aa;//将每一位存储进数组中
m*=10;
}
cout<<r[k];//输出结果
return 0;
}
int main(){
long long n,k;//初始化
cin>>n>>k;
digit(n,k);//调用函数
return 0;
}
重点
数位分离,后面我也会细讲数位分离的代码,将分离出来的数位存储到数组中,最后输出就可以。
点赞,收藏和关注,不要忘了,感谢大家的阅读!