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”)