练习7-11 字符串逆序 (15分)
题目描述
输入一个字符串,对该字符串进行逆序,输出逆序后的字符串。
输入格式:
输入在一行中给出一个不超过80个字符长度的、以回车结束的非空字符串。
输出格式:
在一行中输出逆序后的字符串。
输入样例:
Hello World!
输出样例:
!dlroW olleH
【答案】
#include <stdio.h>
#include <string.h>
#define MAX 90
// 计算字符数组长度时,还要加上【\0】,所以不能将 MAX定为80,最少81
int main() {
char str[MAX];
gets(str);
int n = strlen(str);
// 直接逆置字符数组
for (int i = 0, j = n - 1; i < j; i++, j--) {
char temp = str[i];
str[i] = str[j];
str[j] = temp;
}
for (int k = 0; k < n; k++) {
printf("%c", str[k]);
}
return 0;
}