Онлайн компилятор C

#include <stdio.h> int main() { int a,k; int sum=0; scanf("%d %d",&a,&k); int temp;int A=a; while(A>0){ A=A/10; sum++; } if(sum<k){ printf("error"); return 0; } for(int i=0;a>0;i++){ temp=a%10; if(i==k){ printf("%d",temp); return 0; } } return 0; }//改成从左往右第k位
1) 这段代码用于从右往左(从低位到高位)找出整数a的第k位数字,但注释要求改为从左往右(从高位到低位)查找。

2) 提示1:当前循环通过取模运算`a%10`获取的是从右往左的位数,要改为从左往右需要调整数字的遍历方向。
提示2:可以尝试先计算出数字的总位数,然后通过数学关系转换找到从左往右的第k位。