第11周OJ练习-7小数取数

问题及代码

/*作者:贾如杉
输入:一串小数和整数
输出:某个位置的数字*/
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)
{
    long z;  
    double x;  
    z=num; 
    if(n>0)
    {
        x=num-z;
        while ( n > 0 )
        {
            x = x - (int)x;
            x *= 10;
            n--;
        }
        return (int)x;
    }
    else
    {
        n=-n;
        while(n>1)
        {
            z/=10;
            n--;
        }
        return z%10;
    }
}
 

运行结果第11周OJ练习-7小数取数_第1张图片

知识点总结

练习自定义函数,提高解题能力

学习心得·

题目不难,但所包含的内容很丰富

你可能感兴趣的:(第11周OJ练习-7小数取数)