刚写的推箱子代码自己找不到错误了,各位大佬救救
#include<stdio.h>#include<stdlib.h>
#include<windows.h>
int main()
{
char a={ "##########",
"##* ###",
"##O### #",
"#S O *#",
"# # O ##",
"## # * ##",
"##########"};
int i,x,y,p,q,m,n,h,t;
x=3;y=2;p=2;q=2;m=3;n=4;h=4;t=6;
char ch;
for(i=0;i<=6;i=i+1)
puts(a);
while(p!=1,n!=8,h!=5)
{
ch=getch();
if(ch=='w')
{
if(a!='#')
{
if(a=='O')
{
if(a='*')
{
a=' ';
x=x-1;
a='S';
a='@';
p=1;
}
if(a==' ')
{
a=' ';
x=x-1;
a='S';
a='O';
}
}
if(a==' ')
{
a=' ';
x=x-1;
a='S';
}
}
}
if(ch=='s')
{
if(a!='#')
{
if(a=='O')
{
if(a='*')
{
a=' ';
x=x+1;
a='S';
a='@';
h=5;
}
if(a==' ')
{
a=' ';
x=x+1;
a='S';
a='O';
}
}
if(a==' ')
{
a=' ';
x=x+1;
a='S';
}
}
}
if(ch=='a')
{
if(a!='#')
{
if(a=='O')
{
if(a='*')
{
a=' ';
y=y-1;
a='S';
a='@';
}
if(a==' ')
{
a=' ';
y=y-1;
a='S';
a='O';
}
}
if(a==' ')
{
a=' ';
y=y-1;
a='S';
}
}
}
if(ch=='d')
{
if(a!='#')
{
if(a=='O')
{
if(a='*')
{
a=' ';
y=y+1;
a='S';
a='@';
n=8;
}
if(a==' ')
{
a=' ';
y=y+1;
a='S';
a='O';
}
}
if(a==' ')
{
a=' ';
y=y+1;
a='S';
}
}
}
system("cls");
for(i=0;i<=6;i+1)
puts(a);
}
system("cls");
printf("You are win!");
Sleep(5000);
return 0;
} 本帖最后由 jhq999 于 2022-1-22 16:31 编辑
char a={ "##########",//有的字符串长度已经超出数组二维的长度
"##* ###",
"##O### #",
"#S O *#",
"# # O ##",
"## # * ##",
"##########"}; int main()
{
char a={ "##########",
"##* ###",
"##O### #",
"#S O*#",
"# # O ##",
"### * ##",
"##########"};
int i,x,y,p,q,m,n,h,t;
x=3;y=2;p=2;q=2;m=3;n=4;h=4;t=6;
char ch;
for(i=0;i<=6;i=i+1)
puts(a);
while(p!=1,n!=8,h!=5)
{
ch=getchar();
getchar();
if(ch=='w')
{
if(a!='#')
{
if(a=='O')
{
if(a='*')
{
a=' ';
x=x-1;
a='S';
a='@';
p=1;
}
if(a==' ')
{
a=' ';
x=x-1;
a='S';
a='O';
}
}
if(a==' ')
{
a=' ';
x=x-1;
a='S';
}
}
}
if(ch=='s')
{
if(a!='#')
{
if(a=='O')
{
if(a='*')
{
a=' ';
x=x+1;
a='S';
a='@';
h=5;
}
if(a==' ')
{
a=' ';
x=x+1;
a='S';
a='O';
}
}
if(a==' ')
{
a=' ';
x=x+1;
a='S';
}
}
}
if(ch=='a')
{
if(a!='#')
{
if(a=='O')
{
if(a='*')
{
a=' ';
y=y-1;
a='S';
a='@';
}
if(a==' ')
{
a=' ';
y=y-1;
a='S';
a='O';
}
}
if(a==' ')
{
a=' ';
y=y-1;
a='S';
}
}
}
if(ch=='d')
{
if(a!='#')
{
if(a=='O')
{
if(a='*')
{
a=' ';
y=y+1;
a='S';
a='@';
n=8;
}
if(a==' ')
{
a=' ';
y=y+1;
a='S';
a='O';
}
}
if(a==' ')
{
a=' ';
y=y+1;
a='S';
}
}
}
system("cls");
for(i=0;i<=6;i+=1)////////////////不是i+1
puts(a);
}
system("cls");
printf("You are win!");
Sleep(5000);
return 0;
} jhq999 发表于 2022-1-22 16:52
为啥大佬你这个改过的码我还是运行不了啊你能正常运行吗 0_c_∞ 发表于 2022-1-22 17:01
为啥大佬你这个改过的码我还是运行不了啊你能正常运行吗
运行正常 0_c_∞ 发表于 2022-1-22 17:01
为啥大佬你这个改过的码我还是运行不了啊你能正常运行吗
你是不是忘记头文件 #include <stdio.h> 了?
页:
[1]