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

#include <stdio.h> int main() { int N,K,b,c,lrngth; scanf("%d %d",&N,&K); if(N>=0&&(K>=1&&K<=10)){; for(int i=0;i<K;i++){ if(c!=0){ c=N/10; b=N%10; N=c; } } printf("%d",b); }; return 0; }
1) 这段代码试图从整数N中提取第K位数字(从最低位开始),但存在逻辑错误和未初始化变量的问题。

2) 提示:
- 变量c在第一次循环前未初始化,导致条件判断不可预测
- 循环逻辑需要重新设计,考虑使用计数器来跟踪当前处理到的位数