从键盘获取一串字符串,回车换行符为结束符,编写代码实现将此字符串按其倒序重新放入字符串中,

输入格式:

  字符串

输出格式:

  字符串

输入样例1:

hello

输出样例1:

olleh

 

输入样例2:

how are you!

输出样例2:

!uoy era woh

可以使用循环将前半部分的字符逐个与后半部分对应位置的字符进行交换即可。

代码如下:



#include <stdio.h>
#include <string.h>

int main(void){
    
    char str[100];
    gets(str);
    
    int i=0;  // 从字符串第一个字符开始进行交互 
    int len=strlen(str);  // 获取字符串长度 
    while(i<len/2){  // 将字符串的前半部分与后半部分的字符 进行交换 
        char ch = str[i];   // 将前半部分当前位置的字符 存储与临时字符变量中 
        str[i]=str[len-1-i];  // 将前半部分当前位置的字符 赋值为 后半部分 对应位置的字符 
        str[len-1-i]=ch;  // 后半部分 对应位置的字符 赋值为 前半部分当前位置的原字符 
        i++;  // 指向下一个字符位置 
    } 
    
//    for(i=0;i<=len;i++){
//        printf("str[%d=]=%c,%d\n",i,str[i],str[i]);
//    }
//    
    printf("%s",str);  // 打印倒序后的结果 
    
    return 0;
    
} 

img