首页 > 编程语言 >C语言编程1.24螺旋方阵

C语言编程1.24螺旋方阵

时间:2024-12-11 23:31:33浏览次数:11  
标签:输出 螺旋 int 编程 C语言 -- 方阵 输入 1.24

题目描述

本题要求从右下角开始按螺旋型递减打印数字方阵。

输入格式

输入为一个正整数n (1=<n<=20)。

输出格式

螺旋型递减顺序输出n行n列的数字方阵,每个数字占4个宽度,左对齐。

输入样例复制

在这里给出一组输入。例如:

4

输出样例复制

在这里给出相应的输出。例如:

10  9   8   7   
11  2   1   6   
12  3   4   5   
13  14  15  16  

#include<stdio.h>

int main()

{

    int n;

    scanf("%d",&n);

    int a[100][100];

    int m=n*n;

    int k=1;

    for(int i=n-1;i>=0;i--)

    {

        for(int j=n-k;j>=k-1;j--)

        {

            a[i][j]=m;

            m--;

        }

        for(int j=n-k-1;j>=k-1;j--)

        {

            a[j][n-i-1]=m;

            m--;

        }

        for(int j=k;j<n-k+1;j++)

        {

            a[n-1-i][j]=m;

            m--;

        }

        for(int j=k;j<n-k;j++)

        {

            a[j][i]=m;

            m--;

        }

        k++;

    }

    for(int i=0;i<n;i++)

    {

        for(int j=0;j<n;j++)

        {

            printf("%-4d",a[i][j]);

        }

        printf("\n");

    }

    return 0;

}

标签:输出,螺旋,int,编程,C语言,--,方阵,输入,1.24
From: https://blog.csdn.net/2401_88154394/article/details/144412380

相关文章

  • c语言编程1.23报数
    题目描述输入两个正整数n和m((1<m<n<=50)),有n个人围成一圈,按顺序从1到n编号。从第一个人开始报数,报数m的人退出圈子,下一个人从1开始重新报数,报数m的人退出圈子。如此循环,直到留下最后一个人。请按退出顺序输出退出圈子的人的编号,以及最后一个人的编号。提示:将......
  • C语言之初识数组存在的问题
        首先我们先了解数组的概念,所谓数组,简单来说数组就是一组相同元素的集合。是用来存放一组相同类型元素的存储形式。    但是我们在开始学数组的时候会存在一些问题或者说是疑问。    1.数组的下表是从‘0’开始,所以我们在访问数组的某个元素时,我......
  • 【Java编程】如何自定义一个类加载器,加载自己指定的类?
    在Java中,类加载器(ClassLoader)负责把字节码文件(.class文件)加载到JVM中,Java的类加载机制给我们提供了高度的灵活性。通常情况下,Java会用默认的类加载器去加载类,但如果想加载特定路径的类,或者加载特定格式的文件,就需要自己写一个类加载器。本文将带你一步步实现一个简单的自......
  • 转载:【AI系统】CUDA 编程模式
    前面的文章对AI芯片SIMD和SIMT计算本质进行了分析,结合英伟达CUDA实现对SIMD和SIMT进行了对比,本文将以英伟达GPU为例,讲解GPU的编程模型。GPU编程模型CUDA英伟达公司于2007年发布了CUDA,支持编程人员利用更为通用的方式对GPU进行编程,更好地发挥底层硬件强大......
  • 【入门】编程求解1+3+5+...+n
    描述编程求解下列式子的值:S=1+3+5+…+n输入描述输入一行,只有一个整数n(1<=n<=1000)输出描述输出只有一行(这意味着末尾有一个回车符号),包括1个整数。用例输入1 100用例输出1 2500来源简单循环#include<bits/stdc++.h>usingnamespacestd;intsum;......
  • 5.C语言-代码中的进制表示与转换
    八进制=三个二进制为一组十六进制=四个二进制为一组//进制转换intmain(){ //二进制:由0和1组成,在代码中以0b开头 inta=0b10; printf("%d",a); //十进制:由0~9组成,无需加前缀 intb=10; printf("%d",b); //八进制:由0~7组成,代码中以0开头 int......
  • C语言之三种循环高级
    (1.)无限循环定义循环永远停不下来(注意点:无限循环因为永远停不下来,所以下面不能再写其他的代码了)(2.)跳转控制语句定义在循环的过程当中,跳到其他语句上执行break不能单独书写,只能写在switch,或者是循环中,表示结束,跳出的意思题目:在1-100之间,找第一个既能被3,又能被5整除的数......
  • 转载:【AI系统】算子开发编程语言 Ascend C
    本文将深入探讨昇腾算子开发编程语言AscendC,这是一种专为昇腾AI处理器算子开发设计的编程语言,它原生支持C和C++标准规范,最大化匹配用户的开发习惯。AscendC通过多层接口抽象、自动并行计算、孪生调试等关键技术,极大提高算子开发效率,助力AI开发者低成本完成算子开发和模......
  • 转载:【AI系统】Ascend C 编程范式
    AI的发展日新月异,AI系统相关软件的更新迭代也是应接不暇,作为一篇讲授理论的文章,我们将尽可能地讨论编程范式背后的原理和思考,而少体现代码实现,以期让读者理解AscendC为何这样设计,进而随时轻松理解最新的AscendC算子的编写思路。本文将针对AscendC的编程范式进行详细讲......
  • 转载:【AI系统】芯片的编程体系
    本篇幅主要探讨SIMD和SIMT的主要区别与联系,SIMT与CUDA编程之间的关系,并且会讨论GPU在SIMT编程本质,SIMD、SIMT与DSA架构,DSA架构的主要形态。目前已经有大量的AI芯片研发上市,但是如何开发基于硬件的编译栈与编程体系,让开发者更好地使用AI芯片,更好的发挥AI芯片......