欢迎来到天天文库
浏览记录
ID:57664169
大小:58.00 KB
页数:6页
时间:2020-08-31
《矩阵之字形打印.doc》由会员上传分享,免费在线阅读,更多相关内容在教育资源-天天文库。
1、题目实现矩阵之字形打印实验要求:任给一个矩阵(m*n),实现元素的之字形输出。例如:A[4][4]={1,2,3,4,5,6,7,8,9,10,11,12,13,14,15,16}程序应依次输出:12,53,6,94,7,10,138,11,1412,1516实验思路:利用2个坐标点a(x,y),b(m,n)分别标记一个参考点,用来划分一条对角线(对角线上元素就是需要依次打印)。一轮结束之后根据具体条件移动参考点,继续打印。我们假设a(x,y)先向下移动,再向右移动,不同的是b(m,n)先向右移动,再向下移
2、动。当a(x,y),b(m,n)重合时,就到达矩阵的最后一个元素。实验源码:#include#defineparaX5//矩阵行参数#defineparaY5//矩阵列参数voidmain(){inta[paraX][paraY];intx,y,m,n,i,j;intnum=1;printf("输出原矩阵");for(i=0;i3、]);num+=1;}printf("");}x=0;//标记坐标(x,y)y=0;m=0;//标记坐标(m,n)n=0;//利用以上坐标画出矩阵的一条对角线printf("之字形打印");while(x<=paraX-1&&y<=paraY-1&&m<=paraX-1&&n<=paraY-1)//坐标没有走到底就执行循环{i=m;j=n;while(i<=x&&j>=y)//利用坐标(m,n)(x,y)从右上到左下依次打印斜线上元素{printf("%-3d",a[i][j]);i=i+14、;j=j-1;}printf("");if(x
3、]);num+=1;}printf("");}x=0;//标记坐标(x,y)y=0;m=0;//标记坐标(m,n)n=0;//利用以上坐标画出矩阵的一条对角线printf("之字形打印");while(x<=paraX-1&&y<=paraY-1&&m<=paraX-1&&n<=paraY-1)//坐标没有走到底就执行循环{i=m;j=n;while(i<=x&&j>=y)//利用坐标(m,n)(x,y)从右上到左下依次打印斜线上元素{printf("%-3d",a[i][j]);i=i+1
4、;j=j-1;}printf("");if(x
此文档下载收益归作者所有