Як навчитися програмувати на c

Мова C - один із старих мов програмування. Він був розроблений в 70-х роках минулого століття, але все ще залишається досить потужним засобом завдяки тому, що відноситься до низькорівневих засобів програмування, що використовують осмислені скорочення слів для позначення різних команд. Вивчення мови C також є чудовою базою для переходу до вивчення більш складних мов, а отримані тут знання будуть корисними практично у всіх мовах програмування і допоможуть вам втягнутися в самостійну розробку додатків. Щоб приступити до вивчення цієї мови, ознайомтеся з інформацією даної статті.

кроки

Частина 1 з 6:
підготовка
  1. Зображення з назвою 53403 1 2
1. Скачайте і встановіть компілятор. Мова С необхідно компілювати за допомогою програми, яка буде інтерпретувати код мови в машинні сигнали. Компілятори зазвичай бувають безкоштовними і доступні для різних операційних систем.
  • Для Windows спробуйте використовувати Microsoft Visual Studio Express або MinGW.
  • Для Mac одним з кращих компіляторів вважається XCode.
  • Для Linux найбільш популярний GCC.
  • Зображення з назвою 53403 2 + 2
    2. вивчіть основи. Мова C - один із старих і досить потужних мов програмування. Він був призначений для операційної системи Unix, але був розширений і перенесений практично на всі операційні системи. Сучасним втіленням мови С є мова З++.
  • Мова C, в основному, складається з функцій, а в цих функціях можна використовувати змінні, умови і цикли, щоб зберігати інформацію і управляти даними.
  • Зображення з назвою 53403 3 2
    3. Ознайомтеся з найпростішим кодом. Подивіться на код найпростішої програми нижче, щоб ознайомитися з тим, як деякі складові мови взаємодіють один з одним, і зрозуміти принцип дії самої програми.
    #include int main () {printf ("Здрастуй, Світ!ен") -Getchar () - return 0-}
  • команда #include виконується ще до запуску програми і запускає бібліотеки, які містять необхідні вам функції. У зазначеному вище прикладі stdio.х дозволяє використовувати в програмі функції printf () і getchar ().
  • команда int main () повідомляє компілятору про запуск основної функції "main", яка після закінчення поверне певне ціле число. Всі програми на C використовують функцію "main".
  • Фігурні дужки {} Говорять про те, що все їх вміст є частиною функції. В даному випадку, вони означають, що вміст дужок є частиною функції "main".
  • функція printf () відображає на екрані користувача вміст круглих дужок. Наявність лапок гарантує, що вміст дужок буде вважатися текстом. керуюча послідовність ен говорить комп`ютера перенести курсор в наступний рядок.
  • Крапка з комою - позначає кінець рядка. Більшість рядків коду на C слід закінчувати цим знаком.
  • команда getchar () говорить комп`ютера очікувати натискання кнопки, перш ніж робити що-небудь далі. Це дуже корисно, тому що багато операційні системи виконують програму і потім негайно закривають вікно. В даному ж випадку програма не закінчується доти, поки не буде натиснута кнопка.
  • команда return 0 вказує на завершення програми. Зверніть увагу, що функція "main" відноситься до функцій int. Це означає, що вона повинна повернути певне значення по завершенні програми. нуль "0" вказує на правильно виконану програму, а будь-яке інше число говорить про помилку.
  • Зображення з назвою 53403 4 2
    4. Спробуйте скомпілювати програму. Наберіть свій код в редакторі коду і збережіть його файлом формату "*.з". Скомпілюйте його в компіляторі. Для цього зазвичай потрібно натиснути кнопку "Build" або "Run".
  • Зображення з назвою 53403 5 2
    5. Обов`язково коментуйте створюваний код. Коментарі - це частина коду, що не піддається компіляції, але дозволяє пояснити, що саме відбувається в програмі. Вони корисні для нагадування самому собі про призначення коду і пояснення принципу його роботи іншим розробникам, які, можливо, будуть вивчати цей код.
  • Щоб залишити відгук в C, поставте косу риску із зірочкою / * на початку пояснювального тексту і зірочку з косою рисою * / в його кінці.
  • Коментуйте всі базові складові вашого коду.
  • Коментарі можна використовувати для швидкого виключення з роботи окремих частин коду без їх видалення. Просто укладіть в коментар той код, який потрібно вимкнути, і скомпілюйте програму. Якщо ви захочете повернути код, всього лише видаліть теги коментарів.
  • Частина 2 з 6:
    Використання змінних
    1. Зображення з назвою 53403 6 2
    1. Зрозумійте принцип роботи зі змінними. Змінні дозволяють збирати і зберігати дані, отримані в результаті обчислень в самій програмі або за допомогою призначеного для користувача введення. Перш ніж змінні можна буде використовувати, їх слід позначити. Це можна зробити різними способами.
    • Серед найбільш часто використовуваних змінних слід назвати змінні int, char і float. Кожна з них зберігає різні типи даних.
  • Зображення з назвою 53403 7 2
    2. Дізнайтеся, яким чином в програмі оголошуються змінні. Змінні слід позначити, або "оголосити", перш ніж їх можна буде використовувати в програмі. Оголосити змінну можна зазначенням використовуваного типу даних і назви змінної. Наприклад, чи правомірні всі зазначені нижче приклади:
    float x-char name-int a, b, c, d-
  • Зауважте, що у вас є можливість оголошувати відразу кілька змінних в одному рядку, якщо всі вони відносяться до одного типу. В такому випадку назви змінних просто відокремлюються комами.
  • Як і більшість рядків в C, кожен рядок з оголошенням змінної слід закінчувати крапкою з комою.
  • Зображення з назвою 53403 8 2
    3. Зрозумійте, де в коді можна оголошувати змінні. Змінні для зручності рекомендується оголошувати на початку кожного блоку коду (тієї частини, яка укладена в фігурні дужки {}). Якщо ви спробуєте оголосити змінну пізніше її першого використання в коді, то програма не працюватиме правильно.
  • Зображення з назвою 53403 9 1
    4. Використовуйте змінні для зберігання введених користувачем даних. Тепер, коли ви вже знайомі з принципами роботи змінних, можна спробувати написати просту програму, яка буде зберігати введені користувачем дані. Для неї буде потрібно ще одна функція scanf. Ця функція здійснює пошук введених даних для присвоєння конкретних значень змінним.
    #include int main () {int x-printf ( "Введіть число: " ) -Scanf ( "% д", &x) -printf ( "Ви ввели% d", x) -getchar () - return 0-}
  • специфікатор формату "% д" каже функції scanf вважати ціле десятеричная число, введене користувачем.
  • префікс & перед назвою змінної з повідомляє функції scanf, де можна буде знайти значення змінної, щоб її змінити, і зберігає введене ціле значення.
  • заключна команда printf зчитує значення введеної змінної і відображає його користувачеві.
  • Зображення з назвою 53403 10 2
    5. Навчіться керувати змінними. Для управління введеними вами змінними можна використовувати математичні вирази. При цьому для математичних виразів найважливіше запам`ятати відмінну рису, що одиничний знак одно = привласнює значення змінної, а подвійний знак одно == порівнює значення по обидва боки від цього знака, для перевірки на відповідність один одному.
    x = 3 * 4 / * привласнює "з" значення 3 * 4, або 12 * / x = x + 3 / * додає 3 до початкового значення "з" і привласнює їй нове значення * / x == 15 / * перевіряє, чи дорівнює змінна "з" п`ятнадцяти * / x < 10 / * перевіряє, чи є значення "з" меншим, ніж десять * /
  • Частина 3 з 6:
    створення умов
    1. Зображення з назвою 53403 11 2
    1. Зрозумійте основу створення умов в мові С. На умовних операторах побудовано більшість програм. Вони являють собою вирази, які перевіряються на істину (TRUE) або брехня (FALSE) і в залежності від результату визначають подальші дії. Найпростіший оператор умови - це оператор ІФ.
    • Параметри TRUE і FALSE в мові C працюють інакше, ніж в інших мовах програмування, до яких ви, можливо, звикли. Істинний результат TRUE завжди повертає число, відмінне від нуля. Якщо ви робите порівняння і результат виявляється істинним (TRUE), то програма повертає значення "1". Якщо результат помилковий (FALSE), то повертається значення "0". Знання цієї особливості допоможе вам зрозуміти принцип обробки виразів з оператором IF.
  • Зображення з назвою 53403 12 2
    2. Вивчіть базові оператори умови. Умовні вирази будуються на застосуванні математичних операторів, які порівнюють значення. Нижче наведено список найбільш часто використовуваних операторів умови.
    >/* більше ніж */
    10 > 5 TRUE6 < 15 TRUE8 >= 8 ТРОЕч <= 8 ТРУЕ3 == 3 ТРОЕч != 5 TRUE
  • Зображення з назвою 53403 13 2
    3. Складіть базовий приклад рядка з умовою IF. Оператор умови IF можна використовувати для того, щоб визначати, що програма повинна робити після оцінки виконання або невиконання умови. Цей оператор можна поєднувати з іншими умовними виразами для створення потужної різноманітної послідовності дій, але на даному етапі спробуйте записати легкий приклад, щоб спочатку просто познайомитися з використанням умов.
    #include int main () {if (3 < 5) printf ( "3 is less than 5") -Getchar () -}
  • Зображення з назвою 53403 14 2
    4. Іспользуйтевираженіе ELSE / ELSE IF для того, щоб розширити задаються умови. Можна розширити вираз з оператором IF, застосувавши вираження ELSE і ELSE IF, які будуть обробляти різні результати. ELSE вступає в дію тоді, коли перевірка вираження оператором IF повертає брехня (FALSE). ELSE IF дозволяє включити в один рядок перевірку на виконання різних умов IF для певних ситуацій. Розгляньте наведений нижче код програми, щоб зрозуміти, як взаємодіють всі ці параметри.
    #include int main () {int age-printf ( "Будь ласка, введіть свій поточний вік: " ) -Scanf ( "% д", &age) -if (age <= 12) {printf ( "Ти все ще дитина!ен" ) -} else if (age < 20) {printf ( "Добре бути підлітком!ен" ) -} else if (age < 40) {printf ( "Ви все ще молоді серцем!ен" ) -} else {printf ( "З роками приходить мудрість.ен" ) -} return 0-}
  • Програма зчитує ввід користувача і проводить його через ряд послідовних умовних перевірок. Якщо введене число відповідає першому умові, то на екран виводиться перший вираз printf. Якщо перша умова не виконується, то перевірка переходить до кожного чергового умові ELSE IF, поки не буде виявлений справжній результат. Якщо ж жодна з цих умов не виконується, то інформація обробляється останнім виразом ELSE в кінці програми.
  • Частина 4 з 6:
    Вивчення роботи з циклами
    1. Зображення з назвою 53403 15 2
    1. Зрозумійте принцип роботи циклів. Цикли - один з найважливіших аспектів програмування, так як вони дозволяють повторно запускати окремі блоки коду до тих пір, поки не буде виконано певну умову. Це дозволяє спростити програмну запис повторюваних дій і позбавляє вас від необхідності кожного разу писати нові умови, коли ви хочете, щоб програма щось зробила.
    • Існує три основних типи циклів: FOR, WHILE і DO...WHILE.
  • Зображення з назвою 53403 16 2
    2. Застосовуйте цикл FOR. Це найпопулярніший і корисний з циклів. Він продовжує виконувати задану функцію, поки встановлені в FOR умови не будуть виконані. Цикли FOR вимагають вказівки трьох умов: ініціалізіруемих змінної, умови, яке повинно бути виконано, і способи оновлення значення змінної. Якщо вам не потрібні всі три цих умови, вам необхідно залишити пробіл з крапкою з комою на їх місці, в такому випадку цикл буде вічним.
    #include int main () {int y-for (y = 0 y < 15 y ++) {printf ( "% D n", y) -} getchar () -}
  • У вищевказаною програмою початкове значення змінної і дорівнює нулю, а цикл триває до тих пір, поки значення змінної залишається меншим, ніж 15. Кожен раз, коли на екран виводиться нове значення і, воно збільшується на одиницю і цикл повторюється. Як тільки змінна і дорівнюватиме 15, цикл завершиться.
  • Зображення з назвою 53403 17 2
    3. Застосовуйте цикл WHILE. Цикли WHILE простіше, ніж цикли FOR. У них задається тільки одна умова і цикл працює до тих пір, поки ця умова виконується. Тут у вас немає необхідності ініціалізувати або оновлювати змінну, але це можна зробити в основній частині коду самого циклу.
    #include int main () {int y-while (y <= 15) {printf ( "% D n", y) -y ++ -} getchar () -}
  • команда і++ додає одиницю до значення змінної і при кожному виконанні циклу. Як тільки змінна y стає рівною 16 (зверніть увагу, що цикл повинен виконуватися до тих пір, поки змінна менше або дорівнює 15), цикл припиняється.
  • Зображення з назвою 53403 18 2
    4. застосовуйте цикл ДО...WHILE. Даний цикл дуже корисний в тих випадках, коли операції циклу необхідно провести, по крайней мере, один раз. У циклах FOR і WHILE умова перевіряється на самому початку, тобто при отриманні помилкового результату задається умовою операція пропускається і не здійснюється. цикл DO...WHILE перевіряє виконання умов в самому кінці, що дозволяє виконати дії циклу мінімум один раз.
    #include int main () {int y-y = 5-do {printf ("цикл працює!ен") -} while (y != 5) -getchar () -}
  • Даний цикл відобразить передбачене повідомлення, незважаючи на те, що перевірка умови виявиться помилковою. Мінлива і задана рівною п`яти, а цикл повинен повторюватися в тому випадку, коли змінна не дорівнює п`яти, тому відбувається вихід з циклу. Повідомлення відбивається на екрані один раз, так як умова перевіряється тільки в самому кінці.
  • Умова WHILE в циклі DO...WHILE слід закінчувати крапкою з комою. Це єдиний цикл, який вимагає наявності в кінці крапки з комою.
  • Частина 5 з 6:
    Використання функцій
    1. Зображення з назвою 53403 19 1
    1. Зрозумійте основи застосування функцій. Функції є автономні блоки коду, які можна викликати в різних ділянках програми. Вони полегшують повторення коду і допомагають спростити розуміння принципів роботи самої програми і подальше її зміна. Функції можуть включати в себе всі згадані вище прийоми, і навіть інші види функцій.
    • рядок main () на самому початку всіх зазначених прикладів є функцією, як і рядок getchar ()
    • Функції важливі для ефективної організації коду і полегшення його читання. Правильно користуйтеся функціями, щоб раціонально побудувати свою програму.
  • Зображення з назвою 53403 20 2
    2. Почніть з оголошення функцій. Функції найкраще оголошувати в самому початку програми, щоб позначити їх призначення до того, як ви приступили до написання програмного коду. Базовий синтаксис для функцій виглядає як "return_названіе функції (аргумент 1, аргумент 2 і так далі)-". Наприклад, щоб задати функцію, яка складає два числа, необхідно скласти наступний код:
    int add (int x, int y)-
  • Так ви оголосите функцію, яка підсумовує два цілих числа (з і і), А потім повертає суму у вигляді цілого числа.
  • Зображення з назвою 53403 21 1
    3. Увімкніть функцію в програму. Раніше оголошену функцію можна використовувати для створення програми, що використовує два вводяться користувачем числа і чинною їх між собою. Така програма дозволить продемонструвати роботу функції "add" і зрозуміти, як з її допомогою можна управляти введеними даними.
    #include int add (int x, int y) -int main () {int x-int y-printf ( "Введіть два числа, які слід скласти: " ) -Scanf ( "% д", &x) -scanf ( "% д", &y) -printf ( "Сума введених чисел становить% d n" , add (x, y)) -getchar () -} int add (int x, int y) {return x + y-}
  • Зверніть увагу, що оголошення функції все ще знаходиться у верхній частині програми. Він повідомляє компілятору, чого очікувати при виконанні функції та що саме вона повинна повернути у вигляді результату. Це необхідно тільки в тому випадку, якщо ви хочете викликати функцію нижче по тексту програми. запрограмувати функцію add () можна до функції main (), і результат буде тим же без оголошення.
  • Фактичний функціонал конкретної функції визначається в кінці програми. функція main () збирає числові дані від користувача, а потім направляє їх в функцію add () для обробки. А функція add () передає готовий результат назад функції main ()
  • коли функція add () вже оголошена, її можна викликати в будь-якому місці програми.
  • Частина 6 з 6:
    Подальше вивчення мови
    1. Зображення з назвою 53403 22 2
    1. Підшукайте книги з програмування на мові C. Дана стаття охоплює лише основи мови, які лежать на поверхні можливостей програмування на C і всієї пов`язаної з цим інформації. Хороша книга допоможе вам вирішити виникаючі проблеми і позбавить вас від чималої головного болю в процесі подальшої роботи з мовою.
  • Зображення з назвою 53403 23 2
    2. Приєднуйтеся до різні спільноти програмістів. Існує безліч спільнот як в мережі, так і в реальному світі, присвячених програмуванню на всіх можливих мовах. Пошукайте що-небудь на зразок "об`єднання програмістів на C", щоб обмінюватися прикладами кодів та ідеями. Незабаром ви помітите, що багато почерпнули з допомогою спільноти.
  • По можливості відвідуйте хакатони. Це події, на яких команди програмістів і індивідуальні розробники за обмежену кількість часу повинні створити програму і знайти для неї певне рішення, проявивши при цьому неабияку кмітливість. Так можна зустрітися з великою кількістю хороших програмістів, а самі хакатони проводяться регулярно по всьому світу.
  • Зображення з назвою 53403 24 2
    3. Запишіться на курси. Щоб навчитися програмувати, необов`язково вступати до навчального закладу, але відвідування всього декількох занять відповідного курсу з програмування внесе великий внесок у ваші знання. Ніщо не зрівняється з допомогою тих людей, які мають великий досвід практичного застосування мови. Зазвичай курси пропонують різні громадські центри, професійні коледжі та університети, дозволяючи вивчити певні комп`ютерні науки без необхідності вступу до навчального закладу для отримання повноцінної освіти.
  • Зображення з назвою 53403 25 2
    4. Подумайте про вивчення C++. Як тільки ви досить добре освоїте мову програмування C, ніщо не завадить вам придивитися до C++. Це більш сучасна версія мови C, що володіє більш гнучкими можливостями. C ++ змодельований з парадигмою об`єктно-орієнтованого програмування, тому знання C ++ дозволить вам створювати потужні програми практично для будь-якої операційної системи.
  • Поради

    • Обов`язково коментуйте свій програмний код. Коментарі допоможуть не тільки тим, хто потім буде намагатися розібратися в вашому коді, але і дозволять вам самим запам`ятати, що, де і навіщо ви писали. Ймовірно, на поточний момент ви добре розумієте, що саме робите, але через два або три місяці ви вже багато забудете.
    • Ніколи не забувайте закінчувати крапкою з комою (-) рядки printf (), scanf (), getch () і тому подібні, але ніколи не ставте цей знак після умови IF або циклів WHILEілі FOR.
    • Зіткнувшись з синтаксичної помилкою при компіляції, яка ставить вас в глухий кут, спробуйте знайти роз`яснення помилково за допомогою пошукової системи Google (або будь-якого іншого пошукача). Є ймовірність, що до вас хтось вже стикався з такою ж помилкою і опублікував можливий варіант її виправлення.
    • Ваш вихідний код повинен мати розширення *.c, щоб комп`ютер розумів, що це вихідний файл з програмним кодом C.
    • Завжди пам`ятайте про те, що в практиці народжується досконалість. Чим більше ви займаєтеся програмуванням, тим краще стають ваші навички. Тому починайте з простих коротких програм, щоб трохи освоїтися, а коли станете програмувати вже досить впевнено, переходите до створення більш складних програм.
    • Навчіться логічного структурування, що допоможе вирішувати різні проблеми при створенні коду.
    Cхоже