main.cpp
来自「我做的一些C语言练习题,里面一共有76道题目,主要用到一些计算机常用的算法,如:」· C++ 代码 · 共 62 行
CPP
62 行
/************************************************************************
3. 打印一个 N*N 的方阵,N为每边 N=15 打印出下面图形
字符的个数(3<N<20), 要求最 TTTTTTTTTTTTTTT
外一层为"T", 第二层为"J", 从第三层 TJJJJJJJJJJJJJT
起每层依次打印数字 1,2,3,... TJ11111111111JT
(右图以N为15为例) TJ12222222221JT
TJ12333333321JT
TJ12344444321JT
TJ12345554321JT
TJ12345654321JT
TJ12345554321JT
TJ12344444321JT
TJ12333333321JT
TJ12222222221JT
TJ11111111111JT
TJJJJJJJJJJJJJT
TTTTTTTTTTTTTTT
***********************************************************************/
#include <stdio.h>
int step(int i, int j, int n)
{
int k = n/2;
if(i>k) i = n-i-1;
if(j>k) j = n-j-1;
return ((i>=j)?j:i)+1;
}
void print(int n)
{
int i,j,k;
for(i=0; i<n; i++)
{
for(j=0; j<n; j++)
{
k = step(i,j,n);
if(k==1)
{
printf("T");
}
else if(k==2)
{
printf("J");
}
else
{
printf("%d",k-2);
}
}
printf("\n");
}
}
void main()
{
print(15);
}
⌨️ 快捷键说明
复制代码Ctrl + C
搜索代码Ctrl + F
全屏模式F11
增大字号Ctrl + =
减小字号Ctrl + -
显示快捷键?