用数组实现矩阵乘法

刚开始学c#,下面列出用数组实现矩阵乘法碰到的问题。

1、如何运行c#程序

1)新建一个控制台应用程序项目

2)在该项目上右键新建类

3)在类中添加逻辑代码

示例:

using System;
using System.Collections.Generic;
using System.Text;

namespace ConsoleApplication1
{
    class Program
    {
        static void Main(string[] args)
        {
            Console.WriteLine("Hello World");
            Console.ReadKey();
        }
    }
}

4)点击运行即可

示例结果:

2、变量格式化输出

参见连接:http://www.cnblogs.com/BeginnerClassroom/archive/2009/10/15/1583787.html

3、用数组实现矩阵乘法

废话不多说,直接上示例。

示例:

using System;
using System.Collections.Generic;
using System.Text;

/// <summary>
/// [功能描述: 用数组实现矩阵乘法:
/// 1、声明一个2行3列的两维数组,用于存放矩阵A;
/// 2、声明一个3行4列的两维数组,用于存放矩阵B
/// 3、声明一个2行4列的两维数组,用于存放矩阵A和矩阵B的乘积
/// ]<br></br>
/// [创 建 者: XXX]<br></br>
/// [创建时间: 2017-08-28]<br></br>
/// <修改记录 
///        修改人='' 
///        修改时间='yyyy-mm-dd' 
///        修改目的=''
///        修改描述=''
///  />
/// </summary>
namespace ConsoleApplication1
{
    class MultiplyByArry
    {
        public MultiplyByArry()
        {
            Active();
        }

        /// <summary>
        /// 说明:矩阵乘法
        /// </summary>
        /// <param name=""></param>
        /// <returns></returns>
        /// <remarks>2017-08-28</remarks>
        private void Active()
        {
            int[,] A = new int[2, 3];
            int[,] B = new int[3, 4];
            int[,] C = new int[2, 4];

            //初始化数组
            int count = 1;
            for (int i = 0; i < 2; i++)
            {
                for (int j = 0; j < 3; j++)
                {
                    A[i, j] = count;
                    count++;
                }
            }
            count = 1;
            for (int i = 0; i < 3; i++)
            {
                for (int j = 0; j < 4; j++)
                {
                    B[i, j] = count;
                    count++;
                }
            }

            //数组乘法逻辑运算
            int sum = 0;
            int multiple = 0;
            for (int i = 0; i < 2; i++)
            {
                for (int j = 0; j < 4; j++)
                {
                    for (int k = 0; k < 3; k++) //矩阵共同点
                    {
                        multiple = A[i, k] * B[k, j];
                        sum += multiple;
                    }
                    C[i, j] = sum;
                    sum = 0;
                }
            }

            //打印数组
            Console.WriteLine("A数组");
            for (int i = 0; i < 2; i++)
            {
                for (int j = 0; j < 3; j++)
                {
                    Console.Write("{0}, ", A[i, j]);
                }
                Console.WriteLine();
            }
            Console.WriteLine("
B数组");
            for (int i = 0; i < 3; i++)
            {
                for (int j = 0; j < 4; j++)
                {
                    Console.Write("{0}, ", B[i, j]);
                }
                Console.WriteLine();
            }
            Console.WriteLine("
结果数组");
            for (int i = 0; i < 2; i++)
            {
                for (int j = 0; j < 4; j++)
                {
                    Console.Write("{0}, ", C[i, j]);
                }
                Console.WriteLine();
            }
        }
    }
}

结果:

4、小结

我之间一直学的是Java,首次接触到c#,很多地方都不一样,比如命名规则等,但是只要懂了一门语言其它就是换汤不换药了,肯下功夫都可以学会的。

原文地址:https://www.cnblogs.com/chenhailing/p/7444699.html