Форум программистов, компьютерный форум CyberForum.ru
Наши страницы

С++ для начинающих

Войти
Регистрация
Восстановить пароль
 
 
Рейтинг: Рейтинг темы: голосов - 35, средняя оценка - 5.00
ЛЁЛЯ
Сообщений: n/a
#1

Программа для ввода строки от блондинки - C++

02.06.2012, 21:24. Просмотров 4322. Ответов 32
Метки нет (Все метки)

Привет всем!
Вот решила начать изучать язык программирования С++, но не все пока получается...
Вот дали задание...написать программу, чтобы можно было вводить строку...
Если строка начинается с пробелов, то программа убирает эти пробелы...
Так чтобы строка начиналась с символов...

Ввод:
_ _ _hello_hello
Вывод:
hello_hello

_________

"_"=пробел
Similar
Эксперт
41792 / 34177 / 6122
Регистрация: 12.04.2006
Сообщений: 57,940
02.06.2012, 21:24
Здравствуйте! Я подобрал для вас темы с ответами на вопрос Программа для ввода строки от блондинки (C++):

Подскажите почему после первого cout программа не останавливается для ввода строки, а выводит второй cout - C++
Подскажите почему после первого cout программа не останавливается для ввода строки, а выводит второй cout. Это фрагмент со структурами: ...

После ввода первой строки программа дает ошибку и закрывается - C++
#include<iostream> #include<cstring> #include"stdio.h" using namespace std; struct strk{ char *a,*b; int c,d; }el; int...

Программа для ввода переменных пользователем - C++
Помогите пожалуйста , написать программу, что бы переменные вводились с клавиатуры (x,y,z) а) !x || !y && z б) y || (x && !y || z) в)...

Почему программа не отрывает поток для ввода данных? - C++
Всем привет! Программа описывает структуру для дробей, в которой хранятся соответственно числитель и знаменатель. В ходе выполнения...

Нужна программа для ввода текста в окно любого чата - C++
Доброго времени суток, хотел бы сделать программму для вывода текста в чат и отправки. Не судите строго.

Как можно бы создать метод для ввода размерности (т.е. для ввода private переменных n,m)? - C++
Как можно бы создать метод для ввода размерности (т.е. для ввода private переменных n,m)? ( что только я не пробывал: то переменные...

Надоела реклама? Зарегистрируйтесь и она исчезнет полностью.
Alexey
Сообщений: n/a
02.06.2012, 22:26 #2
действительно блондинка
ЛЁЛЯ
Сообщений: n/a
02.06.2012, 23:32 #3
Если ты такой умный, что мешает тебе написать такую плёвую программу???
Alexey
Сообщений: n/a
02.06.2012, 23:34 #4
не хочу чтобы блондинки размножались
ЛЁЛЯ
Сообщений: n/a
02.06.2012, 23:42 #5
Никто тебе не давал права мне хамить!!!
Special for you!
Блондинка участвует в конкурсе с призом в 1 млн. евро.
Ей задают такие вопросы:
1) Сколько длилась столетняя война?
а) 116 б) 99 в) 100 г) 150
Блондинка пропускает вопрос
2) В какой стране изобрели панамы?
а) Бразилия б) Чили в) Панама г) Эквадор
Блондинка просит помощи у студентов Университета
3) В каком месяце отмечается Октябрьская революция?
а) Январь б) Сентябрь с) Октябрь д) Hоябрь
Блондинка просит помощь у зала.
4) Как зовут короля Георга 6-го?
а) Альберт б) Георг с) Мануэль
Блондинка достает гадальные карты.
5) От какого животного происходит название Канарских островов?
а) Канарейка б) Кенгуру с) Тюлень г) Крыса
Блондинка выходит из игры.
Если ты считаешь себя умным (-ой) и посмеялся (-ась) над блондинкой, то почитай правильные ответы:
1) Столетняя война длилась 116 лет с 1337 по 1453 год.
2) Панамы изобрели в Эквадоре.
3) Октябрьская революция отмечается в ноябре.
4) Имя короля Георга - Альберт. Он поменял его в 1936 году.
5) Hазвание Канарских островов происходит от тюленя. Латинское название островов Insukaria Canaria означает остров тюленей.
Alexey
Сообщений: n/a
02.06.2012, 23:44 #6
милая, при чем тут цвет волос и c++?
ЛЁЛЯ
Сообщений: n/a
02.06.2012, 23:50 #7
При том, что ты решил меня оскорбить...
Я только начинаю изучать этот язык программирования и мне не все понятно... и это не повод, чтобы ты тут отпускал подобные комментарии!
Aniskov
0 / 0 / 0
Регистрация: 07.03.2010
Сообщений: 111
03.06.2012, 00:16 #8
Строку грузишь в массив char'ов.

