Форум программистов, компьютерный форум, киберфорум
C для начинающих
Войти
Регистрация
Восстановить пароль
 
Рейтинг 4.57/7: Рейтинг темы: голосов - 7, средняя оценка - 4.57
2 / 2 / 1
Регистрация: 21.09.2010
Сообщений: 128
1

Ввести с клавиатуры 5 строк и записать их в одну

11.05.2011, 20:00. Показов 1348. Ответов 14
Метки нет (Все метки)

Вообщем задание: Ввести с клавиатуры 5 строк и записать их в одну!

Сделал вот так вот

C
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
#include <stdio.h>
#include <stdlib.h>
#include <string.h>
void main (void)
{   
    char q [200];
    char w [200];
    char e [200];
    char r [200];
    char t [200];
    printf ("Vvedite stroku \n");
    gets(q);
    gets(w);
    gets(e);
    gets(r);
    gets(t);
    printf ("s=%s\n" ,q);
    printf ("g=%s\n" ,w);
    printf ("g=%s\n" ,e);
    printf ("g=%s\n" ,r);
    printf ("g=%s\n" ,t);
    printf("______\n");
    printf ("Resultat: %s %s %s %s %s" ,q,w,e,r,t);
return;
}
Помогите как сделать то же самое только через цикл for и функцию strcat
__________________
Помощь в написании контрольных, курсовых и дипломных работ здесь
0
Programming
Эксперт
94731 / 64177 / 26122
Регистрация: 12.04.2006
Сообщений: 116,782
11.05.2011, 20:00
Ответы с готовыми решениями:

Каким образом с клавиатуры можно ввести текст (последовательность строк), и преобразовать это все в одну строку
Прошу вас помочь мне разобраться с одним вопросом: каким образом с клавиатуры можно ввести текст...

Ввести с клавиатуры количество строк и ввести строки
Ввести с клавиатуры кол-во строк и ввести строки естественно тоже с клавиатуры. Собственно нужно...

Ввести с клавиатуры 10 целых чисел и распечатать их в одну строку
Ввести с клавиатуры 10 целых чисел и распечатать их в одну строку. При печати пропускать числа,...

Ввести n строк и записать их в массив, записать в лист
Необходимо ввести н строк и сделать многое с ними =) ( сортировку вывод и тд) застрял пока на вводе...

14
40 / 38 / 5
Регистрация: 22.01.2011
Сообщений: 670
11.05.2011, 21:08 2
C++
1
2
3
4
5
6
    char m[5][200], n[1000]; n[0]=0;
    int x;
    for(x=0;x<5;x++)
        {cin>>m[x]; strcat(n, m[x]);}
        
    cout<<n<<endl;
0
2 / 2 / 1
Регистрация: 21.09.2010
Сообщений: 128
16.05.2011, 22:09  [ТС] 3
Цитата Сообщение от dimon1984 Посмотреть сообщение
C++
1
2
3
4
5
6
    char m[5][200], n[1000]; n[0]=0;
    int x;
    for(x=0;x<5;x++)
        {cin>>m[x]; strcat(n, m[x]);}
        
    cout<<n<<endl;
а можно разталковать?
что за cin и вот эту строчку cout<<n<<endl

Добавлено через 34 минуты
Ввести с клавиатуры 5 строк и записать их в одну!

C
1
2
3
4
5
6
7
8
9
10
11
12
#include <stdio.h>
#include <stdlib.h>
#include <string.h>
char m[5][200];
char n[200];
        int x;
        void main (void){
        for(x=0; x<5; x++){
                strcat(n, m[x]);}
        printf("%s", n);
            return 0;
                }
