Proc30. Описать функцию DigitN($$K$$, $$N$$) целого типа, возвращающую $$N$$-ю цифру целого положительного числа $$K$$ (цифры в числе нумеруются справа налево). Если количество цифр в числе $$K$$ меньше $$N$$, то функция возвращает -1. Для каждого из пяти данных целых положительных чисел $$K_1, K_2, …, K_5$$ вызвать функцию DigitN с параметром $$N$$, изменяющимся от 1 до 5.
Решение:
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 |
#include <stdio.h> int digitn(int k, int n){ int i=1; for(i=1; i<=n-1; i++) k/=10; if (k!=0) return k%10; else return -1; } int main(void) { int i, k; for (i=1; i<=5; ++i){ printf("K:"); scanf("%i", &k); int i2; for (i2=1;i2<=5;++i2) printf("DigitN: %i\n",digitn(k,i2)); } return 0; } |
Другие задачи из раздела Proc можно посмотреть здесь.
Комментарии: