顺时针打印矩阵——20-创新互联
输入一个矩阵,按照从外向里以顺时针的顺序依次打印出每一个数字。例如,输入如下矩阵:
为曲周等地区用户提供了全套网页设计制作服务,及曲周网站建设行业解决方案。主营业务为做网站、网站制作、曲周网站设计,以传统方式定制建设网站,并提供域名空间备案等一条龙服务,秉承以专业、用心的态度为用户提供真诚的服务。我们深信只要达到每一位用户的要求,就会得到认可,从而选择与我们长期合作。这样,我们也可以走得更远!1 2 3 4
5 6 7 8
9 10 11 12
13 14 15 16
则依次打印出数字1,2,3,4,8,12,16,15,14,13,9,5,6,7,11,10。
其实顺时针的打印,无非就是先打印出矩阵最外面的第一行,然后是最后一列,然后是最后一行,最后是第一列,每一次打印时控制的条件也就是矩阵的行和列的边界,那么打印完一圈之后只需要改变打印的范围也就是首尾行和首尾列就可以再打印里面的矩阵;
程序设计如下:
#include#include using namespace std; void ClockwisePrintArr(int arr[][5], size_t row, size_t col) { assert(arr && row && col);//条件判断 int (*tmp)[5] = arr; //第一次开始的行为0,列也为0,打印终止的行为形参行数,列也为形参列数 int start_row = 0; int start_col = 0; int end_row = row; int end_col = col; //判断条件当开始边界小于终止边界的时候 while((start_row < end_row) && (start_col < end_col)) { //打印矩阵第一行 for(int i = start_col; i < end_col; ++i) { cout< = start_col; --i) { cout< start_row; --i) { cout< 运行程序:
《完》
另外有需要云服务器可以了解下创新互联scvps.cn,海内外云服务器15元起步,三天无理由+7*72小时售后在线,公司持有idc许可证,提供“云服务器、裸金属服务器、高防服务器、香港服务器、美国服务器、虚拟主机、免备案服务器”等云主机租用服务以及企业上云的综合解决方案,具有“安全稳定、简单易用、服务可用性高、性价比高”等特点与优势,专为企业上云打造定制,能够满足用户丰富、多元化的应用场景需求。
本文名称:顺时针打印矩阵——20-创新互联
文章出自:http://cdiso.cn/article/ppoes.html