c语言

c语言字符串元素互换怎么实现

小亿
132
2023-11-04 11:31:10
栏目: 编程语言

在 C 语言中,字符串是以字符数组的形式表示的。要实现字符串中元素的互换,可以通过遍历字符数组并交换对应的元素来完成。

下面是一个示例代码,演示了如何实现 C 语言字符串中元素的互换:

#include 
#include 
void swap(char* str, int i, int j) {
    char temp = str[i];
    str[i] = str[j];
    str[j] = temp;
}
void reverseString(char* str) {
    int length = strlen(str);
    int i, j;
    for (i = 0, j = length - 1; i < j; ++i, --j) {
        swap(str, i, j);
    }
}
int main() {
    char str[] = "Hello, World!";
    printf("Original String: %s\n", str);
    reverseString(str);
    printf("Reversed String: %s\n", str);
    return 0;
}

在上述代码中,`swap()` 函数用于交换字符数组 `str` 中索引为 `i` 和 `j` 的元素。`reverseString()` 函数使用双指针法,从字符串的两端开始向中间遍历,并调用 `swap()` 函数进行元素交换,最终实现字符串的翻转。

注意,C 语言中的字符串是以 null 字符 `\0` 结尾的,所以在进行字符串操作时需要确保字符串末尾有 `\0`,否则可能导致未定义行为。

以上代码输出结果为:

Original String: Hello, World!
Reversed String: !dlroW ,olleH

这样就完成了 C 语言字符串中元素的互换。

0
看了该问题的人还看了