Вывести слова в алфавитном порядке - C#

Узнай цену своей работы

Формулировка задачи:

Доброго времени суток! Задача состоит в том, чтобы написать программу, которая получает на вход три слова, а на выходе выстраивает их в алфавитном порядке. Вот код:
using System;
using System.Collections.Generic;
using System.ComponentModel;
using System.Data;
using System.Drawing;
using System.Linq;
using System.Text;
using System.Threading.Tasks;
using System.Windows.Forms;
 
namespace Задание_3
{
    public partial class Form1 : Form
 
    {
        string s;

        public Form1()
        {
            InitializeComponent();
        }

        private void Form1_Load(object sender, EventArgs e)
        {
            
        }
 
        private void button1_Click(object sender, EventArgs e)
        {
            
            int ks = 3, n = 0;
            string[] MassivSlov = new string[n];
            MassivSlov = new string[ks];
            for (int k = 0; k < ks; k++)
            {
                MassivSlov[k] = textBox1.Text;
            }
 
            int x, y;
            string str = "";
            // сортировка Пузырьком
            for (x = 0; x < MassivSlov.Length - 1; x++)
            {
                for (y = x; y < MassivSlov.Length; y++) 
                {
                    if (String.Compare(MassivSlov[x], MassivSlov[y]) > 0)
                    {
                        str = MassivSlov[y];
                        MassivSlov[y] = MassivSlov[x];
                        MassivSlov[x] = str;
                    }
                }
            }
 
            for (x = 0; x < MassivSlov.Length; x++)
            {
                textBox2.Text = MassivSlov[x];
            }
 
        }
 
        private void textBox1_TextChanged(object sender, EventArgs e)
        {
            s = textBox1.Text;
        }
    }
}
На форме: два текстбокса и кнопка. Во второй текстбок должен выводиться результат, т.е. слова в алфавитном порядке, но на деле порядок слов не меняется. Подскажите, пожалуйста, в чем ошибка? Спасибо.

Решение задачи: «Вывести слова в алфавитном порядке»

textual
Листинг программы
private void button1_Click(object sender, EventArgs e)
{
    var words = textBox1.Text.Split(); // слова через пробел
    BubbleSort(words);
    textBox2.Text = string.Join(" ", words);
}
 
private void BubbleSort(string[] words)
{
    if (words == null || words.Length < 2)
        return;
 
    for (int i = 0; i < words.Length - 1; i++)
    {
        for (int j = i + 1; j < words.Length; j++)
        {
            if (string.Compare(words[i], words[j], StringComparison.Ordinal) > 0)
            {
                var temp = words[i];
                words[i] = words[j];
                words[j] = temp;
            }
        }
    }
}

ИИ поможет Вам:


  • решить любую задачу по программированию
  • объяснить код
  • расставить комментарии в коде
  • и т.д
Попробуйте бесплатно

Оцени полезность:

14   голосов , оценка 4.071 из 5
Похожие ответы