题解 | #句子逆序#

句子逆序

http://www.nowcoder.com/practice/48b3cb4e3c694d9da5526e6255bb73c3

句子逆序:C语言解法

首先取出字符串中的每个字符,并把字符存到一个字符数组里,记录所有已存的字符数量,再记录单词的字符数量,遇到空格或者结束符时,获得上的单词的指针,和单词数量进行翻转,之后清空单词的字符数量,最后得到的字符数组按顺序输出字符即可。

#include<stdio.h>
void reverse(char *s,int num){
    int left = 0, right = num-1;
    while(left<right){
        char temp = s[left];
        s[left++] = s[right];
        s[right--] = temp;
    }
}
int main(){
    char str[10000] = {0};
    char c = 0; 
    int size = 0,len = 0;
    while(~scanf("%c",&c)){
        if(c == ' ' || c == '\n'){
            reverse(&str[size - len],len);
            len = -1;
        }
        str[size++] = c;
        len++;
    }
    size--;
    while(size>=0){
        printf("%c",str[--size]);
    }
}
全部评论

相关推荐

喜欢吃蛋糕仰泳鲈鱼是我的神:字节可以找个hr 给你挂了,再放池子捞
点赞 评论 收藏
分享
点赞 评论 收藏
分享
1 1 评论
分享
牛客网
牛客企业服务