烟大oj 循环取小数

    xiaoxiao2021-12-14  21

    编写一个函数,取一个小数的第n(-10<=n<=16)位,当n大于0时,从小数点位置开始向右取小数部分第n位, 当n小于0时,从小数点位置开始向左取整数部分的第n位。 #include <stdio.h>  int get_one_digit(double num,int n); /*函数声明*/ int main()  {      double number;      int n;      int digit;  /*第n位数字*/      scanf("%lf %d",&number,&n); /*输入数据*/      digit=get_one_digit(number,n);  /*调用查找第n位数字并将数字返回复制给digit*/      printf("%d\n",digit);      return 0;  } int get_one_digit(double num,int n) {   int i;   int x,y;   x=num;   if(n>0) {    for(i=0;i<n;i++)    {       num=num-x;       num=10*num;       x=num;     }     return x; }   else {    n=-n;    y=num;    while(n>1)    {       y=y/10;       n--;     }          return y; }       } 主程序已给出,请编写get_one_digit函数并提交该函数即可 Input 一个小数,取小数的第n位 Output 小数的第n位 Sample Input 5.5772156649015328  10 Sample Output 9
    转载请注明原文地址: https://ju.6miu.com/read-971383.html

    最新回复(0)