Гм, а с задачами по математике/геометрии в школе также было?
Просто похоже на эффект "неинтересно - не могу сосредоточиться"...
Может не тот формат задач/учебника?
Какая цель? Прежде всего для чего язык программирования и именно С? или С++?
По своему опыту знаю - чтобы начать программировать,надо погрузиться в это, чтобы код по ночам снился. Теория - хорошо, даже необходима. Но! Кодить надо каждый день, 1-2-3-8-25 часов в сутки %) сколько получится выделить. Иногда мозги будут кипеть и будет хотеться выкинуть всё - учебник, компьютер и т.д. Но это учёба. Нет волшебной таблетки и методики - раз и начал понимать. Каждую мысль в учебнике - проверяй на практике. Пример - набирай и проверяй, смотри как работает, осваивай инструменты отладки, основы операционной системы (лучше линукс). Полезно в режиме командной строки поработать с компилятором, утилитой make и т.д. По самому языку - может зайдёт вот эта книга Head First язык C - точно есть на торрентах, в онион сети и даркнете, старенькая но формат подачи материала интересный. Может имеет смысл поработать с условно-бесплатными курсами от яндекса или codecademy. (Тут гуглить надо).
В любом случае - успехов, веры в себя и ... терпения! Программирование - интересная сфера, но требует усилий и умения постоянно учиться новому, осваивать материал и справляться с рутиной.
Кстати, советую посмотреть бесплатные, но полезные ресурсы
С++ от code-basics
Здесь задачки разного уровня
codewars - задачи разного уровня на разных языках
*update: Вспомнил ещё такой момент - иногда "заходит" такой метод - решаешь задачу по программированию на бумаге. Т.е. рисуешь алгоритм (не блок схему, а как сам представляешь), пишешь на русском языке как оно должно работать (по шагам), можешь напротив каждого шага написать переменные и что в них должно находиться (в IDE есть пошаговые отладчики тоже, но это потом). Потом пишешь на бумажке текст программы. Проверяешь на ПК. Двойной труд? Да, но иногда этот метод творит чудеса.