0

I am running into some trouble trying to print out this code. I have a function that generates a search space with ranges 1 to 8. But when I try to output it, the program quits on me.

#include <iostream>;
using namespace std;

char yOrN;
int answer;
const int LENGTH=4096;
int guess[LENGTH];

void searchspace(int guesses[],int length){
int count = 0;
for(int i=1; i=8;i++){
    for(int j=1; j=8; j++){
        for(int k=1;k=8;k++){
            for(int l=1;l=8;l++){
                guesses[count]=1000*i+100*j+10*k+l;
                count++;
            }
        }
    }
}
}

int main(){
searchspace(guess,LENGTH);
for(int i = 0; i<4096;i++){
    cout<<guess[i]<<endl;
}
 }
4

3 回答 3

4

这个循环(和其他循环)

for(int j=1; j=8; j++)

j=8评估为时结束true。总是这样。

你的意思:

for(int j=1; j<=8; j++)
于 2013-10-26T22:05:49.180 回答
2

你的for循环都是错误的,例如你需要改变:

for(int i=1; i=8;i++){

for(int i=1; i<=8;i++){

对于其他人也是如此。

于 2013-10-26T22:06:00.127 回答
0

修复了您的代码:

  • for 循环
  • yOrn ,未使用答案,因此已删除
  • 删除';' #include 之后

这里是:

#include <iostream>
using namespace std;

const int LENGTH=4096;
int guess[LENGTH];

void searchspace(int guesses[],int length){
    int count = 0;
    for(int i=1; i<=8;i++){
        for(int j=1; j<=8; j++){
            for(int k=1;k<=8;k++){
                for(int l=1;l<=8;l++){
                    guesses[count]=1000*i+100*j+10*k+l;
                    count++;
                }
            }
        }
    }
}

int main(){
    searchspace(guess,LENGTH);
    for(int i = 0; i<4096;i++){
        cout<<guess[i]<<endl;
    }
}

我编译并运行它 - 完美运行(至少我认为这是你想要做的)。

于 2013-10-27T02:12:15.307 回答