作者 郭聪 日期 11.14 遇到的问题:刚开始做题时未能很好的处理好整数和小数的转换,导致题目一直出错,其次运用循环时应该加入括号,这一点也未能很好的处理;另外遇到的问题就是思维受到影响,不能很好地想出解题思路,另外在oj平台上少一个括号就是编译错误。 #include <stdio.h> #include <string.h> int get_one_digit(double num,int n) { int i; long x; double y; x=num; if(n>0) { y=num-x; for(i=1; i<=n; i++) { y=y-(int)y; y*=10; } return y; } else while(n<0) { x/=10; n++; } return x%10; } 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; }