字符串倒序输出 c语言 不用指针。
时间: 2024-11-17 11:14:23 浏览: 50
在C语言中,如果你想要不使用指针来实现字符串的倒序输出,你可以利用C语言数组下标操作来达到目的。以下是一个简单的示例,它定义了一个函数`reverse_string`,该函数接收字符串作为字符数组,并在原地反转字符串:
```c
#include <stdio.h>
#include <string.h>
void reverse_string(char str[]) {
int length = strlen(str); // 获取字符串长度
for (int i = 0; i < length / 2; i++) { // 只需要遍历一半长度
char temp = str[i]; // 保存当前元素
str[i] = str[length - i - 1]; // 将当前位置的元素与对应的反向位置交换
str[length - i - 1] = temp; // 再将临时存储的元素放回对应位置
}
}
int main() {
char test_str[] = "Hello, World!";
printf("Original String: %s\n", test_str);
reverse_string(test_str);
printf("Reversed String: %s\n", test_str);
return 0;
}
```
当你运行这个程序时,输出将会是原始字符串的倒序。
相关问题
字符串倒序输出c语言
以下是使用指针法将字符串倒序输出的C语言代码:
```c
#include <stdio.h>
#include <string.h>
void reverse_string(char *arr) {
int len = strlen(arr);
char* left = arr; //指向头部的指针
char* right = arr + (len - 1); //指向尾部的指针
char temp;
while(left < right) {
//使用中间变量进行两个字符的交换
temp = *left;
*left = *right;
*right = temp;
left++; //头指针往后走
right--; //尾指针往前走
}
}
int main() {
char arr[] = "abcdefg";
reverse_string(arr);
printf("%s", arr); //gfedcba
return 0;
}
```
字符串倒序输出 c语言
在 C 语言中,要实现字符串的倒序输出,可以使用数组或指针来操作。以下是两种常见方法:
1. **使用字符数组**:
- 定义一个字符数组存储原始字符串,并使用两个指针,一个指向开始,一个指向结束,然后交换它们并向中间移动,直到相遇。
```c
#include <stdio.h>
void reverse(char str[]) {
int start = 0;
int end = strlen(str) - 1;
while (start < end) {
char temp = str[start];
str[start] = str[end];
str[end] = temp;
start++;
end--;
}
}
int main() {
char str[] = "Hello, World!";
reverse(str);
printf("Reversed string: %s\n", str);
return 0;
}
```
2. **使用指针和递增/递减指针**:
- 使用 `char *` 指针从两端向中间遍历并交换字符。
```c
#include <stdio.h>
void reverse(char* str) {
if (str && *str) {
char* start = str;
char* end = str + strlen(str) - 1;
while (start < end) {
char temp = *start;
*start = *end;
*end = temp;
start++;
end--;
}
}
}
int main() {
char str[] = "Hello, World!";
reverse(str);
printf("Reversed string: %s\n", str);
return 0;
}
```
阅读全文
相关推荐
















