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

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

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

Восстановить пароль
Повторная активизация e-mail

Купить рекламу на форуме - 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