用另一个替换char数组

时间:2016-10-24 22:38:04

标签: c++ arrays char

第一次实际发布在这里,非常兴奋嘿嘿..

所以我们从学校开始做这个任务来制作一个刽子手游戏。我已经完成了大部分困难的事情,但有一件事我似乎无法解决,谷歌也找不到我的答案,所以我在这里。

//bubble Sort
#include<iostream>
#include<vector>
using std::cin;
using std::cout;

bool isSorted(std::vector<int> & myData);

int main()
{
    std::vector<int> myData;
    int length = 0;
    int pass = 0;
    int swap = 0;

    cin >> length;


    int x = 0;

    for(x; x < length; x++)
    {
        int input = 0;
        cin >> input;
        myData.push_back(input);
    }

    x = 1;

    while(!isSorted(myData))
    {
        int trash = 0;
        for(x; x < length; x++)
        {
            if(myData[x] < myData[x-1])
            {
                trash = myData[x];
                myData[x] = myData[x-1];
                myData[x-1] = trash;

                swap++;

            }


        }
        pass++;

    }

    cout << pass << " " << swap;

    return 0;
}

bool isSorted(std::vector<int> & myData)
{

    for(int i = 1; i < myData.size(); i++)
    {
        if(myData[i] < myData[i-1])
        {
            return false;
        }
    }
    return true;
}

“Meme”是空格,当我输入一个正确的字母,而不是替换字母“Meme”中的'_'时,我会得到一些内容(让我们说这个词是meme):

“猜一封信:m”

“米___米___ m_m_m_m _”

如果有人能帮我解决这个问题,我会非常感激。提前谢谢!

2 个答案:

答案 0 :(得分:3)

问题是您在cout << meme循环中for 内部进行了meme 。因为cout << meme在字符串中每个字符打印一次(所以四次)。要解决此问题,只需将for(int i=0;i<length;i++) { if(letter[0]==word[i]) { meme[i]=letter[0]; } else { //Fel bokstav } } cout<<meme; 移到下面一行,如下所示:

{{1}}

答案 1 :(得分:2)

我看到的一个问题是:char letter[0]。这将是一个空数组。我想你想做char letter[100]之类的事情。