• 字符串或数字反转


    字符串反转

    有以下几种情形:

    第一种是将字符串按字符全部反转

    //输入
    I am a student
    //输出
    tneduts a ma I

    这种情形实现比较简单,只需要将输入的字符串按字符倒序输出即可。

    #include<iostream>
    #include<string>
    using namespace std;
    
    int main(){
        
        string str;
        getline(cin, str);
        for(int i = str.size()-1; i>=0; i--){
            cout<<str[i];
        }
        cout<<endl;//最后再输出换行符
        return 0;
    }

    第二种是将字符串以单词为单位反转

    //输入
    I am a student
    //输出
    student a am I

    这种情形可以将字符串中的单词都装进string类型的vector中,然后倒序输出vector中的元素。

    #include<iostream>
    #include<vector>
    #include<string>
    using namespace std;
    
    int main(){
        vector<string> str;
        string s;
        while(cin>>s){
            str.push_back(s);
        }
        for(int i=str.size()-1; i>=0; i--){
            cout<<str[i]<<' ';
        }
        cout<<endl;
        return 0;
    }

    也可以采用reverse()方法将迭代器begin()和end()之间的元素反转,范围for循环输出。

    使用reverse()方法要包含algorithm头文件。

    #include<iostream>
    #include<vector>
    #include<string>
    #include<algorithm>
    using namespace std;
    
    int main()
    {
        vector<string> str;
        string s;
        while(cin>>s){
            str.push_back(s);
        }
        reverse(str.begin(),str.end());//元素全部反转    
        for(auto v : str)//范围for循环
        {
            cout<<v<<' ';
        }
        
        return 0;
    }

     还有一种情形是需要考虑非英文字符,并将非英文字符转换为单词间隔

    如果原字符串中相邻单词间有多个间隔符时,倒排转换后也只允许出现一个空格间隔符

    这个时候只要适当加上一些判断条件就可以了。

    数字颠倒

    输入一个int整数,将这个整数以字符串的形式逆序输出。不考虑负数的情况,若数字含有0,则逆序形式也含有0,如输入为100,则输出为001。

    这里用到了to_string()方法,要包含algorithm头文件。

    #include<iostream>
    #include<algorithm>
    #include<string>
    using namespace std;
    
    int main(){
        int n;//按照int型接收
        while(cin>>n){
            string str = to_string(n);//int转化为string
            reverse(str.begin(), str.end());//反转全部元素
            cout<<str<<endl;
        }
        return 0;
    }

     C++11

  • 相关阅读:
    函数基础
    全局变量与类似配置文件的模块文件
    global语句(python学习手册422页)
    作用域实例
    变量名解析:LEGB原则
    作用域
    第三方库安装方法
    s[-1]和s[len(s)-1]
    查找特定后缀的文件
    logging日志管理-将日志写入文件
  • 原文地址:https://www.cnblogs.com/chongjz/p/12552440.html
Copyright © 2020-2023  润新知