364
Cerința
Scrieți funcția cu următorul antet:
int Path(const char cale[], char d[101][101])
Parametrul cale memorează un șir de caractere format din litere mici și semnul \ și reprezintă o succesiune de foldere incluse unul în altul. Funcția trebuie să memoreze fiecare folder pe câte o linie a matricei d și să returneze numărul de foldere conținute în cale.
Restricții și precizări
- Lungimea șirului
calenu va depăși100 caleeste nevid, deci va exista cel puțin un folder- Cei doi parametri sunt indexați de la
0 - Nu vor exista alte caractere în afară de cele menționate în enunț
Exemplu
Dacă cale = "pbinfo\clx\teste\azi", atunci Path(cale, d) va returna 4. Linia 0 din d va memora pbinfo, linia 1 va memora clx, linia 2 va memora teste și linia 3 va memora azi.
bool lit(char ch){
return (ch >= 'a' && ch <= 'z') || (ch >= 'A' && ch <= 'Z');
}
int Path(const char cale[], char d[101][101]){
int i = 0, c = 0, j = 0;
while(cale[i]){
if(!lit(cale[i]))
c++, j = 0;
else{
d[c][j] = cale[i];
j++;
}
i++;
}
return c + 1;
}
Comentarii