当前位置: 首页> 文旅> 艺术 > 嵌入式设计与开发_页面设计报价_seo公司优化方案_怎么注册域名网址

嵌入式设计与开发_页面设计报价_seo公司优化方案_怎么注册域名网址

时间:2025/8/4 14:43:23来源:https://blog.csdn.net/greengirl5/article/details/146262045 浏览次数:0次
嵌入式设计与开发_页面设计报价_seo公司优化方案_怎么注册域名网址

在这里插入图片描述
keypoint:
主要确定循环的轮次,以及每次循环的边界和条件
n分为奇数和偶数,以n=3和n=4为例,n=3只需要循环最外面一圈,中间的格子单独填充;n=4,有两个圈,一个外圈一个内圈,那么每次循环n/2圈;循环时可以采用左闭右开,比如n=3的时候,第一次循环从左到右,起始是(0,0)–>(0,1),退出循环后j++,j=2,刚好作为下一个从上至下循环的起始,j不变i++

int** generateMatrix(int n, int* returnSize, int** returnColumnSizes) {//初始化返回的结果数组的大小*returnSize = n;*returnColumnSizes = (int*)malloc(sizeof(int) * n);//初始化返回结果数组ansint** ans = (int**)malloc(sizeof(int*) * n);//旋转区间设定为左闭右开int startx=0,starty=0;int offset=1;int count=1;int i,j;for(i = 0; i < n; i++) {ans[i] = (int*)malloc(sizeof(int) * n);(*returnColumnSizes)[i] = n;}int loop=n/2;i=0,j=0;while(loop){//从左到右for(j=starty;j<n-offset;j++){ans[startx][j]=count++;}//从上到下for(i=startx;i<n-offset;i++){ans[i][j]=count++;}//从右到左for(;j>starty;j--){ans[i][j]=count++;}//从下到上for(;i>startx;i--){ans[i][j]=count++;}offset++;startx++;starty++;loop--;}//若n为奇数,单独填充中心点if(n%2!=0){ans[n/2][n/2]=n*n;}return ans;
}
关键字:嵌入式设计与开发_页面设计报价_seo公司优化方案_怎么注册域名网址

版权声明:

本网仅为发布的内容提供存储空间,不对发表、转载的内容提供任何形式的保证。凡本网注明“来源:XXX网络”的作品,均转载自其它媒体,著作权归作者所有,商业转载请联系作者获得授权,非商业转载请注明出处。

我们尊重并感谢每一位作者,均已注明文章来源和作者。如因作品内容、版权或其它问题,请及时与我们联系,联系邮箱:809451989@qq.com,投稿邮箱:809451989@qq.com

责任编辑: