На случай если букв много, то просто по пунктам:
1. Начни читать Харви Дейтел, Пол Дейтел. КАК ПРОГРАММИРОВАТЬ НА С и делай оттуда все задачи.
2. Параллельно посмотри весь курс или частично на канале
https://www.youtube.com/user/ANTGPRO
3. Постепенно смотри курс CS50 (
https://javarush.ru/quests/QUEST_HARVARD_CS50) и делай оттуда задания, по возможности только со стандартными библиотеками Си, не с cs50.h.
Для выполнения задач:
1. Пиши в sublime-text
2. Компилируй если из под винды, то MinGW; если линуха, то gcc (и про 1 и про 2 в уроках GenaANTG есть подробно).
Если хочешь учить язык для какой-то конкретной цели, то это даже лучше и подстегнет, и простимулирует, и мотивирует, но надо трезво оценивать свои возможности, хотелки и расстояние до цели особенно! Не буду подталкивать тебя к какому-то конкретному шагу, но могу просто рассказать какова моя цель и какое расстояние я рассчитал до неё:
Точка отправки (кратко):
Работая в ИТ вот уже 6 лет, полтора года назад я в поисках очередной головоломки для себя абсолютно случайно зашёл на сайт
electromost.com/index/soderzhanie_statej_po_raspbe... и меня понесло, причем рубил с плеча: купил сходу RaspberryPI 2, заказал по макетам автора по 5шт. плат радиомодуля и метестанции (потратил суммарно не меньше 15т.р. в течение 2 недель), даже вник в технологию пайки мелких smd компонентов, начал что-то делать по его мануалам и пришел к моменту где он использует Python, html, js - я мог бы пойти простым путем, просто копировать код и продолжать настраивать все по хаутушкам, но мне захотелось понимать код и я пришел на тостер с вопросом
Как получить начальные знания HTML, JS и Python? . Здесь прерывается история настройки домашней автоматизации на RPI2.
Следующий этап.
Попав на сайт javarush.ru, я сначала смотрел лекции CS50 и параллельно решил поиграть в java на том же сайте, не помню до какого уровня дошел, но понял что мне много чего непонятно в работе программы, по сути я тупо переписывал код, как-то искал в интернете примеры решения задач и т.п. И сделал пару постов в вк, наподобие
https://vk.com/photo2180429_429019262 . И тут вдруг мне пишет один из бывших коллег, он оказывается тоже увлекся программированием, но на СИ. Он меня убедил попробовать посмотреть курсы на youtube - GenaANTG Программирование на си и вообще начать изучение именно с СИ, поскольку там можно понять как работает комп, как работает память и как ей управлять и т.д. и т.п. На канале этого GenaANTG он очень доходчиво объясняет что к чему, очень интересно подходит к объяснению нюансов, но тоже для полноты картины чего-то не хватало.
Третий этап.
У меня неожиданно появилась четкая цель! Я не забил на систему домашней автоматизации, нет! Просто отложил и думал, вот погружусь глубже в программирование и буду разбираться лучше. Вот здесь то и появилась цель, я хочу написать на Си большой программный комплекс для домашней автоматизации с неким виртуальным помощником или ассистентом если хотите.
Я смотрю курсы CS50, вместе с ними канал GenaANTG и пытаюсь решать задачи с курса CS50, встал на этапе решения задачи
https://javarush.ru/quests/lectures/questharvardcs... Там предлагается использовать их готовую библиотеку для решения определенного ряда задач по курсу, но я захотел пользоваться стандартными библиотеками и пошел на тостер с вопросом
Плохо ли смотреть готовый код задач по СИ, чтобы понять как это работает? После этого я решил задачу используя только стандартные библиотеки си, даже по-моему одну stdio.h. И сейчас уже не вспомню как и где я увидел или услышал, а может случайно скачал - я наткнулся на книгу Харви Дейтел, Пол Дейтел. КАК ПРОГРАММИРОВАТЬ НА С. И вот же оно!!!
- Идеальная подача материала!
- Огромное количество задач в конце каждой главы!
Неожиданный момент:
Предложили по знакомству пойти работать стажером SAP. Задумался, задал вопрос на тостере
Из support в developer? Остался работать в техподдержке и продолжаю активно учить СИ и английский по мере возможности.
В будущем, опять же если понадобится, перейду на C# и хочу также на нем написать с нуля мой главный проект автоматизации. Но это далекие планы.
P.S. Хоть сам ещё зеленый, но если нужны советы или помощь обращайся (
https://vk.com/kactohbi4), возможно ты наступил на те грабли? на которых я хорошо потанцевал)))
Уже успел увидеть пару комментариев, сугубо мое личное мнение: советовать новичку начинать изучать программирование с C++ - это как положить асфальт сразу на газон, пропустив этап подготовки почвы песком, гравием и т.п. и возможно навсегда лишить человека желания обучаться программированию, к C++ на мой взгляд надо придти или перейти, по мне так это просто улучшенный Си, ну а раз так, то начинать надо с основы.