C语言 二维数组赋值问题这样编程为什么错误?int move[5][3];if(dest.X > start.X && dest.Y > start.Y)\x05{\x05\x05move[5][3] = {\x05\x05{0,0,0},\x05\x05\x05\x05\x05{0,0,1},\x05\x05//向东\x05\x05{0,1,0},\x05\x05//向南\x05\x05{0,0,-1}
来源:学生作业帮助网 编辑:作业帮 时间:2024/07/13 10:07:05
![C语言 二维数组赋值问题这样编程为什么错误?int move[5][3];if(dest.X > start.X && dest.Y > start.Y)\x05{\x05\x05move[5][3] = {\x05\x05{0,0,0},\x05\x05\x05\x05\x05{0,0,1},\x05\x05//向东\x05\x05{0,1,0},\x05\x05//向南\x05\x05{0,0,-1}](/uploads/image/z/7139434-58-4.jpg?t=C%E8%AF%AD%E8%A8%80+%E4%BA%8C%E7%BB%B4%E6%95%B0%E7%BB%84%E8%B5%8B%E5%80%BC%E9%97%AE%E9%A2%98%E8%BF%99%E6%A0%B7%E7%BC%96%E7%A8%8B%E4%B8%BA%E4%BB%80%E4%B9%88%E9%94%99%E8%AF%AF%3Fint+move%5B5%5D%5B3%5D%3Bif%28dest.X+%3E+start.X+%26%26+dest.Y+%3E+start.Y%29%5Cx05%7B%5Cx05%5Cx05move%5B5%5D%5B3%5D+%3D+%7B%5Cx05%5Cx05%7B0%2C0%2C0%7D%2C%5Cx05%5Cx05%5Cx05%5Cx05%5Cx05%7B0%2C0%2C1%7D%2C%5Cx05%5Cx05%2F%2F%E5%90%91%E4%B8%9C%5Cx05%5Cx05%7B0%2C1%2C0%7D%2C%5Cx05%5Cx05%2F%2F%E5%90%91%E5%8D%97%5Cx05%5Cx05%7B0%2C0%2C-1%7D)
C语言 二维数组赋值问题这样编程为什么错误?int move[5][3];if(dest.X > start.X && dest.Y > start.Y)\x05{\x05\x05move[5][3] = {\x05\x05{0,0,0},\x05\x05\x05\x05\x05{0,0,1},\x05\x05//向东\x05\x05{0,1,0},\x05\x05//向南\x05\x05{0,0,-1}
C语言 二维数组赋值问题
这样编程为什么错误?
int move[5][3];
if(dest.X > start.X && dest.Y > start.Y)
\x05{
\x05\x05move[5][3] = {
\x05\x05{0,0,0},\x05\x05\x05
\x05\x05{0,0,1},\x05\x05//向东
\x05\x05{0,1,0},\x05\x05//向南
\x05\x05{0,0,-1},\x05\x05//向西
\x05\x05{0,-1,0}};\x05\x05//向北
\x05}
\x05else if(dest.X < start.X && dest.Y > start.Y)
\x05{
\x05\x05move[5][3] = {
\x05\x05{0,0,0},
\x05\x05{0,0,-1},\x05\x05//向西\x05\x05\x05
\x05\x05{0,1,0},\x05\x05//向南
\x05\x05{0,0,1},\x05\x05//向东
\x05\x05{0,-1,0}};\x05\x05//向北
\x05}
\x05else if(dest.X < start.X && dest.Y < start.Y)
\x05{
\x05\x05move[5][3] = {
\x05\x05{0,0,0},
\x05\x05{0,0,-1},\x05\x05//向西\x05
\x05\x05{0,-1,0},\x05\x05//向北\x05\x05
\x05\x05{0,0,1},\x05\x05//向东
\x05\x05{0,1,0}};\x05\x05//向南
\x05}
\x05else(dest.X > start.X && dest.Y < start.Y)
\x05{
\x05\x05move[5][3] = {
\x05\x05{0,0,0},
\x05\x05{0,0,1},\x05\x05//向东\x05
\x05\x05{0,-1,0},\x05\x05//向北\x05\x05
\x05\x05{0,0,-1},\x05\x05//向西
\x05\x05{0,1,0}};\x05\x05//向南
\x05}
为什么错误?
C语言 二维数组赋值问题这样编程为什么错误?int move[5][3];if(dest.X > start.X && dest.Y > start.Y)\x05{\x05\x05move[5][3] = {\x05\x05{0,0,0},\x05\x05\x05\x05\x05{0,0,1},\x05\x05//向东\x05\x05{0,1,0},\x05\x05//向南\x05\x05{0,0,-1}
move[5][3] = {
{0,0,0},
{0,0,1},//向东
{0,1,0},//向南
{0,0,-1},//向西
{0,-1,0}};//向北
{}这个只能用来初始化,不能用来赋值.要用循环的方式赋值
你的那个只能在数组定义的时候才行.如:int move[5][3] = {
{0,0,0},
{0,0,1},//向东
{0,1,0},//向南
{0,0,-1},//向西
{0,-1,0}};//向北