我在尝试打印此代码时遇到了一些麻烦。我有一个函数生成一个范围为1到8的搜索空间。但是当我尝试输出它时,程序退出了我。
#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;
}
}
答案 0 :(得分:4)
此循环(及其他)
for(int j=1; j=8; j++)
在j=8
评估为true
时结束。总是如此。
你的意思是:
for(int j=1; j<=8; j++)
答案 1 :(得分:2)
您的for
循环都是错误的,例如你需要改变:
for(int i=1; i=8;i++){
到
for(int i=1; i<=8;i++){
和其他人一样。
答案 2 :(得分:0)
修正了您的代码:
这里是:
#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;
}
}
我编译并运行它 - 完美运行(至少我认为这是你想要做的)。