代码供大家参考,有改进的话请指教

这道题真难想,做这道题的过程真是煎熬,最后虽然是参考别人学着写出来了,但是做出来以后真的特别开心
以后做这种题时一定要把每一个数的下标按规律列出来,这样方能较好的找到规律,虽然是暴力编写😂😂
#include<stdio.h>
main(){
	int n=0;
	scanf("%d",&n);
	int a[n][n];
	int k=0;
	int num=1;
	for(int i=0;i<n;i++){
		if(i%2==0){
			for(int j=0;j<=i;j++){
				a[i-j][j]=num++;
			}
		}else{
			for(int j=0;j<=i;j++){
				a[j][i-j]=num++;
			}
		}		
	}
	for(int i=n;i<2*n-1;i++){
		if(i%2==0){
			for(int j=n-1;j>=i-(n-1);j--){
				a[j][i-j]=num++;
			}
		}else{
			for(int j=n-1;j>=i-(n-1);j--){
				a[i-j][j]=num++;
			}
		}		
	}
	for(int i=0;i<n;i++){
		for(int j=0;j<n;j++){
			printf("%d ",a[i][j]);
		}
		printf("\n");
	}
}


全部评论

相关推荐

看到这个面评结果有点绷不住了
嗨害嗨我来了:他们这是招迪迦吗,还光,直接双手呈 90 度让他们见识见识什么叫做光
点赞 评论 收藏
分享
头像
08-05 15:59
已编辑
门头沟学院 运维工程师
点赞 评论 收藏
分享
评论
1
收藏
分享

创作者周榜

更多
牛客网
牛客网在线编程
牛客网题解
牛客企业服务