面对1/n这样的运算,有时候会出现无限循环
即给定一个数n,输出1/n的结果,若是循环小数,则只输出第一个循环节。例如:输入 n 3
输出 0.3
直接上代码讲解:

#include <algorithm>
#include <iostream>
using namespace std;int a[100005];//此数组我们从下标1开始
int n;void get(int n)
{int length = 1;//先取下标1记录a[1] = 1;while(length){length = length * 10;//关键,扩大相除,结果输出,余数继续,就是模拟除法printf("%d",length/n);length = length % n;if(a[length])//如果余数没有出现过则为0,出现过则跳出循环,一个循环节里//是不可能出现相同数字的{break;}a[length] = 1;//将余数标记}
}
int main()
{while(cin>>n){memset(a, 0, sizeof(a));if(n < 0 )//如果 n 是负数,结果有负号,方便计算 n 转化成正数{printf("-");n = n * -1;}if(n==1)//n 为 1 的时候没有循环节,结果直接输出{printf("1\n");continue;}if(n > 0 )//若为正数,结果必然小于1,先输出结果前缀{printf("0.");}get(n);//进行循环节计算printf("\n");}return 0;
}

第一次写博客记录,有什么问题请大家指出,共同进步!!!

求循环小数的循环节C/C++相关推荐

  1. c语言 查找循环节起点,用C语言怎么求循环小数的循环节?

    满意答案 zybehqej 推荐于 2016.09.09 采纳率:43%    等级:8 已帮助:512人 1.判断循环的关键是在确定每位小数的时候,判断余数是否出现与之前的相同. 2.例程:int  ...

  2. 笔试题——输出循环小数的循环节

    求一个分数对应小数的循环节.. 思路: 我们分别用x和y表示分子和分母,先求出整数部分x div y和余数部分x mod y,那么小数部分就是重复将余数部分乘以10再进行整除运算和求余运算,直到出现循 ...

  3. 字符串——OKR-Periods of Words(kmp求最短相同前后缀或者说求最长循环节)

    传送门:OKR-Periods of Words 思路:题目要求的是最大的前缀Q使得A是QQ的前缀,同时Q不能等于A, 比如在bababab,要使得周期最大,应该选的循环节就是bababa, 另一个有 ...

  4. 求无限循环小数的循环节

    输入两个整数x1,x2,输出x1/x2的小数部分的循环节 测试案例: 输入: 8 7 2 210 输出 0.(142857) 0.0(095238) #include <stdio.h>i ...

  5. 面试:输出循环小数的循环节

    一.引入 偶然在网上看见的,手痒了,就试了试,哈哈.......做出来了,实际就是模拟. 下面的来自维基百科:循环小数是从小数部分的某一位起,一个数字或几个数字,依次不断地重复出现的小数. 循环小数即 ...

  6. java 循环小数_面试:输出循环小数的循环节

    一.引入 偶然在网上看见的,手痒了,就试了试,哈哈.......做出来了,实际就是模拟. 下面的来自维基百科:循环小数是从小数部分的某一位起,一个数字或几个数字,依次不断地重复出现的小数. 循环小数即 ...

  7. KMP算法求循环节,为什么能求循环节

    众所周知,KMP算法可以求最小循环节,为什么可以求循环节呢? 博主之前对KMP算法的理解不够深入,最近突然又想起来了,就深入研究了一下. KMP算法中最重要的就是next数组,next[i]表示是字符 ...

  8. hdu-2814-Interesting Fibonacci-斐波那契循环节

    哇塞,我竟然2A了....没有1A纯粹是脑残了.. 求:F(a^b)^(F(a^b) ^ (n-1))%c  既是求F(a^b)^(F(a^b) ^ (n-1)%phi[c]+phi[c])%c 先求 ...

  9. 求循环小数计算出循环节c语言,如何求一个分数化成小数后的循环节?求算法,或者C++/C程序....

    共回答了12个问题采纳率:91.7% #include #include int main(void) { int a, b, t; int used[10000];//b < 10000 me ...

  10. C++之求循环小数循环节

    ■题目描述 :     任意分数都可以写成小数的形式,样例是有限小数或无限循环小数中的一种. ■输入描述:          两个正整数p和q,代表分子和分母. 两个正整数p和q,代表分子和分母.且1 ...

最新文章

  1. float属性html,详解CSS样式中的float属性
  2. 鸿蒙初开踏青时主要内容,袖珍世界之鸿蒙初开
  3. (11) nginx + keepalived 双机热备
  4. 拼音输入法功能大比拼
  5. win10系统能做域服务器吗,Win10 LTSC 加入 Windows Server 2019 域服务器
  6. opencv matlab三维点云,点云采样的三种方法 - 小白学视觉的个人空间 - OSCHINA - 中文开源技术交流社区...
  7. ListView与Button共存问题
  8. EXCHANGE虚拟目录功能介绍
  9. office visio 替代_5款替代微软Visio的开源免费软件(转)
  10. 泛微OA ecology 您查看的文档过大,请下载文档后查看
  11. NSIS教程(4): 调用Windows API
  12. iphone和iPad开发的区别
  13. 情境领导模式(权变)
  14. 新的笔记本电脑没有计算机,最新出炉!2020年10款最轻的笔记本电脑:轻就对了,是您想的吗?...
  15. 一键重装系统后蓝屏怎么修复
  16. UVA 1647 Computer Transformation
  17. m1/m1Pro/m1Max芯片下载win11-arm镜像
  18. 解决 - Adobe Acrobat/Adobe Reader 的 Windows 任务栏图标异常
  19. Python——信号量、条件变量、事件
  20. 【SVM时序预测】基于粒子群算法优化支持向量机PSO-SVM实现期贷时序数据预测附matlab代码

热门文章

  1. 开发者百宝箱——DevToys
  2. 离线数据开发之任务调度系统
  3. 计算机密码学题目,计算机密码学习题
  4. 多年来我的创业感悟,穷人与富人的赚钱思维模式丨国仁猫哥
  5. 寻租——乞丐没有白拿施舍
  6. SWUN 1431 - 伊邪那美(Ⅱ)
  7. mysql表必须有主键吗_SQL中的每一张表都必须设有主键吗
  8. lame编译 android,Android编译Lame的全平台so库方案2,并实现转码mp3
  9. SQL Server 2019下载及安装教程
  10. 计算机图形学学习笔记(上)