ZNAKI, NAPISY I ZMIENNE DYNAMICZNE 1. W main zainicjować
Transkrypt
ZNAKI, NAPISY I ZMIENNE DYNAMICZNE 1. W main zainicjować
ZNAKI, NAPISY I ZMIENNE DYNAMICZNE 1. W main zainicjować dwa napisy „Ala ma 4 koty i 22 psy” „ABxcv23asDx”. Napisać funkcję zwracająca ilość wystąpień danego znaku. i wywołać tę funkcję dla tych napisów. Policzyć a) ilość liter ‘a’ w napisie pierwszym i ‘c’ w napisie drugim b) ilość liter ‘y’ w napisie pierwszym i ‘B’ w napisie drugim 2. Rozszerzyć funkcję z zdania 1 o zwracanie pozycji. Funkcja powinna zwrócić pozycję poprzez parametr funkcji a ilość poprzez nazwę funkcji: int zlicz(char napis[], int &pozycja). Jeśli brak znaków, funkcja powinna zwrócić pozycję = -1. a) pierwszego wystąpienia znaku b) ostatniego wystąpienia znaku 3. Napisać funkcję zamieniającą w napisie znaki na inny znak void zamien(char s[], char znak) a) cyfry na dany znak b) litery małe na dany znak W main zamienić odpowiednie znaki na ‘*’ w pierwszym napisie oraz na ‘+’ w drugim. ---------------------------------------------------------------------------4. Napisać funkcję tworzącą dynamiczną kopię tablicy float float*kopia(float tab[ ],int n) W funkcji main zadeklarować tablicę A[10] i nadać jej w linii deklaracji wartości: 1, 5, 2, 6; Do wyświetlenia tablicy napisać funkcję wyświetlającą tablicę opartą na arytmetyce adresów. Wyświetlić za pomocą tej funkcji tablicę A oraz kopię 5. Napisać funkcję tworzącą dynamiczną kopię napisu, w ten sposób iż w nowym napisie znajdą się tylko: a) małe litery (Np. jeśli napis wzorcowy to „Ala Ma 2 koty” to kopia zawiera napis „laakoty”) b) cyfry (Np. jeśli napis wzorcowy to „Ala Ma 2 koty i 4 psy” to kopia zawiera napis „24”)