零K沁雪


私信TA

用户名:qczl

访问量:78098

签 名:

零K沁雪

等  级
排  名 44
经  验 12408
参赛次数 3
文章发表 35
年  龄 0
在职情况 在职
学  校
专  业

  自我简介:

解题思路:

    假设数据为 n/m,使用辗转相除法

    第一步:n*3/m   得出进制第一位

    第二步:n*3%m 得余数,然后用余数继续第一步计算

注意事项:

参考代码:

#include <stdio.h>
#include <stdlib.h>

/*进制类型,也可以改成别的进制*/
#define TYPE 3

int main()
{
	int n, m, t, i;
	/*和获取输入的数据*/
	char str[30] = "";
	while(scanf("%s", str) != EOF)
	{
	        /*解析出分子分母*/
		if(2 == sscanf(str, "%d/%d", &n ,&m))
		{
			printf(".");
			for(i = 0; i < 10; i++)
			{
				t = n * TYPE / m;
				printf("%d", t);
				n = n * TYPE % m;
			}
			printf("\n");
		}
	}
	return 0;
}


 

0.0分

0 人评分

  评论区

  • «
  • »