Форум программистов
 

Восстановите пароль или Зарегистрируйтесь на форуме, о проблемах и с заказом рекламы пишите сюда - alarforum@yandex.ru, проверяйте папку спам!

Вернуться   Форум программистов > IT форум > Помощь студентам
Регистрация

Восстановить пароль

Купить рекламу на форуме - 42 тыс руб за месяц

Ответ
 
Опции темы
Старый 02.12.2009, 20:12   #1
euhenia
Пользователь
 
Регистрация: 11.11.2009
Сообщений: 18
По умолчанию удалить в строке лишние пробелы

вводим строку если подряд идут больше одного пробела то удалить их
помогите исправить ошибку
программа на си...
#include <stdio.h>
#include <conio.h>
void main()
{
char s1[256];
char s2[256];
clrscr();
int i=0,k=0;
printf("vvedite stroku");
scanf("%s",s1);
for(i=0;s1[i]!='\0';i++)
{
if (s1[i]==' ')
{
if ((s1[i+1]==' ') &&(s1[i+2]==' '))
{
s2[k]=' ';
i+=2;
}
}
else
{s2[k]=s1[i];
}
k++;
}
s2[k]='\0';
puts(s2);
getch();
}
euhenia вне форума Ответить с цитированием
Старый 02.12.2009, 20:29   #2
euhenia
Пользователь
 
Регистрация: 11.11.2009
Сообщений: 18
По умолчанию

помогите плиз очень срочно ...
euhenia вне форума Ответить с цитированием
Старый 02.12.2009, 20:55   #3
Secc
Пользователь
 
Аватар для Secc
 
Регистрация: 19.10.2009
Сообщений: 30
По умолчанию

Код:
//---------------------------------------------------------------------------
#include <iostream.h>
#include <windows.h>
#include <conio.h>
#include <string.h>
//------------------------------------------------------------------------------
void space_delete(char A[100],int x)
{
int i;
  for(i=0;i<x;i++)
    if(A[i]==' ')
      if(A[i+1]==' ')
          {
          for(int j=i;j<x;j++)
          A[j]=A[j+1];
          x--;
          i--;
          }
  for(int i=0;i<x;i++)
  cout<<A[i];
}
void main()
{
int n;
char Arr[100];
  cout<<"enter string\n";
  cin.get(Arr,100,'\n');
  n=strlen(Arr);
  space_delete(Arr,n);
getch();
}
//---------------------------------------------------------------------------
Спасибо! Кэп!!
FORZA LAZIO e NON MOLLARE MAI !!
Secc вне форума Ответить с цитированием
Старый 02.12.2009, 21:10   #4
euhenia
Пользователь
 
Регистрация: 11.11.2009
Сообщений: 18
По умолчанию

СПАСИБО!!!
euhenia вне форума Ответить с цитированием
Старый 02.12.2009, 21:55   #5
euhenia
Пользователь
 
Регистрация: 11.11.2009
Сообщений: 18
По умолчанию

а как то только на си это можно сделать?? А то я не понимаю с++
euhenia вне форума Ответить с цитированием
Ответ


Купить рекламу на форуме - 42 тыс руб за месяц

Опции темы


Похожие темы
Тема Автор Раздел Ответов Последнее сообщение
удалить лишние пробелы со строки так чтобы между символами осталось по одному пробелу delphi MASIK Общие вопросы Delphi 7 22.12.2010 18:23
Удалить лишние пробелы [C++] StudeHt Помощь студентам 2 20.05.2009 23:12
Удалить лишние пробелы Иван 883 Паскаль, Turbo Pascal, PascalABC.NET 5 06.04.2009 22:45
Помогите решить. Паскаль. Работа со строками. Удалить лишние пробелы. Комильфо Помощь студентам 3 10.11.2007 21:42
удалить лишние пробелы со строки так чтобы между символами осталось по одному пробелу c++ DimaG Общие вопросы C/C++ 1 01.11.2007 21:50