自学内容网 自学内容网

【C#】使用Visual Studio创建Windows Forms应用程序计算对角线之和


使用Visual Studio创建Windows Forms应用程序计算对角线之和

大家好!今天,我将向你展示如何使用Visual Studio创建一个简单的Windows Forms应用程序,该程序可以计算一个二维数组两条对角线上元素的和。这不仅是一个有趣的编程练习,也是学习Windows Forms应用程序开发的好机会。

步骤 1: 创建新的Windows Forms应用程序项目

打开Visual Studio,创建一个新的Windows Forms应用程序项目。选择“Windows Forms App (.NET Framework)”作为项目类型,并为你的项目命名,例如“DiagonalSumApp”。

步骤 2: 设计窗体

在设计视图中,添加以下控件到你的窗体上:

  • 两个文本框(TextBox)用于输入行数和列数。
  • 一个按钮(Button)用于触发数组的初始化和计算。
  • 一个文本框(TextBox)用于显示数组。
  • 一个标签(Label)用于显示对角线之和。

记得为每个控件设置适当的属性,如NameText
在这里插入图片描述

步骤 3: 编写代码

双击按钮以生成点击事件处理方法,并替换自动生成的代码。你需要编写代码来初始化数组、计算对角线之和,并在界面上显示结果。

以下是完整的代码示例:

using System;
using System.Drawing;
using System.Windows.Forms;

namespace DiagonalSumApp
{
    public partial class Form1 : Form
    {
        private int n; // 定义数组的行数和列数
        private int[,] array; // 定义二维数组

        public Form1()
        {
            InitializeComponent();
        }

        private void btnCalculate_Click(object sender, EventArgs e)
        {
            try
            {
                n = Convert.ToInt32(txtRows.Text); // 从文本框获取行数
                if (n <= 0) throw new Exception("行数必须大于0");
                if (n != Convert.ToInt32(txtColumns.Text)) throw new Exception("行数和列数必须相等");
                
                array = new int[n, n]; // 初始化数组
                InitializeArray(); // 初始化数组
                // 显示数组
                txtArray.Text = "数组:" + Environment.NewLine;
                for (int i = 0; i < n; i++)
                {
                    for (int j = 0; j < n; j++)
                    {
                        txtArray.Text += array[i, j] + " ";
                    }
                    txtArray.Text += Environment.NewLine;
                }
                // 计算对角线元素之和
                int sum = CalculateDiagonalSum();
                // 显示结果
                lblSum.Text = "对角线之和: " + sum;
            }
            catch (Exception ex)
            {
                MessageBox.Show(ex.Message);
            }
        }

        private void InitializeArray()
        {
            Random rand = new Random();
            for (int i = 0; i < n; i++)
            {
                for (int j = 0; j < n; j++)
                {
                    array[i, j] = rand.Next(0, 100); // 随机初始化数组元素
                }
            }
        }

        private int CalculateDiagonalSum()
        {
            int sum = 0;
            // 计算主对角线元素之和
            for (int i = 0; i < n; i++)
            {
                sum += array[i, i];
            }
            // 计算副对角线元素之和
            for (int i = 0; i < n; i++)
            {
                sum += array[i, n - 1 - i];
            }
            // 如果n不是1,那么主副对角线有重复计算的元素,需要减去一次
            if (n > 1)
            {
                sum -= array[0, n - 1];
            }
            return sum;
        }
    }
}

步骤 4: 运行程序

点击“开始”按钮或按F5键运行你的程序。输入行数和列数,然后点击按钮,你将看到数组和对角线之和的计算结果。

步骤 5: 运行结果

在这里插入图片描述


原文地址:https://blog.csdn.net/weixin_49345320/article/details/142958546

免责声明:本站文章内容转载自网络资源,如本站内容侵犯了原著者的合法权益,可联系本站删除。更多内容请关注自学内容网(zxcms.com)!