欢迎您访问程序员文章站本站旨在为大家提供分享程序员计算机编程知识!
您现在的位置是: 首页

华为机试在线训练C++版(11~20)

程序员文章站 2022-05-25 13:56:21
...

11.数字颠倒

华为机试在线训练C++版(11~20)
方法一:直接利用C++库函数,先将数字转换成字符串,然后再颠倒过来即可,朴实无华的思想2333

#include <iostream>
#include <algorithm>
#include <string>
using namespace std;
int main() {
    int input;
    cin >> input;
    string str = to_string(input);
    reverse(str.begin(), str.end());
    cout << str << endl;
    return 0;
}

方法二:

#include<iostream>
#include<string>
using namespace std;

int main() {
    int input;
    cin >> input;
    string str;
    if (input == 0) {//输入是0的情况单独判断
        cout << 0 << endl;
    }
    else {
        while (input) {
            str = input % 10 + '0';//“末尾”为0的时候要加上'0'字符
            cout << str;
            input /= 10;
        }
    }    
    return 0;
}

12.字符串反转

华为机试在线训练C++版(11~20)
方法一:和上一题一样,直接利用库函数:

#include <iostream>
#include <string>
#include <algorithm>
using namespace std;
int main(){
    string str;
    cin>>str;
    reverse(str.begin(),str.end());
    cout<<str;
    return 0;
}

方法二:直接从后往前输出就行了呗!

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

13.句子逆序

华为机试在线训练C++版(11~20)

相关标签: 刷题练习