讨厌的小数点
描述
小明一直很讨厌小数点,一看到小数点就头疼。不幸的是,小红给他出了一个题目,问他:
给你一个小数x,你能算出小数点后第 n 位是什么吗?(1<=n<=6)
小明看到此题后,瞬间头疼晕倒,你能帮帮他吗?
输入
首先输入一个 t,表示有 t 组数据,跟着 t 行:
每行输入一个小数(输入数据保证一定是 a . b 的形式,为了简单化问题,没有循环小数的情况),
然后跟一个 n,表示小数点后第几位。
输出
输出一个数表示小数点后第n位的数。
输入样例 1
3 1.234 1 2.345 2 3.456 3
输出样例 1
2 4 6
利用字符进行模拟,简化问题
#include<stdio.h>
#include<string.h>
#include <iostream>
using namespace std;
char a[100];
int main()
{
int n,i,t;
cin>>t;
while(t--)
{
memset(a,'0',sizeof(a));
scanf("%s %d",a,&n);
int len=strlen(a);
for(i=0,a[len]='0';; i++)
if(a[i]=='.')
break;
printf("%c\n",a[i+n]);
}
return 0;
}