logo

Kehren Sie einen String in C um

In diesem Thema werden verschiedene Möglichkeiten zum Umkehren einer Zeichenfolge in der Programmiersprache C erläutert. Eine Zeichenfolge umkehren ist die Technik, die die Reihenfolge einer bestimmten Zeichenfolge umkehrt oder ändert, sodass das letzte Zeichen der Zeichenfolge zum ersten Zeichen der Zeichenfolge wird und so weiter. Darüber hinaus können wir das Palindrom der gegebenen Zeichenfolge auch überprüfen, indem wir die ursprüngliche Zeichenfolge umkehren.

Wir geben zum Beispiel eine Zeichenfolge ein ' APFEL ', und verwenden Sie dann den umgekehrten Algorithmus. Der umgekehrte Algorithmus gibt die Zeichenfolge ' zurück ELPPA ', was völlig das Gegenteil der ursprünglichen Zeichenfolge ist.

Kehren Sie einen String in C um

Verschiedene Möglichkeiten, die Umkehrung einer Zeichenfolge im C zu finden

Im Folgenden sind die verschiedenen Möglichkeiten aufgeführt, die Umkehrung einer Zeichenfolge in der Programmiersprache C zu finden:

  1. Kehren Sie eine Zeichenfolge mit der Funktion strrev() um
  2. Kehren Sie eine Zeichenfolge um, ohne die Bibliotheksfunktion zu verwenden
  3. Kehren Sie eine Zeichenfolge mithilfe der Rekursionsfunktion um
  4. Kehren Sie eine Zeichenfolge mithilfe einer for-Schleife um
  5. Kehren Sie eine Zeichenfolge mit der While-Schleife um
  6. Kehren Sie eine Zeichenfolge mithilfe von Zeigern um
  7. Kehren Sie eine Zeichenfolge um, um nach Palindromen zu suchen

Programm 1: Drucken Sie die Rückseite einer Zeichenfolge mit der Funktion strrev()

Betrachten wir ein Beispiel zum Drucken der Rückseite einer Zeichenfolge mit der Funktion strrev().

Programm1.c

Algorithmus für BFS
 #include #include int main() { char str[40]; // declare the size of character string printf (' 
 Enter a string to be reversed: '); scanf ('%s', str); // use strrev() function to reverse a string printf (' 
 After the reverse of a string: %s ', strrev(str)); return 0; } 

Ausgabe

 Enter a string to be reversed: AMBULANCE After the reverse of a string: ECNALUBMA 

Programm 2: Drucken Sie die Umkehrung einer Zeichenfolge, ohne die Bibliotheksfunktion zu verwenden

Betrachten wir ein Beispiel zum Drucken der Umkehrung einer Zeichenfolge mithilfe einer benutzerdefinierten Funktion.

Programm2.c

 #include #include // function definition of the revstr() void revstr(char *str1) { // declare variable int i, len, temp; len = strlen(str1); // use strlen() to get the length of str string // use for loop to iterate the string for (i = 0; i <len 2; i++) { temp variable use to temporary hold the string str1[i]="str1[len" - i 1]; str1[len 1]="temp;" } int main() char str[50]; size of printf (' enter string: '); gets(str); gets() function take 
 before reversing %s 
', str); call revstr() revstr(str); after %s', < pre> <p> <strong>Output</strong> </p> <pre> Enter the string: Welcome Friends Before reversing the string: Welcome Friends After reversing the string: sdneirF emocleW </pre> <h3>Program 3: Print the reverse of a string using the recursion function</h3> <p>Let&apos;s consider an example to print the reverse of a string using the recursion function.</p> <p> <strong>Recursion function:</strong> A recursion function is a function that continuously calls the same function without using a looping statement.</p> <p> <strong>Program3.c</strong> </p> <pre> #include #include // use recursion function void revstr(char *str1) { // declare static variable static int i, len, temp; len = strlen(str1); // use strlen() to get the length of str string if (i <len 2){ temp variable use to temporary hold the string str1[i]="str1[len" - i 1]; str1[len 1]="temp;" i++; revstr(str1); recusively calls revstr() function } int main() { char str1[50]; size of printf (' enter string: '); gets(str1); gets() take 
 before reversing %s 
', str1); call after %s', < pre> <p> <strong>Output</strong> </p> <pre> Enter the string: LIFE INSURANCE Before reversing the string: LIFE INSURANCE After reversing the string: ECNARUSNI EFIL </pre> <h3>Program 4: Print the reverse of a string using for loop</h3> <p>Let&apos;s consider an example to print the reverse of a string using for loop in C programming language.</p> <p> <strong>Program4.c</strong> </p> <pre> #include #include #include void main() { char str[50], temp; // define the size of str[] array int i, left, right, len; printf (&apos; 
 Display a reverse string in the C: 
