题目:
7-59 字符串逆序 (15 分)
输入一个字符串,对该字符串进行逆序,输出逆序后的字符串。
输入格式:
输入在一行中给出一个不超过80个字符长度的、以回车结束的非空字符串。
输出格式:
在一行中输出逆序后的字符串。
输入样例:
Hello World!
输出样例:
!dlroW olleH
分析:
1、读取字符串
2、倒序输出
#include<stdio.h>
#include<string.h>
#define N 81
int main() {
int i;
char original[N] ;
gets(original);
for(i=strlen(original)-;i>=;i--){
printf("%c",original[i]);
}
return ;
}
注意N是81不是80
网友程序(博客“云上明月”):
#include <stdio.h>
#include <string.h>
#define MAX 81
int main(){
char str[MAX], temp;
int i;
//scanf("%s", str);
//以%s格式无法输入带空格的字符串
gets(str);
for(i=; i<strlen(str)/; i++){
temp = str[i];
str[i] = str[strlen(str)--i];
str[strlen(str)--i] = temp;
}
printf("%s", str); return ;
}
直接对称交换,统一了奇偶,注意下标从0开始,从1开始的话for中条件改为<=,str[i]=str[strlen(str)+1-i]