输入一串字符,逆序输出。要求使用数组实现。
时间: 2023-04-19 20:00:37 浏览: 167
可以使用一个字符数组来存储输入的字符串,然后从字符串末尾开始遍历,依次将每个字符输出即可实现逆序输出。
具体实现步骤如下:
1. 定义一个字符数组,用于存储输入的字符串。
2. 使用 scanf 函数读入字符串,存储到字符数组中。
3. 计算字符串的长度,即字符数组的长度。
4. 从字符串末尾开始遍历,依次将每个字符输出即可实现逆序输出。
示例代码如下:
```c
#include <stdio.h>
#include <string.h>
int main() {
char str[100];
printf("请输入一个字符串:");
scanf("%s", str);
int len = strlen(str);
printf("逆序输出:");
for (int i = len - 1; i >= ; i--) {
printf("%c", str[i]);
}
printf("\n");
return ;
}
```
相关问题
C语言将一个字符串数组逆序输出
在C语言中,要将一个字符串数组逆序输出,你可以通过遍历数组并逐个交换元素的位置来实现。这里是一个简单的示例:
```c
#include <stdio.h>
#include <string.h>
void reverseArray(char arr[], int start, int end) {
while (start < end) {
char temp = arr[start];
arr[start] = arr[end];
arr[end] = temp;
start++;
end--;
}
}
int main() {
char strArray[] = {"Hello", "World", "C", "Program", "Learning"};
int length = sizeof(strArray) / sizeof(strArray[0]);
// 输出原始数组
printf("Original Array:\n");
for (int i = 0; i < length; i++) {
printf("%s ", strArray[i]);
}
// 逆序数组
reverseArray(strArray, 0, length - 1);
// 输出逆序后的数组
printf("\nReversed Array:\n");
for (int i = 0; i < length; i++) {
printf("%s ", strArray[i]);
}
return 0;
}
```
在这个例子中,`reverseArray`函数接受一个字符串数组、起始索引和结束索引作为参数,然后通过两个指针从两端向中间移动并交换字符。`main`函数首先打印原数组,然后调用`reverseArray`函数,最后再打印逆序后的数组。
c语言怎么逆序输出一个字符串数组
在C语言中,可以使用循环来逆序输出一个字符串数组。以下是一个示例代码:
```c
#include <stdio.h>
#include <string.h>
#define maxn 100
int main() {
char a[maxn];
int i;
gets(a); // 或者使用 scanf("%s",a);
for(i=strlen(a)-1; i>=0; i--) {
printf("%c", a[i]);
}
return 0;
}
```
这段代码首先声明了一个字符数组 `a`,然后使用 `gets(a)` 或者 `scanf("%s",a)` 来输入字符串。接下来,使用循环从字符串的最后一个字符开始,逐个输出字符,直到第一个字符。最后,返回0表示程序正常结束。
阅读全文