První program
Vítejte v kurzu jazyka C! Céčko patří k nejstarším programovacím jazykům, které se dodnes hojně používají: vzniklo už na začátku 70. let minulého století. Je to malý jazyk a programy v něm napsané běží velmi rychle. Proto se v něm píšou velké části operačních systémů, jako je Linux nebo Windows, i software pro mikrokontroléry, malinké počítače uvnitř praček, aut nebo hraček. Z jazyka C vyrostl jazyk C++. Další jazyky, třeba Java nebo JavaScript, od něj převzaly velkou část zápisu. Co se naučíte tady, se vám proto bude hodit i v nich.
V tomto kurzu se naučíte psát programy, které počítají, rozhodují se, opakují práci a pracují se seznamy čísel i s textem. Naučíte se rozdělit program na menší části, takzvané funkce, uvidíte, jak C pracuje s pamětí počítače, a na konci si napíšete vlastní menší projekt. Ale nejdřív svůj úplně první program.
Program je řada příkazů, které počítač provádí jeden po druhém, shora dolů. Jazyku C ale počítač přímo nerozumí. Program proto musí nejdřív zpracovat překladač: zkontroluje, že je program správně zapsaný, a přeloží ho do instrukcí, kterým počítač rozumí. Na tomto webu programy překládá překladač Clang. Když kliknete na Spustit, web váš program nejdřív přeloží a potom ho spustí.
Takhle vypadá celý program, který vypíše pozdrav:
#include <stdio.h>
int main(void) {
printf("Ahoj!\n");
return 0;
}Vypíše:
Ahoj!Co znamenají jednotlivé části:
#include <stdio.h>připojí k programu hlavičkový souborstdio.h(z anglického standard input/output, standardní vstup a výstup). Patří do standardní knihovny, tedy sady hotových nástrojů, která je součástí každého překladače C. Tento soubor přinášíprintfa bez tohoto řádku by ho překladač neznal.int main(void) { }je hlavní část programu, funkcemain. Tady program začíná: provede příkazy mezi složenými závorkami{a}, shora dolů. Každý program v C má právě jednu funkcimain. Co znamenáinta(void), se dozvíte v lekci o funkcích. Zatím ji berte jako pevnou kostru, do které píšete svůj kód.printf("Ahoj!\n");vypíše text. Text patří do dvojitých uvozovek", které ukazují, kde začíná a kde končí. Textu v uvozovkách programátoři říkají řetězec. Znaky\nna jeho konci se nevypíšou, ale ukončí řádek. Víc se o nich dozvíte v dalším cvičení.return 0;ukončí funkcimain, a tím i celý program. Nula sděluje počítači, že program skončil v pořádku.- Středník
;ukončuje příkaz, podobně jako tečka ukončuje větu. Má ho každý příkaz uvnitřmain. Řádky#include,int main(void) {a}příkazy nejsou, a proto středník nemají.
C rozlišuje velká a malá písmena, takže Printf ani PRINTF fungovat nebudou. Když je v programu taková chyba nebo třeba chybí středník, překladač program nespustí a pod výstupem ukáže červenou chybovou hlášku. Nelekejte se: zkontrolujte řádek, opravte ho a program spusťte znovu. Chybové hlášky se naučíte číst později v této lekci.
Ještě jedna věc: programy na tomto webu umějí jen vypisovat. Nemohou číst, co píšete na klávesnici, a proto všechno, s čím pracují, musí být zapsané přímo v programu.
Jak psát:
Pokyny
V editoru je program z ukázky. Klikněte na Spustit pod editorem a podívejte se do výstupu (na telefonu na kartě Výstup). První spuštění může trvat pár sekund, než se načte překladač.
Pak změňte text v uvozovkách tak, aby program vypsal tradiční první větu každého programátora:
Ahoj, světe!Znaky \n na konci textu nechte, jak jsou.
Pod první printf přidejte druhý, který na další řádek vypíše vaše jméno. Napište ho ještě nad řádek return 0;, protože tam program končí a příkazy pod ním by se už nikdy neprovedly. Nezapomeňte na uvozovky, \n a středník na konci.
Začněte programovat zdarma
1/7