кто исправит что не так?
0
5 / 5 / 0
Регистрация: 20.03.2011
Сообщений: 180
16.05.2011, 22:18 4
У тебя main не возвращает значение а ты пытаешься вернуть. убери 0 в return и все.
0
2 / 2 / 1
Регистрация: 21.09.2010
Сообщений: 128
16.05.2011, 22:21  [ТС] 5
Цитата Сообщение от .Malek. Посмотреть сообщение
У тебя main не возвращает значение а ты пытаешься вернуть. убери 0 в return и все.
так оно всё равно не выполняет то что нужно! просто появляется окно и всё любую кнопку нажимаю и оно исчезает а мне нужно 5 строк с клавиатуры ввести и что б оно их в одну потом записало!
0
5 / 5 / 0
Регистрация: 20.03.2011
Сообщений: 180
16.05.2011, 22:24 6
А это уже другой вопрос Могу подсказать только завтра а вообще подсказка прочитайте cin.get() в вашем случае должно быть три аргумента.
0
2 / 2 / 1
Регистрация: 21.09.2010
Сообщений: 128
16.05.2011, 22:26  [ТС] 7
Цитата Сообщение от .Malek. Посмотреть сообщение
А это уже другой вопрос
этот тоо вопрос меня больше всего интересует, так то оно что с нулем что без нуля запускается xD
0
539 / 444 / 162
Регистрация: 10.12.2009
Сообщений: 1,857
16.05.2011, 22:27 8
Делай все в цикле: вводи слова и плюсуй их в одну...
0
2 / 2 / 1
Регистрация: 21.09.2010
Сообщений: 128
16.05.2011, 22:28  [ТС] 9
Цитата Сообщение от Mиxaил Посмотреть сообщение
Делай все в цикле: вводи слова и плюсуй их в одну...
а можешь написать плз?
0
897 / 791 / 186
Регистрация: 21.02.2009
Сообщений: 1,722
16.05.2011, 22:38 10
dimon4ik2008, немного переделал
C
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
#include <stdio.h>
#include <stdlib.h>
#include <string.h>
#include <conio.h>
int main (void)
{
  char m[5][200];
  char n[200]="";
  int x;
   for(x=0; x<5; x++)
      {
         printf("Enter string %d -> ",x+1);
         scanf("%s",&m[x]);
         strcat(n, m[x]);
      }
         puts(n);
  getch();
  return 0;
 }
1
2 / 2 / 1
Регистрация: 21.09.2010
Сообщений: 128
16.05.2011, 22:43  [ТС] 11
Цитата Сообщение от MILAN Посмотреть сообщение
dimon4ik2008, немного переделал
C
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
#include <stdio.h>
#include <stdlib.h>
#include <string.h>
#include <conio.h>
int main (void)
{
  char m[5][200];
  char n[200]="";
  int x;
   for(x=0; x<5; x++)
      {
         printf("Enter string %d -> ",x+1);
         scanf("%s",&m[x]);
         strcat(n, m[x]);
      }
         puts(n);
  getch();
  return 0;
 }

ооо...спасибо, что вот эти кавычки значат? char n[200]=""
0
897 / 791 / 186
Регистрация: 21.02.2009
Сообщений: 1,722
16.05.2011, 22:44 12
Цитата Сообщение от dimon4ik2008 Посмотреть сообщение
ооо...спасибо, что вот эти кавычки значат?
Инициалиация массива.
0
2 / 2 / 1
Регистрация: 21.09.2010
Сообщений: 128
16.05.2011, 22:46  [ТС] 13
Цитата Сообщение от MILAN Посмотреть сообщение
Инициалиация массива.
а вот здесь значек & для чего? scanf("%s",&m[x]);
0
897 / 791 / 186
Регистрация: 21.02.2009
Сообщений: 1,722
16.05.2011, 22:49 14
Цитата Сообщение от dimon4ik2008 Посмотреть сообщение
а вот здесь значек & для чего?
Амперсенд значит взятие адреса, то есть запись строки в массив m[x].

Не по теме:

Советую почитать немного литературу!!!

0
2 / 2 / 1
Регистрация: 21.09.2010
Сообщений: 128
16.05.2011, 22:53  [ТС] 15
Цитата Сообщение от MILAN Посмотреть сообщение
Амперсенд значит взятие адреса, то есть запись строки в массив m[x].

Не по теме:

Советую почитать немного литературу!!!

да уж не помешало бы )))
0
IT_Exp
Эксперт
87844 / 49110 / 22898
Регистрация: 17.06.2006
Сообщений: 92,604
16.05.2011, 22:53

Одну строку инициализировать в программе, другую - ввести с клавиатуры; соединить их содержимое
Здравствуйте, помогите пожалуйста с такой задачкой, не могу разобраться как её решить. Одну...

Ввести одну из строк символьных данных
Ввести одну из строк символьных данных: &quot;Ананьев&quot;, &quot;Стерехов&quot;, &quot;Юденков&quot;, &quot;Лебедев&quot;,...

Одну строку инициализировать в программе, другую-ввести с клавиатуры. Сравнить данные строки по длине.
Помогите пожалуйса написаль код программы, скоро сессия, а работа не сдана, потому что я не могу её...

Как ввести массив строк с клавиатуры?
как сделать чтоб вводить массив строк с клавиатуры? // Lab13M.cpp: определяет точку входа для...


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

Или воспользуйтесь поиском по форуму:
15
Ответ Создать тему
Опции темы

КиберФорум - форум программистов, компьютерный форум, программирование
Powered by vBulletin
Copyright ©2000 - 2022, CyberForum.ru