[刷题] PTA 7-59 字符串逆序


题目:

7-59 字符串逆序 (15 分)
 输入一个字符串,对该字符串进行逆序,输出逆序后的字符串。

输入格式:

输入在一行中给出一个不超过80个字符长度的、以回车结束的非空字符串。

输出格式:

在一行中输出逆序后的字符串。

输入样例:

Hello World!

输出样例:

!dlroW olleH

分析:

1、读取字符串

2、倒序输出

 1 #include<stdio.h>
 2 #include<string.h>
 3 #define N 81
 4 int main() {
 5     int i;
 6     char original[N] ;
 7     gets(original);
 8     for(i=strlen(original)-1;i>=0;i--){
 9         printf("%c",original[i]);
10     }
11     return 0;
12 }

注意N是81不是80

网友程序(博客“云上明月”):

 1 #include <stdio.h>
 2 #include <string.h>
 3 #define MAX 81
 4 int main(){
 5     char str[MAX], temp;
 6     int i;
 7     //scanf("%s", str);
 8     //以%s格式无法输入带空格的字符串
 9     gets(str);
10     for(i=0; i<strlen(str)/2; i++){
11         temp = str[i];
12         str[i] = str[strlen(str)-1-i];
13         str[strlen(str)-1-i] = temp;
14     }
15     printf("%s", str);
16 
17     return 0;
18 }

直接对称交换,统一了奇偶,注意下标从0开始,从1开始的话for中条件改为<=,str[i]=str[strlen(str)+1-i]


免责声明!

本站转载的文章为个人学习借鉴使用,本站对版权不负任何法律责任。如果侵犯了您的隐私权益,请联系本站邮箱yoyou2525@163.com删除。



 
粤ICP备18138465号  © 2018-2025 CODEPRJ.COM