Adaugare caracter
Să se scrie o funcție numită addChars care primește ca parametru un șir de caractere și inserează după fiecare vocală caracterul $.
Semnătură funcție
Funcția trebuie să se numească addChars.
Funcția trebuie să primească ca parametru un șir de caractere.
La finalul funcției, șirul de caractere trebuie să conțină textul inițial modificat astfel încât după fiecare vocală să apară caracterul $.
Funcția nu va returna și nu va afișa nimic. Rezultatul va fi returnat prin parametrul transmis.
Restricții
Șirul final, după inserarea caracterelor cerute, va conține maxim 200 de caractere.
Exemplu
char s[200];
s[0] = 'a';
s[1] = 'n';
s[2] = 'a';
s[3] = 0;
addChars(s);
cout << s; // se va afisa a$na$
Codul este urmatorul:
const int MAX_LENGTH = 200;
void addChars (char s[MAX_LENGTH] ) {
char v[]="aeiouAEIOU", aux[MAX_LENGTH];
int n = strlen(s);
for(int i = 0; i < n; ++i) {
if(strchr(v, s[i])) {
strcpy(aux, s + i);
strcpy(s + i + 1, aux);
s[i + 1]='$';
}
}
}
Idee este ca nu acopar toate cazurile si nu inteleg de ce. Ma puteti ajuta ?
Multumesc!
Răspunsuri la întrebare
Răspuns de
1
Explicație:
Salut! Trebuie sa reactualizezi n atunci când inserezi $.
Adaugă n++; i++; după s[i + 1]='$';
Ai putea sa fii mai explicit cu cazurile pe care codul nu le acoperă.
oanaroxana3:
Multumesc!
Alte întrebări interesante
Limba română,
8 ani în urmă
Informatică,
8 ani în urmă
Biologie,
8 ani în urmă
Limba română,
8 ani în urmă
Matematică,
8 ani în urmă
Limba română,
9 ani în urmă
Biologie,
9 ani în urmă
Limba română,
9 ani în urmă