C语言for循环字符串倒置C语言
时间: 2023-09-14 19:14:23 浏览: 76
可以使用C语言的for循环和指针操作来实现字符串倒置,具体实现如下:
```c
#include <stdio.h>
#include <string.h>
void reverse(char *str) {
int len = strlen(str);
char *p = str, *q = str + len - 1;
while (p < q) {
char temp = *p;
*p++ = *q;
*q-- = temp;
}
}
int main() {
char str[100];
printf("请输入一个字符串:");
scanf("%s", str);
reverse(str);
printf("倒置后的字符串:%s\n", str);
return 0;
}
```
在上面的代码中,我们使用了指针p和q来指向字符串的头部和尾部,然后通过for循环交换两个指针所指向的字符,最终实现字符串的倒置。
相关问题
c语言逆序输出字符串
以下是C语言逆序输出字符串的代码实现:
```c
#include <stdio.h>
#include <string.h>
void reverse(char* left, char* right) {
while (left < right) {
char tmp = 0;
tmp = *left;
*left = *right;
*right = tmp;
left++;
right--;
}
}
int main() {
char arr[100] = { 0 };
gets(arr); //获取字符串
//将字符串倒置
int len = strlen(arr); //计算字符串长度,以求最后一位的地址
reverse(arr, arr+len-1); //进行倒置
printf("%s\n",arr);
return 0;
}
```
该代码首先使用`gets()`函数获取用户输入的字符串,然后使用`strlen()`函数计算字符串长度,以求最后一位的地址。接着,使用`reverse()`函数将字符串倒置,最后使用`printf()`函数输出倒置后的字符串。
c语言程序字符串倒置函数并输出前n个字符
可以使用以下代码实现字符串倒置函数并输出前n个字符:
```
#include <stdio.h>
#include <string.h>
void reverse(char *str, int n) {
int len = strlen(str);
if (n > len) {
n = len;
}
for (int i = n - 1; i >= ; i--) {
printf("%c", str[i]);
}
}
int main() {
char str[] = "Hello World";
int n = 5;
reverse(str, n);
return ;
}
```
输出结果为:dlroW
注意:这里的字符串倒置函数只输出前n个字符的倒置结果,如果需要输出整个字符串的倒置结果,可以将n的值设为字符串长度len。