C语言 蛇形矩阵源程序写法

C语言 蛇形矩阵源程序写法,第1张

1   3  4

2   5

6。。。。

这是有规律的,1,2,3,4,5,6。。。。位置也有规律。程序有解释。所以我们可以

数组来实现。

程序和解释如下:

#include "stdioh"

void main()

{

    int a[20][20],i,j,c=1,x=1,n,s=0;

    printf("请输入n的值:\n");

    scanf("%d",&n);

    while(c<=n(n+1)/2)

    {

     for(i=s,j=0;i>=0,j<=s;i--,j++)

     {

     if(s%2!=0) a[i][j]=c++;//无论n值为多少,规律(奇偶性与递增递减之间的关系)不变。

     else a[j][i]=c++;

     }

     s++;

    }//此为左上部分。

    while(c<=nn)

    {

     for(i=x,j=s-1;i<=s-1,j>=x;i++,j--)

     {

     if(n%2==0)/这里因为n值的奇偶性影响了规律(奇偶性与递增递减之间的关系)

     所以要对n值得奇偶性进行判定/

     {

         if(x%2!=0) a[i][j]=c++;

         else  a[j][i]=c++;

     }

     else

     {

     if(x%2==0) a[i][j]=c++;

         else  a[j][i]=c++;

     }

     }

     x++;

    }//此为右下部分。

    for(i=0;i<n;i++)//输出二维数组a[n][n],输出蛇形矩阵

    {

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

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

     printf("\n");

    }

    

}

代码如下, 可以利用矩阵的乘方运算, 引入变量temp保存乘方的结果

for i=1:n

    temp=c^i;

    a(i)=btempd;

end

希望能帮到你, ^^

c++中一般使用一维数组来表示二维乃至更多维的矩阵。里面涉及到动态内存分配的问题

=

int n;

int matrix=new int[nn]; // 动态声明一个大小为nn的数组

for(int i =0;i<10;++i) //赋值 *** 作

matrix[i]=i+1;

这样matrix里面依次放着从1到9。

输出的时候只以每三个一个endl就行了。

结束的时候注意要注意释放空间

delete[] matrix;

用numpy库(你得自己安装这个库,科学计算经常用得着)

矩阵运算大大简化

from numpy import 

a = array([(1,2),(3,4)])

b = array([(4,3),(2,1)])

a + b

以上就是关于C语言 蛇形矩阵源程序写法全部的内容,包括:C语言 蛇形矩阵源程序写法、matlab 矩阵连乘程序如何写想在一个for循环里实现、用C++编写一段程序,输入n时,就输出一个二维矩阵,如何写新手求教育。等相关内容解答,如果想了解更多相关内容,可以关注我们,你们的支持是我们更新的动力!

欢迎分享,转载请注明来源:内存溢出

原文地址:https://54852.com/zz/10178171.html

(0)
打赏 微信扫一扫微信扫一扫 支付宝扫一扫支付宝扫一扫
上一篇 2023-05-06
下一篇2023-05-06

发表评论

登录后才能评论

评论列表(0条)

    保存