Come invertire una stringa in c

Come invertire una stringa in c

“Utilizziamo la funzione String inversa ogni volta che siamo tenuti a modificare o invertire l'ordine di stringa in un programma. Ad esempio, se inizialmente abbiamo dichiarato una stringa Char di Memory Dimensione 5 come "tessuto", ora se vogliamo applicare l'operazione di inversione della stringa su questa stringa, otterremo la stringa di output come "htolc". Esistono diversi metodi per eseguire l'inversione delle stringhe nella C e sono Strev Func (), Recorsion Func () e Inversione delle stringhe usando i puntatori. Possiamo anche verificare la stringa Palindrome usando i metodi di inversione della stringa. Un palindrome è una stringa il cui ordine dei personaggi rimane invariato anche dopo l'implementazione dell'operazione di inversione della stringa su di esso."

Procedura

Conosceremo i requisiti di base in termini di sintassi per le funzioni di inversione delle stringhe implementando i vari metodi di reinversione delle stringhe. Inoltre, discuteremo anche di come possiamo verificare la stringa Palindrome.

Sintassi

Questo articolo si occupa dei vari metodi per l'inversione delle stringhe, quindi potremmo non essere in grado di definire una sintassi generale per l'inversione delle stringhe, ma spiegheremo la sintassi per ciascun metodo di inversione delle stringhe negli esempi.

Esempio # 01

Questo esempio della guida si occupa dell'implementazione di invertire una stringa utilizzando il metodo "strrev ()". L'implementazione di questo esempio verrebbe eseguita creando un progetto in Visual Studio C, che è un compilatore per l'esecuzione dei programmi C. Quando creiamo un nuovo progetto in Visual Studio C, siamo tenuti ad aggiungere questo progetto al percorso dei file di origine C e possiamo farlo salvando il nome del progetto con l'estensione del file C, E.G., "progetto. C". Con il completamento di questo passaggio, dobbiamo importare alcune librerie che ci consentirebbero di utilizzare le loro funzioni integrate che potremmo utilizzare in seguito durante lo sviluppo di un programma.

Nel nostro caso, importeremo due delle biblioteche importanti; Uno è "$ # include" per le funzioni di visualizzazione della lettura e output di input e la seconda libreria sarà "$ # include" poiché faremo a che fare con le stringhe e l'operazione di stringa in questo esempio. Ora andremo avanti al passaggio successivo, dove dichiareremo la funzione principale che avrà un tipo di ritorno come intero e, in questa funzione principale, scriveremo un programma per l'operazione di inversione delle stringhe.

Dichiareremo ora una stringa con il tipo di dati "char" e lo assegneremo una memoria di dimensioni "50". Non inizializzamo questa stringa nel programma; Piuttosto, prenderemo solo l'input dall'utente per questa stringa e lo faremo chiamando il metodo scanf () e passando gli argomenti della funzione, le specifiche del formato della stringa come "%s" con il nome con cui avevamo dichiarato la stringa. Una volta che otteniamo l'input dall'utente per la stringa, chiameremo il metodo strrev () e lo passeremo alla stringa per la quale avevamo preso l'input dall'utente. Quindi visualizziamo i risultati con la funzione printf () e usciremo dalla funzione principale restituendo il valore uguale a zero. Quello che segue è un codice di esempio, che è scritto nella lingua C. Copia questo codice nel compilatore ed eseguilo per controllare l'output.

#includere
#includere
int main ()

Char String [50];
printf ("\ n string da invertire:");
scanf ("%s", stringa);
printf ("\ n reverse di una stringa: %s", strrev (stringa));
restituzione 0;

Abbiamo fornito la stringa di input come "acero" al programma di stringa inversa e il programma è stato quindi restituito nell'output la stringa inversa come "elpam."

Esempio # 02

Ora implementeremo di nuovo l'esempio per la stringa inversa, ma questa volta useremo un altro metodo per l'inversione della stringa e questa sarebbe la "funzione di ricorsione."Ora creeremo un nuovo progetto nel compilatore C e includeremo le due librerie:

$ # include
$ # include

Quindi nel progetto, svilupperemo una funzione di ricorsione che chiameremo in seguito nel codice per invertire le stringhe. Dichiarare una funzione con il tipo di ritorno "vuoto" e nominarlo "invertire."I parametri di questa funzione saranno la stringa puntatore del tipo char come" char*stringa."Nella funzione, dichiareremo le tre variabili come I, L e temporaneo_var, tutti con lo stesso tipo di dati," int."Chiameremo la funzione strlen () per prendere la lunghezza della stringa che avevamo dichiarato come parametro della funzione" invertire "passando questa stringa agli argomenti di Strlen () otterremo la lunghezza della stringa.

Useremo quindi la "condizione if" sull'indice "i" che, se 'i' è inferiore alla lunghezza della stringa divisa a metà, quindi memorizzare la stringa [i] in temporaneo_var, allora scambieremo il valore di "String [lunghezza-i-1]" con il valore "temporaneo_var", farà un incremento nell'indice "i" come "i ++" e chiamerà la funzione reverse () che prenderà la stringa nel suo argomento. Questo passaggio consentirà al programma di chiamare ricorsivamente la funzione di reverse () che abbiamo creato.

Ora dichiareremo la funzione principale e dichiareremo le dimensioni della stringa che abbiamo dichiarato nella funzione inversa come "40" prenderemo la stringa di input dall'utente usando la funzione "get ()" e chiameremo nuovamente il "contrario" Func per invertire la stringa che si muoverà nella lunghezza della stringa e invertire l'ordine della stringa. Dopo questa chiamata di funzione, salveremo il suo risultato e visualizzeremo la stringa inversa con il metodo printf (). L'esempio può essere eseguito seguendo il codice indicato di seguito nella figura:

#includere
#includere
void reverse (char* string)
static int i, l, temptoMporary_var;
l = strlen (stringa);
se io < l / 2)
temptEmporary_var = String [i];
string [i] = string [l - i - 1];
String [L - I - 1] = temptEmporary_var;
I ++;
inverso (stringa);


int main ()

Char String [40];
printf ("immettere la stringa:");
ottiene (stringa);
printf ("\ n prima di invertire la stringa: %s \ n", stringa);
Revstr (String);
printf ("Dopo aver invertito la stringa: %s", stringa);

Dopo aver eseguito il codice sopra menzionato, daremo una stringa di input al programma come "più leggero", che verrà quindi restituito dal programma nell'output dopo aver invertito il suo ordine come "rethgil".

Conclusione

Questo articolo spiega il concetto di invertire le stringhe nella sintassi del linguaggio di programmazione c. Abbiamo mostrato i due metodi come "metodo di ricorsione" e il metodo "strrev ()" e implementato gli esempi per entrambi questi metodi in questo articolo. Abbiamo anche discusso della stringa di Palindrome nell'articolo. Speriamo che troverai questo articolo utile per le tue preoccupazioni in merito alle operazioni di inversione delle stringhe in C.