&apos;); printf (&apos; ----------------------- &apos;); printf (&apos; 
 Enter a string to reverse order: &apos;); scanf( &apos;%s&apos;, &amp;str); len = strlen(str); // get the length of the string left = 0; // set left index at 0 right = len - 1; // set right index len - 1 // use for loop to store the reverse string for (i = left; i <right; i++) { temp="str[i];" str[i]="str[right];" str[right]="temp;" right--; } printf (' the reverse of original string is: %s ', str); getch(); < pre> <p> <strong>Output</strong> </p> <pre> Display a reverse string in the C: ----------------------- Enter a string to reverse order: APPLE The reverse of the original string is: ELPPA </pre> <h3>Program 5: Print the reverse of a string using while loop</h3> <p>Let&apos;s consider an example to print the reverse of a string using while loop in C programming language.</p> <p> <strong>Program5.c</strong> </p> <pre> #include #include int main() { char str1[50], temp; // declare and initialize the size of string array. int i = 0, j =0; printf (&apos; Enter a string to be reversed: &apos;); scanf( &apos;%s&apos;, str1); j = strlen (str1) - 1; // get the length of the string // use while loop to define the condition while ( i <j) 1 { use temp variable to store the characters of str1 str1[j]="str1[i];" str1[i]="temp;" i++; i incremented by j--; j is decremented } printf (' reversed string: %s', str1); return 0; < pre> <p> <strong>Output</strong> </p> <pre> Enter a string to be reversed: JAVATPOINT The reversed of the string: TNIOPTAVAJ </pre> <h3>Program 6: Print the reverse of a string using pointers</h3> <p>Let&apos;s consider an example to print the reverse of a string using pointers in the C programming language.</p> <p> <strong>Program6.c</strong> </p> <pre> #include #include int str_len( char *st); void revstr( char *st); int main() { char st[50]; printf (&apos; Enter a string to be reversed: &apos;); scanf( &apos;%s&apos;, st); revstr(st); printf (&apos; The reverse string is: %s&apos;, st); return 0; } void revstr (char *st) { int len, i; char *start, *end, temp; len = str_len (st); start = st; end = st; for (i = 0; i <len - 1; i++) end++; for (i="0;" i < len 2; { temp="*end;" *end="*start;" *start="temp;" start++; end--; } int str_len (char *ptr) while ( *(ptr + i) !="" ) i++; return i; pre> <p> <strong>Output</strong> </p> <pre> Enter a string to be reversed: JAVATPOINT The reverse string is: TNIOPTAVAJ </pre> <h3>Program 7: Program to check whether the reverse string is a Palindrome</h3> <p>Consider a program to check whether the given string is a palindrome or not in the C programming language.</p> <p> <strong>Program7.c</strong> </p> <pre> #include #include int main () { // declare variables char str1[30]; int i, len, flag = 0; printf (&apos; Enter a string: &apos;); scanf (&apos;%s&apos;, str1); len = strlen( str1 ); // get the string length for ( i = 0; i <len; i++) { str1[i] is not equal to str1[len-i-1] if (str1[i] !="str1[len" - i 1]) flag="1;" break; exit from statement } (flag) printf (' %s a palindrome string', str1); else palindrome', return 0; < pre> <p> <strong>Output</strong> </p> <pre> Enter a string: madam madam is a palindrome string. </pre> <hr></len;></pre></len></pre></j)></pre></right;></pre></len></pre></len>

Programm 3: Drucken Sie die Umkehrung einer Zeichenfolge mithilfe der Rekursionsfunktion

Betrachten wir ein Beispiel zum Drucken der Umkehrung einer Zeichenfolge mithilfe der Rekursionsfunktion.

Rekursionsfunktion: Eine Rekursionsfunktion ist eine Funktion, die kontinuierlich dieselbe Funktion aufruft, ohne eine Schleifenanweisung zu verwenden.

b+ Bäume

Programm3.c

 #include #include // use recursion function void revstr(char *str1) { // declare static variable static int i, len, temp; len = strlen(str1); // use strlen() to get the length of str string if (i <len 2){ temp variable use to temporary hold the string str1[i]="str1[len" - i 1]; str1[len 1]="temp;" i++; revstr(str1); recusively calls revstr() function } int main() { char str1[50]; size of printf (\' enter string: \'); gets(str1); gets() take 
 before reversing %s 
