Advertisement
Not a member of Pastebin yet?
Sign Up,
it unlocks many cool features!
- #include <stdio.h>
- #include <stdlib.h>
- int main()
- {
- /// zasieg zmiennych
- // zmienne maja zasieg tylko do bloku kodu w ktorym zostaly zadeklarowane
- // jezeli w 2 blokach zmienne maja takie same nazwy to widoczna jest tylko wewnetrzna
- /// operatory
- // = przypisanie
- // + - * / % arytmetyczne
- // && || ! logiczne
- // > < >= <= == != porownanie
- // += -= *= /= %= zlozone przypisanie
- // ++ -- inkrementacja, dekrementacja
- /// znaki
- // char - typ zmiennej oznaczajacej znak tekstu; char zajmuje w pamieci jeden bajt
- // %c - ciag formatujacy dla charow
- printf("podaj znak: ");
- char c;
- scanf("%c", &c);
- printf("podales %c\n", c);
- /// tablice
- // tablice sa metoda organizacji danych tego samego typu
- int tab[10]; // dzialaja podobnie jak zwykle zmienne tj. podczas deklaracji musimy okreslic typ i nadac nazwe; w nawiasie [] podajemy rozmiar
- int tab2[] = {1, 3, 6, 10, 15}; // w momencie deklaracji mozemy od razu przypisac pewne wartosci za pomoca nawiasow {} i nie podawac wtedy rozmiaru
- // tablica bedzie miala rozmiar taki jak liczba podanych elemetow (w tym przypadku 5)
- printf("\ntablica tab2 zawiera: ");
- for (int i = 0; i < 5; i++)
- {
- printf("%d ", tab2[i]);
- }
- /// napisy
- // napis jest ciagiem (lancuchem) znakow
- printf("\n\npodaj napis: ");
- char napis[20];
- scanf("%s", napis); // wczytuje napis bez spacji do tablicy znakow
- // %s - ciag formatujacy dla napisow
- // w przypadku napisow przy wczytywaniu scanfem nie stoi znak &
- // podanie dluzszego napisu niz rozmiar tablicy spowoduje blad (pod Windowsem nie zawsze ale pod Linuxem tak)
- // napis konczy sie znakiem specjalnym \0 i on tez jest zapisywany w tablicy
- printf("twoj napis : %s\n", napis);
- char napis2[20];
- strcpy(napis2, napis); // kopiuje tekst ze zmiennej napis do zmiennej napis2
- printf("skopiowany napis: %s\n", napis2);
- printf("podaj napis ze spacjami:");
- char napis3[20];
- getchar(); // ze wzgledu na to ze przed fgets uzywany jest scanf w buforze zostaje znak enter ktory fgets potem wczytuje i konczy na tym wczytywanie a getchar() pozbywa sie tego problemu
- fgets(napis3, 20, stdin); // wczytuje napis ze spacjami do tablicy napis3, drugi argument oznacza limit wczytywanych znakow, trzeci to stdin i tak ma byc
- printf("fgest moze wczytac spacje: %s", napis3);
- ///funkcje
- // funkcje deklaruje sie przed mainem
- // deklarujac funkcje nalezy podac typ, nazwe i opcjonalnie argumenty
- // void oznacza typ ktory nic nie zwraca
- // funkcja ktora wywoluje sama siebie to rekurencja
- return 0;
- }
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement