質問: 複数桁10進数の*桁目だけを抽出したい タイトルがすべてと言えてしまうのですが、 例えば、int宣言された"4287"(この値は変動します)という数値があったとして、1桁目の"7"だけを別の変数へ引き抜きたいのですが、その場合にはandによるマスク処理による演算で処理可能なのでしょうか? また、他に良い方法などありましたら教えていただけますでしょうか?
回答: #include #include int picup(int n, int d) { char str[16]; sprintf(str, "%d", n); return str[strlen(str) - d] - '0'; } int main(void) { int n, d; scanf("%d %d", &n, &d); printf("%d", picup(n, d)); return 0; }