char str[128];

gets(str); я не помню есть ли там еще параметры (ищи в справочнике).

дальше в цикле

int i = 0;

while(str[i]='
')
{
if(str[i]!=' ')
putc(str[i]);
i++;
}

Все, но за "орфографию" не отвечаю )
Думаю принцып понятен.
0
boombastik
7 / 7 / 0
Регистрация: 13.02.2007
Сообщений: 1,255
03.06.2012, 00:27 #9
Альтернативное решение, но в данном случае пробелы будут обрезаны не только при выводе на экран, но и в памяти. За синтаксис ручаюсь, было проверено и работает.

"Вот решила начать изучать язык программирования С++..." Хе-хе, ну-ну )))

Код
#include <IOSTREAM>

using namespace std;

int main()
{
// read string from user input
char input[50];

cout << "Input:" << endl;
cin.getline(input, 50);

// find first non-space character
int size = strlen(input);
int pos = 0;
while ((input[pos] == ' ') && (pos < size))
{
pos++;
}

// cut off spaces
//strcpy(input, &input[pos]);
for (int i = 0; i < size; i++)
{
input[i] = input[i + pos];
}

// write to output
cout << "Output:" << endl;
cout << input << endl;

// pause
char ch;
cin >> ch;

return 0;
}
Успехов,
Владимир
0
Alexey
Сообщений: n/a
03.06.2012, 00:31 #10
господа, я поражен что вы потакаете нахалам
если человек спрашивает написать за него задачу ввода-вывода, при этом говоря что он начинает изучать этот язык, то кроме как нахальством это не назовешь
boombastik
7 / 7 / 0
Регистрация: 13.02.2007
Сообщений: 1,255
03.06.2012, 00:36 #11
человеку, наверное, завтра нести работу на проверку преподавателю..
0
Alexey
Сообщений: n/a
03.06.2012, 00:38 #12
ну она ему также заявит, помогите Блондинке с оценкой
John Paramol
Сообщений: n/a
03.06.2012, 11:08 #13
проще так:
Код
#include <stdio.h>
int main(void)
{
  char B[1024], *pB = B;
  puts("IN: ");
  gets(B);
  puts("OUT: ");
  for(; *pB==' ' ++pB);
  puts(pB);
  getchar();
  return 0;
}
smalig, зачем так наезжать на новичка, лучше бы совет дал.
Может она крашеная...
Alexey
Сообщений: n/a
03.06.2012, 11:38 #14
судя по всему, нет
preved
Сообщений: n/a
04.06.2012, 19:26 #15
Код
#include <iostream>
#include <string>
#include <algorithm>

using namespace std;

basic_ostream<char, char_traits<char> >& operator << (basic_ostream<char, char_traits<char> >& os,
	const string& si)
{
	//return i;
	string::const_iterator ssci = si.begin();

	if(ssci == si.end())
		return os;
	else
        while((*ssci) == ' ') ssci++;
	while(ssci != si.end())
		os << *(ssci++);
	return os;
}


int main( )
{
	string ss(fgets((char*)calloc(0, 100), 99, stdin));
	cout << ss;
	return 0;
}
MoreAnswers
Эксперт
37091 / 29110 / 5898
Регистрация: 17.06.2006
Сообщений: 43,301
04.06.2012, 19:26
Привет! Вот еще темы с ответами:

Класс для динамических матриц. После ввода элементов матрицы программа аварийно закрывается - C++
В программе я создал класс, отвечающий за ввод и вывод динамической матрицы. Однако после ввода элементов матрицы программа аварийно...

Программа для поиска седловых точек матрицы перестала работать после добавления функции ввода - C++
есть программа для на поиска седловых точек матрицы (Максимальный элемент в рядке и максимальный в столбце одновременно), после ввода...

Написать собственный класс для ввода и вывода строки, подсчета количества символов в строке - C++
как написать собственный с++ класс для ввода и вывода строки, подсчета количества символов в строке

Программа для ввода и вывода фамилий и оценок студентов. Отберите тех, у которых сумма баллов вторая по вел - C++
Программа для ввода и вывода фамилий и оценок студентов. Отберите тех, у которых сумма баллов вторая по величине #include&lt;stdio.h&gt; ...


Искать еще темы с ответами

Или воспользуйтесь поиском по форуму:
Yandex
Объявления
04.06.2012, 19:26
Ответ Создать тему
Опции темы

КиберФорум - форум программистов, компьютерный форум, программирование
Powered by vBulletin® Version 3.8.9
Copyright ©2000 - 2017, vBulletin Solutions, Inc.
Рейтинг@Mail.ru