\', str1); call after %s\', < pre> <p> <strong>Output</strong> </p> <pre> Enter the string: LIFE INSURANCE Before reversing the string: LIFE INSURANCE After reversing the string: ECNARUSNI EFIL </pre> <h3>Program 4: Print the reverse of a string using for loop</h3> <p>Let&apos;s consider an example to print the reverse of a string using for loop in C programming language.</p> <p> <strong>Program4.c</strong> </p> <pre> #include #include #include void main() { char str[50], temp; // define the size of str[] array int i, left, right, len; printf (&apos; 
 Display a reverse string in the C: 
&apos;); printf (&apos; ----------------------- &apos;); printf (&apos; 
 Enter a string to reverse order: &apos;); scanf( &apos;%s&apos;, &amp;str); len = strlen(str); // get the length of the string left = 0; // set left index at 0 right = len - 1; // set right index len - 1 // use for loop to store the reverse string for (i = left; i <right; i++) { temp="str[i];" str[i]="str[right];" str[right]="temp;" right--; } printf (\' the reverse of original string is: %s \', str); getch(); < pre> <p> <strong>Output</strong> </p> <pre> Display a reverse string in the C: ----------------------- Enter a string to reverse order: APPLE The reverse of the original string is: ELPPA </pre> <h3>Program 5: Print the reverse of a string using while loop</h3> <p>Let&apos;s consider an example to print the reverse of a string using while loop in C programming language.</p> <p> <strong>Program5.c</strong> </p> <pre> #include #include int main() { char str1[50], temp; // declare and initialize the size of string array. int i = 0, j =0; printf (&apos; Enter a string to be reversed: &apos;); scanf( &apos;%s&apos;, str1); j = strlen (str1) - 1; // get the length of the string // use while loop to define the condition while ( i <j) 1 { use temp variable to store the characters of str1 str1[j]="str1[i];" str1[i]="temp;" i++; i incremented by j--; j is decremented } printf (\' reversed string: %s\', str1); return 0; < pre> <p> <strong>Output</strong> </p> <pre> Enter a string to be reversed: JAVATPOINT The reversed of the string: TNIOPTAVAJ </pre> <h3>Program 6: Print the reverse of a string using pointers</h3> <p>Let&apos;s consider an example to print the reverse of a string using pointers in the C programming language.</p> <p> <strong>Program6.c</strong> </p> <pre> #include #include int str_len( char *st); void revstr( char *st); int main() { char st[50]; printf (&apos; Enter a string to be reversed: &apos;); scanf( &apos;%s&apos;, st); revstr(st); printf (&apos; The reverse string is: %s&apos;, st); return 0; } void revstr (char *st) { int len, i; char *start, *end, temp; len = str_len (st); start = st; end = st; for (i = 0; i <len - 1; i++) end++; for (i="0;" i < len 2; { temp="*end;" *end="*start;" *start="temp;" start++; end--; } int str_len (char *ptr) while ( *(ptr + i) !="" ) i++; return i; pre> <p> <strong>Output</strong> </p> <pre> Enter a string to be reversed: JAVATPOINT The reverse string is: TNIOPTAVAJ </pre> <h3>Program 7: Program to check whether the reverse string is a Palindrome</h3> <p>Consider a program to check whether the given string is a palindrome or not in the C programming language.</p> <p> <strong>Program7.c</strong> </p> <pre> #include #include int main () { // declare variables char str1[30]; int i, len, flag = 0; printf (&apos; Enter a string: &apos;); scanf (&apos;%s&apos;, str1); len = strlen( str1 ); // get the string length for ( i = 0; i <len; i++) { str1[i] is not equal to str1[len-i-1] if (str1[i] !="str1[len" - i 1]) flag="1;" break; exit from statement } (flag) printf (\' %s a palindrome string\', str1); else palindrome\', return 0; < pre> <p> <strong>Output</strong> </p> <pre> Enter a string: madam madam is a palindrome string. </pre> <hr></len;></pre></len></pre></j)></pre></right;></pre></len>

Programm 4: Drucken Sie die Rückseite einer Zeichenfolge mithilfe einer for-Schleife aus

Betrachten wir ein Beispiel zum Drucken der Umkehrung einer Zeichenfolge mithilfe einer for-Schleife in der Programmiersprache C.

Programm4.c

 #include #include #include void main() { char str[50], temp; // define the size of str[] array int i, left, right, len; printf (&apos; 
 Display a reverse string in the C: 
