输入一串字符(长度不超过80个字符),要求不开辟其它数组而将该字符串逆序存放,并输出逆序后的字符串内容。(要求用字符数组和字符指针两种方式来实现)
时间: 2023-06-24 21:05:46 浏览: 82
C++输入一个字符串,把其中的字符按照逆序输出的两种方法解析
使用字符数组实现:
```c
#include <stdio.h>
#include <string.h>
int main() {
char str[81];
printf("请输入一个字符串:");
scanf("%s", str);
int len = strlen(str);
for (int i = 0; i < len / 2; i++) {
char temp = str[i];
str[i] = str[len - 1 - i];
str[len - 1 - i] = temp;
}
printf("逆序后的字符串为:%s\n", str);
return 0;
}
```
使用字符指针实现:
```c
#include <stdio.h>
#include <string.h>
int main() {
char str[81];
printf("请输入一个字符串:");
scanf("%s", str);
int len = strlen(str);
char *p1 = str;
char *p2 = str + len - 1;
while (p1 < p2) {
char temp = *p1;
*p1 = *p2;
*p2 = temp;
p1++;
p2--;
}
printf("逆序后的字符串为:%s\n", str);
return 0;
}
```
阅读全文