碳水爱好者! 2021-03-21 18:49 采纳率: 0%
浏览 29
已结题

c++螺旋矩形输入大于10输出就有错误,求大佬指点

#include<iostream>
using namespace std;
int main() {
    int n, i = 0, j = 0, k, m = 1, h = 0;
    cin >> n;
    int q=n;
    int a[n][n]={0};
    a[n/2][n/2]=n*n; 
    for (k = 0; k < n / 2+1; k++) 
    {
        i=h;
        j=h;
        while ( j < n ) {
            a[i][j] = m;
            m += 1;
            j++;
        }
        j = j - 1;
        i++;
        while ( i < n ) {
            a[i][j] = m;
            m += 1;
            i++;
        }
        i = i - 1;
        j--;
        while (j >= h ) {
            a[i][j] = m;
            m += 1;
            j--;
        }
        j = j + 1;
        i--;
        h++;
        while (i >= h){
            a[i][j] = m;
            m += 1;    
            i--;
        }
        i = i + 1;
        n=n-1;
    }
    for (i = 0; i < q; i++) {
        for (j = 0; j < q; j++) {
            cout << a[i][j] << " ";
        }
        cout<<endl;
    }
    return 0;
}

  • 写回答

3条回答 默认 最新

  • 小白小白你好菜 2021-03-21 19:55
    关注

      

    #include <stdio.h> 
    #include <stdlib.h> 
    int main() 
    { 
    	int N, i, j, n, num = 1; 
    	scanf("%d", &N); 
    	int a[N][N] = {0};
       	for(n = 0; n <= N/2; n++) 
       	{ 
         	for(j = n; j <= N-n-1; j++) 
         	a[n][j] = num++; 
           
         	for(i = n+1; i < N-n-1; i++) 
         	a[i][N-n-1] = num++; 
           
         	for(j = N-n-1;j > n; j--) 
         	a[N-n-1][j] = num++; 
           
         	for(i = N-n-1; i > n; i--) 
         	a[i][n] = num++; 
       	}   
       	//输出螺旋矩阵  
       	for(i = 0; i < N; i++) 
       	{ 
         	for(j = 0; j < N; j++) 
         	printf("%3d ",a[i][j]); 
         
         	printf("\n"); 
       	}   
       	system("pause"); 
       	return 0; 
    }

      

     

    评论

报告相同问题?

悬赏问题

  • ¥15 任意一个散点图自己下载其js脚本文件并做成独立的案例页面,不要作在线的,要离线状态。
  • ¥15 各位 帮我看看如何写代码,打出来的图形要和如下图呈现的一样,急
  • ¥30 c#打开word开启修订并实时显示批注
  • ¥15 如何解决ldsc的这条报错/index error
  • ¥15 VS2022+WDK驱动开发环境
  • ¥30 关于#java#的问题,请各位专家解答!
  • ¥30 vue+element根据数据循环生成多个table,如何实现最后一列 平均分合并
  • ¥20 pcf8563时钟芯片不启振
  • ¥20 pip2.40更新pip2.43时报错
  • ¥15 换yum源但仍然用不了httpd