&apos;); printf (&apos; ----------------------- &apos;); printf (&apos; 
 Enter a string to reverse order: &apos;); scanf( &apos;%s&apos;, &amp;str); len = strlen(str); // get the length of the string left = 0; // set left index at 0 right = len - 1; // set right index len - 1 // use for loop to store the reverse string for (i = left; i <right; i++) { temp="str[i];" str[i]="str[right];" str[right]="temp;" right--; } printf (\' the reverse of original string is: %s \', str); getch(); < pre> <p> <strong>Output</strong> </p> <pre> Display a reverse string in the C: ----------------------- Enter a string to reverse order: APPLE The reverse of the original string is: ELPPA </pre> <h3>Program 5: Print the reverse of a string using while loop</h3> <p>Let&apos;s consider an example to print the reverse of a string using while loop in C programming language.</p> <p> <strong>Program5.c</strong> </p> <pre> #include #include int main() { char str1[50], temp; // declare and initialize the size of string array. int i = 0, j =0; printf (&apos; Enter a string to be reversed: &apos;); scanf( &apos;%s&apos;, str1); j = strlen (str1) - 1; // get the length of the string // use while loop to define the condition while ( i <j) 1 { use temp variable to store the characters of str1 str1[j]="str1[i];" str1[i]="temp;" i++; i incremented by j--; j is decremented } printf (\' reversed string: %s\', str1); return 0; < pre> <p> <strong>Output</strong> </p> <pre> Enter a string to be reversed: JAVATPOINT The reversed of the string: TNIOPTAVAJ </pre> <h3>Program 6: Print the reverse of a string using pointers</h3> <p>Let&apos;s consider an example to print the reverse of a string using pointers in the C programming language.</p> <p> <strong>Program6.c</strong> </p> <pre> #include #include int str_len( char *st); void revstr( char *st); int main() { char st[50]; printf (&apos; Enter a string to be reversed: &apos;); scanf( &apos;%s&apos;, st); revstr(st); printf (&apos; The reverse string is: %s&apos;, st); return 0; } void revstr (char *st) { int len, i; char *start, *end, temp; len = str_len (st); start = st; end = st; for (i = 0; i <len - 1; i++) end++; for (i="0;" i < len 2; { temp="*end;" *end="*start;" *start="temp;" start++; end--; } int str_len (char *ptr) while ( *(ptr + i) !="" ) i++; return i; pre> <p> <strong>Output</strong> </p> <pre> Enter a string to be reversed: JAVATPOINT The reverse string is: TNIOPTAVAJ </pre> <h3>Program 7: Program to check whether the reverse string is a Palindrome</h3> <p>Consider a program to check whether the given string is a palindrome or not in the C programming language.</p> <p> <strong>Program7.c</strong> </p> <pre> #include #include int main () { // declare variables char str1[30]; int i, len, flag = 0; printf (&apos; Enter a string: &apos;); scanf (&apos;%s&apos;, str1); len = strlen( str1 ); // get the string length for ( i = 0; i <len; i++) { str1[i] is not equal to str1[len-i-1] if (str1[i] !="str1[len" - i 1]) flag="1;" break; exit from statement } (flag) printf (\' %s a palindrome string\', str1); else palindrome\', return 0; < pre> <p> <strong>Output</strong> </p> <pre> Enter a string: madam madam is a palindrome string. </pre> <hr></len;></pre></len></pre></j)></pre></right;>

Programm 5: Drucken Sie die Rückseite einer Zeichenfolge mithilfe einer While-Schleife aus

Betrachten wir ein Beispiel zum Drucken der Umkehrung einer Zeichenfolge mithilfe einer While-Schleife in der Programmiersprache C.

