c语言

c语言怎么实现字符串反转

小亿
231
2023-11-21 17:10:02
栏目: 编程语言

可以通过以下方法实现字符串反转:

  1. 使用一个循环,从字符串的末尾开始遍历,依次将字符拼接到一个新的字符串中。
#include <stdio.h>
#include <string.h>

void reverseString(char* str) {
    int len = strlen(str);
    char reversed[len+1];
    int i, j = 0;
    
    for (i = len - 1; i >= 0; i--) {
        reversed[j++] = str[i];
    }
    reversed[j] = '\0';
    
    printf("Reversed string: %s\n", reversed);
}

int main() {
    char str[] = "Hello World";
    reverseString(str);
    return 0;
}

输出结果为:Reversed string: dlroW olleH

  1. 使用两个指针,一个指向字符串的开头,一个指向字符串的末尾,通过交换两个指针指向的字符来实现字符串的反转。
#include <stdio.h>
#include <string.h>

void reverseString(char* str) {
    int len = strlen(str);
    int i, j = len - 1;
    
    for (i = 0; i < j; i++, j--) {
        char temp = str[i];
        str[i] = str[j];
        str[j] = temp;
    }
    
    printf("Reversed string: %s\n", str);
}

int main() {
    char str[] = "Hello World";
    reverseString(str);
    return 0;
}

输出结果为:Reversed string: dlroW olleH

0
看了该问题的人还看了