C语言,输入一个(1~20)的数n!得到n*n个数,以n*n矩阵顺时针输出!
来源:学生作业帮 编辑:作业帮 分类:综合作业 时间:2024/05/15 11:02:51
C语言,输入一个(1~20)的数n!得到n*n个数,以n*n矩阵顺时针输出!
方法很多,以下是按照各边的次序填充再输出:
#include<stdio.h>
int main( )
{
int i,j,a[100][100],n,k = 1;
printf("please input a number n:");
scanf("%d",&n);
for (i = 1; i <= n / 2; ++ i)
{
for (j = i; j <= n - i; ++ j) /* 左侧 */
a[i][j] = k ++;
for (j = i; j <= n - i; ++ j) /* 下方 */
a[j][n + 1 - i] = k ++;
for (j = n - i + 1; j >= i + 1; j = j - 1) /* 右侧 */
a[n + 1 - i][j] = k ++;
for (j = n - i + 1; j >= i + 1; j = j - 1) /* 上方 */
a[j][i] = k ++;
}
if (n % 2 == 1)
for (i = 1; i <= n; ++ i)
{
for (j = 1; j <= n; ++ j)
printf("%4d",a[i][j]);
printf("\n");
}
}
另外,虚机团上产品团购,超级便宜
#include<stdio.h>
int main( )
{
int i,j,a[100][100],n,k = 1;
printf("please input a number n:");
scanf("%d",&n);
for (i = 1; i <= n / 2; ++ i)
{
for (j = i; j <= n - i; ++ j) /* 左侧 */
a[i][j] = k ++;
for (j = i; j <= n - i; ++ j) /* 下方 */
a[j][n + 1 - i] = k ++;
for (j = n - i + 1; j >= i + 1; j = j - 1) /* 右侧 */
a[n + 1 - i][j] = k ++;
for (j = n - i + 1; j >= i + 1; j = j - 1) /* 上方 */
a[j][i] = k ++;
}
if (n % 2 == 1)
for (i = 1; i <= n; ++ i)
{
for (j = 1; j <= n; ++ j)
printf("%4d",a[i][j]);
printf("\n");
}
}
另外,虚机团上产品团购,超级便宜
C语言,输入一个(1~20)的数n!得到n*n个数,以n*n矩阵顺时针输出!
C语言请教高手,输入一个数字n,以该数字作为矩阵的大小,把1,2,3...n*n的数字按顺时螺旋输出.
c语言编程:输入n,输出n行n列的矩阵
C语言输出n*n的矩阵求非零个数n为正整数
C语言,输入一个整数n,然后输入n个数,计算并输出n个数中奇数之和
C语言 输入n并输入n个数,输出这n个数中的所有奇数的乘积
(C语言)输入一个正整数n,再输入n 个整数,输出这n个整数的最大值.
用C语言实现输入一个整数n,输出1-n的整数,去除含有9的数
请问怎么输出下面的图形,要用C语言设计一程序 n n n n n n n n n n n n n n n n
C语言中输入一个正整数n(1≤n≤200),输出所有的整数对,相乘的积等于n.例如:N=20
关于一个c语言程序 输入一个数n 输出 1+2+3+4+.+n=加到n的和
输入一个正整数n(1《=n《=6),再输入一个n行n列的矩阵,统计并输出该举证中非零元素的个数