Удаление лишних пробелов в строке - C#
Формулировка задачи:
Привет всем! Есть задача, задание такое: "Cоставьте программу, которая будет вводить строку в переменную String. Удалите из нее все лишние пробелы, оставив между словами не более одного. Результат поместите в новую строку". Я смог ее реализовать таким образом, как показано в коде. Но преподаватель зарезал ее, сказав, что через подсчет символов не подходит решение. Поможете? Спасибо.
using System;
using System.Collections.Generic;
using System.Text;
namespace Control_Work_1_3
{
class Program
{
static void Main(string[] args)
{
Console.WriteLine("Введите строку:");
string s = Console.ReadLine();
int a = s.Length;
char[] ch = s.ToCharArray();
for (int i = 0; i < ch.Length; i++)
{
for (int j = 0; j < ch.Length; j++)
{
if (ch[i] != ch[j])
a++;
Console.Write("{0}", ch[i] + " ");
} }
Console.WriteLine("Различных символов = {0}", a);
Console.ReadLine();
s = s.Replace(" ", "");
int b = s.Length;
Console.WriteLine(s);
Console.WriteLine("Удалено {0} символов", a - b);
Console.ReadKey();
} } }Решение задачи: «Удаление лишних пробелов в строке»
textual
Листинг программы
string s1, s2, s3;
s1 = Console.ReadLine();
s3 = s1;
do
{
s2 = s3;
s3 = s2.Replace(" ", " ");
}
while (s2!=s3);
Console.WriteLine(s3);