标题:用指针来做二维数组回形遍历
取消只看楼主
bpl2011
Rank: 1
等 级:新手上路
帖 子:3
专家分:0
注 册:2011-12-4
结帖率:0
已结贴  问题点数:20 回复次数:1 
用指针来做二维数组回形遍历
如题,老师布置的作业。
用二维数组直接做可以做出来,但是怎么改成指针?(我只会把输出改成指针,但是主要思路根本没变。。)
用count这个变量来记录已经输出的个数。
用指针做我想了个思路:编四个函数“指针向上,向下,向左,向右”每运行一轮将row--,col--,但是最后编到崩溃。。希望各位大神帮助。。
#include <stdio.h>
int main()
{
 int a[100][100];
 int row,col;
 int i,j,n,count=0;
 scanf("%d%d",&row,&col);
 for(i=0;i<row;i++)
 {
     for(j=0;j<col;j++)
     {
         scanf("%d",&a[i][j]);
     }
 }
 for (n=0;;n++)
 {
   for(i=n;i<col-n;i++)
   {
    printf("%d\n",*(a[n]+i));
    count++;
   }
   if(count==row*col)
       break;
   for(j=n+1;j<row-n;j++)
   {
    printf("%d\n",*(a[j]+col-n-1));
    count++;
   }
   if(count==row*col)
       break;
   for(i=col-2-n;i>=n;i--)
   {
    printf("%d\n",*(a[row-n-1]+i));
    count++;
   }
   if(count==row*col)
       break;
   for(j=row-2-n;j>n;j--)
   {
    printf("%d\n",*(a[j]+n));
    count++;
   }
   if(count==row*col)
       break;
  }
  return 0;
}
搜索更多相关主题的帖子: 记录 include count 
2011-12-11 22:41
bpl2011
Rank: 1
等 级:新手上路
帖 子:3
专家分:0
注 册:2011-12-4
得分:0 
我是真心求教的,为什么没人帮助!
2011-12-12 18:09



参与讨论请移步原网站贴子:https://bbs.bccn.net/thread-357544-1-1.html




关于我们 | 广告合作 | 编程中国 | 清除Cookies | TOP | 手机版

编程中国 版权所有,并保留所有权利。
Powered by Discuz, Processed in 1.188664 second(s), 8 queries.
Copyright©2004-2025, BCCN.NET, All Rights Reserved