c语言字符串反序数组方法
时间: 2023-06-21 20:05:25 浏览: 65
以下是使用C语言反转字符串并将其存储为数组的方法:
```c
#include <stdio.h>
#include <string.h>
int main() {
char str[100];
int i, len;
printf("Enter a string: ");
scanf("%s", str);
len = strlen(str);
char rev[len];
for(i=0; i<len; i++) {
rev[i] = str[len-i-1];
}
rev[i] = '\0';
printf("Reversed string: %s\n", rev);
return 0;
}
```
在此示例中,我们使用 `strlen()` 函数获取输入字符串的长度,并使用 `for` 循环将其反转并存储为新的字符数组 `rev`。最后,我们打印反转后的字符串。
相关问题
c语言实现 字符串反序 并 清除多余空格
以下是使用C语言实现字符串反序并清除多余空格的示例代码:
```c
#include <stdio.h>
#include <string.h>
void reverseString(char *str) {
int left = 0;
int right = strlen(str) - 1;
// 反序字符串
while (left < right) {
char temp = str[left];
str[left] = str[right];
str[right] = temp;
left++;
right--;
}
}
void removeExtraSpaces(char *str) {
int n = strlen(str);
// 从左到右遍历,删除多余的空格
int i, j;
for (i = 0, j = 0; i < n && str[i] != '\0'; i++) {
if (str[i] != ' ' || (i > 0 && str[i-1] != ' ')) {
str[j] = str[i];
j++;
}
}
// 添加字符串结束符
str[j] = '\0';
}
int main() {
char str[100];
printf("请输入一个字符串:");
fgets(str, sizeof(str), stdin);
// 去除换行符
if (str[strlen(str) - 1] == '\n') {
str[strlen(str) - 1] = '\0';
}
// 反序字符串
reverseString(str);
// 清除多余空格
removeExtraSpaces(str);
// 输出结果
printf("反序并清除多余空格后的字符串为:%s\n", str);
return 0;
}
```
这段代码首先定义了两个函数:`reverseString()` 和 `removeExtraSpaces()`。`reverseString()` 函数用于反序字符串,使用双指针法将字符串首尾字符进行交换。`removeExtraSpaces()` 函数用于清除多余的空格,遍历字符串并删除连续的多个空格,只保留一个空格。
在 `main()` 函数中,首先使用 `fgets()` 函数从标准输入获取一个字符串,并去除末尾的换行符。然后调用 `reverseString()` 函数反序字符串,再调用 `removeExtraSpaces()` 函数清除多余的空格。最后,输出处理后的结果。
请注意,这段代码假设输入的字符串长度不会超过100个字符。如果需要处理更长的字符串,可以适当修改代码中的数组大小。
C语言输入一个字符串,反序输出
可以使用C语言中的字符串处理函数来实现字符串反转,具体实现如下:
```c
#include <stdio.h>
#include <string.h>
int main() {
char str[100];
printf("请输入一个字符串:");
scanf("%s", str);
int len = strlen(str);
for (int i = 0; i < len / 2; i++) {
char temp = str[i];
str[i] = str[len - i - 1];
str[len - i - 1] = temp;
}
printf("反序输出的字符串为:%s", str);
return 0;
}
```
首先,使用`scanf`函数从标准输入中读取一个字符串,并存储在字符数组`str`中。然后,使用`strlen`函数获取字符串的长度,遍历字符串的前一半,将前一半和后一半的字符交换位置,最终输出反序后的字符串。