SOS!!help!!c++编程问题~~10*10的字符数组的随机访问````

[复制链接]
查看11 | 回复2 | 2011-2-19 15:54:45 | 显示全部楼层 |阅读模式
从一个元素走到另一个元素 每次都上下左右移动,用A到Z标记,如果四个方向都堵住了就得尝试换一个方向~
程序我输出来了,但有一个疑问憋了我好几天了!!恩,我在下面标注了下,,麻烦看下呗^-^~~~抱歉我全部财产也就这20分吧,虽然少少点,但麻烦了~~
#include
#include
#include
using namespace std;
#define ROW 10
#define COL 10
int main()
{
char laby[ROW][COL],all_letter[26]={'A','B','C','D','E','F','G','H','I','J',

'K','L','M','N','O','P','Q','R','S','T',

'U','V','W','X','Y','Z'};
int row,col,letter,step;
bool up,down,right,left;
up=down=right=left=true;
for(row=0;row=0)&&(laby[row-1][col]=='.')))
{

row--;

laby[row][col]=all_letter[letter++];

break;
}

case 1:if(down=((row+1=0)&&(laby[row][col-1]=='.')))
{

col--;

laby[row][col]=all_letter[letter++];

break;

}
case 3:if(right=((col+1<COL)&&(laby[row][col+1]=='.')))
{

col++;

laby[row][col]=all_letter[letter++];

break;

}
}
if(!up&&!down&&!left&&!right)

break;
up=down=right=left=true;/*我看了答案来着,发现了这句话不明白什么意思,感觉有了这句话不可能输出啊,当事实说可以输出的,我就困惑了,这句话到底什么意思啊*/
}
for(row=0;row<ROW;row++)
{
for(col=0;col<COL;col++)
printf("%3c",laby[row][col]);
cout<<endl;
}
}
e~~如果不加那条语句的话,有时候的输出是错误的!!!

回复

使用道具 举报

千问 | 2011-2-19 15:54:45 | 显示全部楼层
一。1.作用域分隔符限定时
2.对象的引用
3.保持不变
4.A<B||A<C
5.没有形参的或缺省参数 构造函数
6.共享
7.上一个未配对的if配对
8.0
9.不同 派生类成员函数与在基类被覆盖的成员函数名、参数个数、
参数类型和返回值类型均相同
10.析构函数没有参数析构函数可以定义为虚函数
11.被调用的成员函数是虚函数
用指针或引用调用虚函数
12.被调用的成员函数是虚函数
用指针或引用调用虚函数
13.不能被修改
不能修改类数据成员
14.字
回复

使用道具 举报

千问 | 2011-2-19 15:54:45 | 显示全部楼层
这句话是把你的4个方向都设置为true,因为前面你走的路走到了个新的地方,万一走到你走到的旧的地方呢?那肯定就错了 啊!所有要全部恢复!表达能力有限~汗~
回复

使用道具 举报

您需要登录后才可以回帖 登录 | 立即注册

本版积分规则

主题

0

回帖

4882万

积分

论坛元老

Rank: 8Rank: 8

积分
48824836
热门排行