zoukankan      html  css  js  c++  java
  • 华为机试——数字字符串转二进制

    C_C++_XY_09.数字字符串转二进制

    • 题目描述:

    输入一个三个数字的字符串,请将此串进行如下整理:

    将字符串转换成数字,转换为二进制数,如果倒数第三位是“0”,则输出“0”,如果是“1”,则输出“1”。

    比如,输入字符串“240”,转换为二进制为“11110000”,它的倒数第三位是“0”,所以输出是“0”.

    • 要求实现函数:

    void ArrangeString(const char *pInputStr, long lInputLen, char *pOutputStr);

    · 【输入】 pInputStr: 输入字符串

    · lInputLen: 输入字符串长度

    · 【输出】 pOutputStr: 输出字符串,空间已经开辟好,与输入字符串等长;

    · 【注意】不用考虑输入串为空,非数字等异常

    • 示例

    输入:“000”

    输出:“0”

    输入:“251”

    输出:“0”

    1
    2
    3
    4
    5
    6
    7
    8
    9
    10
    11
    12
    13
    14
    15
    16
    17
    18
    19
    20
    21
    22
    23
    24
    25
    26
    27
    28
    29
    30
    31
    32
    33
    34
    35
    36
    37
    38
    39
    40
    41
    42
    43
    44
    45
    46
    47
    48
    49
    50
    51
    52
    53
    54

    #include <iostream>
    #include <stdlib.h>
    #include <bitset>
    using namespace std;
     
    void ArrangeString(const char *pInputStr, long lInputLen, char *pOutputStr)
    {
        if ((pInputStr == NULL) || (lInputLen <= 0) || (pOutputStr == NULL))
        {
            return;
        }
     
        int num = atoi(pInputStr);
        bitset<32> b(num);
        if (b[2] == 1)
        {
            *pOutputStr = '1';
        }
        else
        {
            *pOutputStr = '0';
        }
     
        pOutputStr++;
        *pOutputStr = '';
    }
    //void ArrangeString(const char *pInputStr, long lInputLen, char *pOutputStr)
    //{
    //     if ((pInputStr == NULL) || (lInputLen <= 0) || (pOutputStr == NULL))
    //     {
    //         return;
    //     }
    //
    //     int num = atoi(pInputStr);
    //     if ((num >> 2) & 0x01 == 1)
    //     {
    //         *pOutputStr = '1';
    //     }
    //     else
    //     {
    //         *pOutputStr = '0';
    //     }
    //
    //     pOutputStr++;
    //     *pOutputStr = '';
    //}
     
    int main() {
        const char *pInputStr = "251";
        char pOutputStr[10];
        ArrangeString(pInputStr, 3, pOutputStr);
        cout << pOutputStr << endl;
        return 0;
    }
  • 相关阅读:
    打印沙盒路径
    iOS自定义组与组之间的距离以及视图
    iOS开发之地域选择
    设置按钮文字右对齐
    ios应用下架方法(说明)
    You've implemented -[<UIApplicationDelegate> application:didReceiveRemoteNotification:fetchCompletionHandler:], but you still need to add "remote-notification" to the list of your supported UIBackgrou
    iOS开发-模拟器的小常识
    iOS-本地的推送
    创建节点学习
    窥探一句话木马后门的背后
  • 原文地址:https://www.cnblogs.com/helloweworld/p/3193902.html
Copyright © 2011-2022 走看看