专业的游戏资讯门户网站,爱游戏就上Gmae234!
游戏网 > 问答列表 >

c++,如何对位互换,如100010变010001

请问:c++,如何对位互换,如100010变010001

   404

404,您请求的文件不存在!

   2019-04-24 10:15:43


采纳答案   不知道你解决了没有?下面是演示程序供参考:
#include 

using namespace std;

void mirror_reverse(char *str, size_t n);

int main(int argc, char const *argv[])
{
    char s[][7] = { "010001",
                    "110000",
                    "101000",
                    "111000"};
    size_t rows = sizeof(s)/sizeof(s[0]);
    size_t cols = sizeof(s[0])/sizeof(s[0][0]); // ''    ending.
    
    for (int i = 0; i < rows; ++i) {
        mirror_reverse(s[i], cols-1);
        cout << s[i] << endl;
    }    
    return 0;
}

void mirror_reverse(char *str, size_t n)
{
    int first, last;
    char c;

    for (first = 0, last = n-1; first < last; first++, last--) {
        c = str[first];
        str[first] = str[last];
        str[last] = c;        
    }

}运行结果:
100010
000011
000101
000111    2019-04-24 10:15:43

 给你个思路,先把字符串分割成字符数组,把字符数字元素对调组成字符串。不会再给你编代码
追问:希望能有代码,最好是2维数组,
010001
110000
101000
111000
变为
100010
000011
000101
000111
不能让你白干,有加分   2019-04-24 10:15:43

ask1ask2ask3ask4ask5ask6ask7ask8ask9ask10ask11ask14ask13ask14ask15

游戏推荐更多>