[刷題] 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