Programm5.c

 #include #include int main() { char str1[50], temp; // declare and initialize the size of string array. int i = 0, j =0; printf (&apos; Enter a string to be reversed: &apos;); scanf( &apos;%s&apos;, str1); j = strlen (str1) - 1; // get the length of the string // use while loop to define the condition while ( i <j) 1 { use temp variable to store the characters of str1 str1[j]="str1[i];" str1[i]="temp;" i++; i incremented by j--; j is decremented } printf (\' reversed string: %s\', str1); return 0; < pre> <p> <strong>Output</strong> </p> <pre> Enter a string to be reversed: JAVATPOINT The reversed of the string: TNIOPTAVAJ </pre> <h3>Program 6: Print the reverse of a string using pointers</h3> <p>Let&apos;s consider an example to print the reverse of a string using pointers in the C programming language.</p> <p> <strong>Program6.c</strong> </p> <pre> #include #include int str_len( char *st); void revstr( char *st); int main() { char st[50]; printf (&apos; Enter a string to be reversed: &apos;); scanf( &apos;%s&apos;, st); revstr(st); printf (&apos; The reverse string is: %s&apos;, st); return 0; } void revstr (char *st) { int len, i; char *start, *end, temp; len = str_len (st); start = st; end = st; for (i = 0; i <len - 1; i++) end++; for (i="0;" i < len 2; { temp="*end;" *end="*start;" *start="temp;" start++; end--; } int str_len (char *ptr) while ( *(ptr + i) !="" ) i++; return i; pre> <p> <strong>Output</strong> </p> <pre> Enter a string to be reversed: JAVATPOINT The reverse string is: TNIOPTAVAJ </pre> <h3>Program 7: Program to check whether the reverse string is a Palindrome</h3> <p>Consider a program to check whether the given string is a palindrome or not in the C programming language.</p> <p> <strong>Program7.c</strong> </p> <pre> #include #include int main () { // declare variables char str1[30]; int i, len, flag = 0; printf (&apos; Enter a string: &apos;); scanf (&apos;%s&apos;, str1); len = strlen( str1 ); // get the string length for ( i = 0; i <len; i++) { str1[i] is not equal to str1[len-i-1] if (str1[i] !="str1[len" - i 1]) flag="1;" break; exit from statement } (flag) printf (\' %s a palindrome string\', str1); else palindrome\', return 0; < pre> <p> <strong>Output</strong> </p> <pre> Enter a string: madam madam is a palindrome string. </pre> <hr></len;></pre></len></pre></j)>

Programm 6: Drucken Sie die Rückseite einer Zeichenfolge mithilfe von Zeigern

Betrachten wir ein Beispiel zum Drucken der Umkehrung einer Zeichenfolge mithilfe von Zeigern in der Programmiersprache C.

Programm6.c

 #include #include int str_len( char *st); void revstr( char *st); int main() { char st[50]; printf (&apos; Enter a string to be reversed: &apos;); scanf( &apos;%s&apos;, st); revstr(st); printf (&apos; The reverse string is: %s&apos;, st); return 0; } void revstr (char *st) { int len, i; char *start, *end, temp; len = str_len (st); start = st; end = st; for (i = 0; i <len - 1; i++) end++; for (i="0;" i < len 2; { temp="*end;" *end="*start;" *start="temp;" start++; end--; } int str_len (char *ptr) while ( *(ptr + i) !="" ) i++; return i; pre> <p> <strong>Output</strong> </p> <pre> Enter a string to be reversed: JAVATPOINT The reverse string is: TNIOPTAVAJ </pre> <h3>Program 7: Program to check whether the reverse string is a Palindrome</h3> <p>Consider a program to check whether the given string is a palindrome or not in the C programming language.</p> <p> <strong>Program7.c</strong> </p> <pre> #include #include int main () { // declare variables char str1[30]; int i, len, flag = 0; printf (&apos; Enter a string: &apos;); scanf (&apos;%s&apos;, str1); len = strlen( str1 ); // get the string length for ( i = 0; i <len; i++) { str1[i] is not equal to str1[len-i-1] if (str1[i] !="str1[len" - i 1]) flag="1;" break; exit from statement } (flag) printf (\' %s a palindrome string\', str1); else palindrome\', return 0; < pre> <p> <strong>Output</strong> </p> <pre> Enter a string: madam madam is a palindrome string. </pre> <hr></len;></pre></len>

Programm 7: Programm zur Überprüfung, ob die Umkehrzeichenfolge ein Palindrom ist

Stellen Sie sich ein Programm vor, um zu überprüfen, ob die angegebene Zeichenfolge ein Palindrom in der Programmiersprache C ist oder nicht.

Äquivalenzgesetze

Programm7.c

 #include #include int main () { // declare variables char str1[30]; int i, len, flag = 0; printf (&apos; Enter a string: &apos;); scanf (&apos;%s&apos;, str1); len = strlen( str1 ); // get the string length for ( i = 0; i <len; i++) { str1[i] is not equal to str1[len-i-1] if (str1[i] !="str1[len" - i 1]) flag="1;" break; exit from statement } (flag) printf (\\' %s a palindrome string\\', str1); else palindrome\\', return 0; < pre> <p> <strong>Output</strong> </p> <pre> Enter a string: madam madam is a palindrome string. </pre> <hr></len;>