zoukankan      html  css  js  c++  java
  • Text Reverse(文本倒置)

     1 #include<stdio.h>
     2 #include<string.h>
     3 #include<stdlib.h>
     4 
     5 void print_reverse(char a[], int k);
     6 void swap(char& a, char& b);
     7 
     8 int main(void) {
     9     int T;
    10     char words[1005];
    11 
    12     scanf("%d ", &T);
    13     while (T--) {
    14         gets_s(words);
    15         int len = strlen(words);
    16         int left = 0, right = 0;//left和right是一个单词的左右端
    17         int next_start;//下一次开始的位置
    18 
    19         while (right < len) {
    20             while (words[right] != ' ' && right < len) right++;
    21             next_start = right;//此时的a[right]是空格,或者结尾
    22             next_start++;//从空格的下一位开始
    23             right--;//此时right是单词末尾
    24             while (left < right) swap(words[left++], words[right--]);
    25             left = right = next_start;
    26         }
    27 
    28         for (int i = 0; i < len; i++) printf("%c", words[i]);
    29         printf("
    ");
    30     }
    31 
    32     return 0;
    33 }
    34 
    35 void swap(char& a, char& b) {
    36     char t = a;
    37     a = b;
    38     b = t;
    39 }

    gets()函数读取到

    ‘ ’(我们输入的回车)于是停止读取,但是它不会把 包含到字符串里面去。。。这个注意了! 在输入字符串或字符前,scanf()之后需要读入回车,但是gets()函数不需要,就是这个原因

  • 相关阅读:
    CSS框模型,浮动,定位以及其他属性
    CSS基础知识点总结
    Html基础知识点
    CentOS7桌面版系统使用的一些小技巧
    win 执行puppet
    常用脚本总结
    Ansible小记
    Tampermonkey-让百度云下载飞起来
    安装zabbix 遇到的一些问题
    alias
  • 原文地址:https://www.cnblogs.com/letianpaiai/p/13932630.html
Copyright © 2011-2022 走看看