输入一个字符串,倒序输出该字符串的c语言代码
时间: 2023-10-06 13:10:22 浏览: 98
可以用以下代码实现:
```c
#include <stdio.h>
#include <string.h>
int main() {
char str[] = "Hello World!";
int len = strlen(str);
printf("char str[] = {");
for(int i = len - 1; i >= 0; i--) {
printf("'%c', ", str[i]);
}
printf("'\\0'};\n");
return 0;
}
```
输出结果为:
```
char str[] = {'!', 'd', 'l', 'r', 'o', 'W', ' ', 'o', 'l', 'l', 'e', 'H', '\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;
}
```
字符串倒序输出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;
}
```
阅读全文