/ / "E" nach "T" in eine Kette ohne Temperierung mit "T" [geschlossen] - c einfügen

Fügen Sie "E" nach "T" in einer Zeichenkette ohne Temperierung mit "T" [geschlossen] - c ein

Das Ziel ist, nach allen Vorkommen des Buchstabens "T" "E" einzufügen

Aber das ist, was der Code unten tut:

Sobald der Charakter "T" erkannt wird ...

Er ersetzt "T" durch ein anderes "T" und fügt dann "E" ein

Wie kann es geändert werden, so dass es "T" nicht durch ein anderes "T" ersetzt, weil es wie eine zusätzliche Arbeit erscheint.

Stattdessen kann es einfach das vorhandene "T" an Ort und Stelle lassen. Bewegen Sie sich danach und fügen Sie das "E" ein.

char s1[1024];
int i, n;

for (i=0, n = 0; s[i]!= ""; i++)
{
if (s[i] == "T")
{
s1[n] = "T";
n++;
s1[n] = "E";
n++;
}
else
{
s1[n] = s[i];
n++;
}
}
s1[n] = "";

Antworten:

0 für die Antwort № 1

Kopieren Sie einfach Zeichen und wenn Sie sehen, haben Sie kopiert T, kopiere ein E

s1[n] = s[i];
n++;
if (s[i] == "T")
{
s1[n] = "E";
n++;
}