Форум программистов, компьютерный форум, киберфорум
С++ для начинающих
Войти
Регистрация
Восстановить пароль
Карта форума Темы раздела Блоги Сообщество Поиск Заказать работу  
 
Рейтинг 4.80/5: Рейтинг темы: голосов - 5, средняя оценка - 4.80
0 / 0 / 0
Регистрация: 13.12.2009
Сообщений: 31
1

Строки в С...

19.01.2010, 20:07. Показов 956. Ответов 18
Метки нет (Все метки)

Author24 — интернет-сервис помощи студентам
Вот в С разбираюсь со многим, а вот со строками......никак!!! Дан список из N человек в форме: Фамилия Имя Отчество. Выдать список в форме: Фамилия И.О.
Напишите, как это делается, я реально не врубаю......к сожалению
0
Programming
Эксперт
94731 / 64177 / 26122
Регистрация: 12.04.2006
Сообщений: 116,782
19.01.2010, 20:07
Ответы с готовыми решениями:

Даны три строки. Определить можно ли из символов третьей строки получить первую и вторую строки
Помогите пожалуйста! 1)Даны три строки. Определить можно ли из символов третьей строки получить...

Ввести строки и через n символов первой строки вставить вторую строку, и так до конца строки
Помогите исправить баг задача состоит в следующем :ввести строку и простроку тоесть две строки и...

Слить две строки, вставив символы одной строки между символами другой строки
Строка a из n символов лексикографически меньше строки b из n символов, если существует такой...

Сравнить строки, первый несовпадающий элемент строки-приемника записать в регистр AL, строки-источника - в DL
Помогите написать программу на ассемблерене совсем еще разобрался с этим задание: Ввести с...

18
135 / 69 / 12
Регистрация: 10.10.2009
Сообщений: 187
19.01.2010, 20:13 2
а здесь вообще через структуру ....

Добавлено через 58 секунд
создаете структуру с И.Ф.О. вносите в нее даные через цыкл и потом также выводите
0
0 / 0 / 0
Регистрация: 13.12.2009
Сообщений: 31
19.01.2010, 20:20  [ТС] 3
можно поподробнее.....я действительно слабо понимаю, о чнм речь
0
This party getting crazy!
78 / 64 / 1
Регистрация: 22.09.2009
Сообщений: 427
19.01.2010, 20:38 4
да уж...тут однозначно не строки. Здесь http://www.mir-koda.ru/full_leson_cpp.php?id=20 можно прочесть про сами структуры. Нужно создать структуру, ввод элементов структуры, и их реализацию, а после сделать запрос на нужный элемент.
0
0 / 0 / 0
Регистрация: 13.12.2009
Сообщений: 31
19.01.2010, 20:40  [ТС] 5
НУ НЕУЖЕЛИ ВСЕ ТАК СЛОЖНО_((((((
0
This party getting crazy!
78 / 64 / 1
Регистрация: 22.09.2009
Сообщений: 427
19.01.2010, 20:41 6
ну почему же. Всё довольно-таки просто, вся цель чтобы понять) я тоже думал, что сложно. а потом понравилось ^^
https://www.cyberforum.ru/cpp-... 86852.html вот здесь вы можете посматреть пример) что-то для себя найдёте, я уверен.
0
0 / 0 / 0
Регистрация: 13.12.2009
Сообщений: 31
19.01.2010, 20:49  [ТС] 7
я вообще новичок, итак еле еле с матрицами разобрался, а тут задание по класу "работа со строками" а теперь оказывается что это структуры, а сдавать послезавтра. Пойду выброшусь с окна.......

Добавлено через 4 минуты
Ни у кого нету подобной программы????
0
135 / 69 / 12
Регистрация: 10.10.2009
Сообщений: 187
19.01.2010, 20:49 8
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
26
27
28
struct names
{
 char name[15];
 char lname[25];
 char otch[20];
};
 
void main()
{
int n;names *s;
cout<<"Enter count of peoples:";
cin>>n;
 
for(int i=0;i<n;i++)
{
cin>>s[i].name;
cin>>s[i].lname;
cin>>s[i].otch;
}
 
for(i=0;i<n;i++)
{
cout<<s[i].name;
cout<<s[i].lname;
cout<<s[i].otch;
}
free(s);
}
1
0 / 0 / 0
Регистрация: 13.12.2009
Сообщений: 31
19.01.2010, 21:03  [ТС] 9
Я так понимаю, здесь библиотека iostream, да????
0
This party getting crazy!
78 / 64 / 1
Регистрация: 22.09.2009
Сообщений: 427
19.01.2010, 21:05 10
да, подключай.
0
0 / 0 / 0
Регистрация: 13.12.2009
Сообщений: 31
23.01.2010, 18:06  [ТС] 11
Выбрасиват при компиляции на вводе фамилии
и на выводе не выводит Фамилия И.О
0
Эксперт С++
2347 / 1720 / 148
Регистрация: 06.03.2009
Сообщений: 3,675
23.01.2010, 18:30 12
Romksuper,
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
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
#include <stdio.h>
#include <stdlib.h>
 
#define MAX_LENGHT 32
 
struct FullName{
  char surname [MAX_LENGHT];
  char name    [MAX_LENGHT];
  char lastname[MAX_LENGHT];
};
 
int main()
{
  int       n    = 0;
  FullName* list = NULL;
  int       i;
 
  printf("Number of people: ");
  scanf("%d", &n);
 
  list = (FullName*)malloc(sizeof(FullName) * n);
 
  for(i = 0; i < n; ++i){
    printf("Man %d:", i);
 
    printf("Surname: ");
    scanf ("%s", list[i].surname);
    
    printf("Name: ");
    scanf ("%s", list[i].name);
 
    printf("Lastname: ");
    scanf ("%s", list[i].lastname);
  }
 
  printf("\nList of people:\n");
 
  for(i = 0; i < n; ++i)
    printf("Man: %s %c. %c.\n", list[i].surname, list[i].name[0], list[i].lastname[0]);
 
  system("pause");
  
  return 0;
}
Компилятора Си под рукой нет, так что проверь.
0
Модератор
Эксперт PythonЭксперт JavaЭксперт CЭксперт С++
12458 / 7482 / 1753
Регистрация: 25.07.2009
Сообщений: 13,762
23.01.2010, 18:56 13
Romksuper, было уже
0
0 / 0 / 0
Регистрация: 13.12.2009
Сообщений: 31
23.01.2010, 23:30  [ТС] 14
easybudda, у меня компилятор борланд, а там не все, что на вижуале пойдет_))))) увы

Добавлено через 6 минут
CyBOSSeR, спасибо большое, обьясни суть следующих операторов:
C
1
#define MAX_LENGHT 32
C
1
system("pause");
C
1
FullName* list = NULL;
C
1
scanf ("%s", list[i].surname);
Я просто новичок в С, еще не понимаю некоторых вещей...
0
Модератор
Эксперт PythonЭксперт JavaЭксперт CЭксперт С++
12458 / 7482 / 1753
Регистрация: 25.07.2009
Сообщений: 13,762
23.01.2010, 23:36 15
Цитата Сообщение от Romksuper Посмотреть сообщение
у меня компилятор борланд
И про это много раз уже говорили. После последнего #include две строки вставьте:
C
1
2
#pragma hdrstop
#pragma argsused
и будет Вам счастье.
0
0 / 0 / 0
Регистрация: 13.12.2009
Сообщений: 31
23.01.2010, 23:43  [ТС] 16
а вчем разница? что эти оперы делают?
0
Эксперт С++
2347 / 1720 / 148
Регистрация: 06.03.2009
Сообщений: 3,675
24.01.2010, 00:26 17
Romksuper
C
1
#define MAX_LENGHT 32
Это макрос. Препроцессор (один из компонентов среды разработки), который запускается перед компиляцией, везде где в тексте программы встречается строка MAX_LENGHT, заменит ее на 32. Структура FullName после обработки исходника препроцессором примет следующий вид:
C
1
2
3
4
5
struct FullName{
  char surname [32];
  char name    [32];
  char lastname[32];
};
C
1
system("pause");
Приостановит выполнение программы до нажатия какой-либо клавиши с выводом сообщения "Для продолжения нажмите любую клавишу" на консоль. Если бы не было данного оператора, программа бы после выполнения сразу закрывалась и пользователь не успел бы увидеть результат.

C
1
FullName* list = NULL;
Объявление указателя на структуру (или массив структур) FullName и инициализация его пустым указателем NULL (указатель, который ни на что не указывает). Указатели это отдельная тема, которую лучше изучать по соответствующей литературе.

C
1
scanf ("%s", list[i].surname);
Общий смысл: считываем с консоли строку и записываем ее в list[i].surname.
Вообще функция scanf предназначена для считывания данных введенных с консоли.
Также советую обратится к литературе, приведу лишь пример:
C
1
2
3
4
5
6
7
8
9
int   int_number   = 0;
float float_number = 0.0f;
char  symbol       = '\0';
char  string[256];
 
scanf("%d", &int_number);   /* считываем целое число*/
scanf("%а", &float_number); /* считываем вещественное число*/
scanf("%с", &symbol);       /* считываем символ*/
scanf("%s", string);        /* считываем строку*/
1
0 / 0 / 0
Регистрация: 13.12.2009
Сообщений: 31
24.01.2010, 00:32  [ТС] 18
Меня на выводе в конце выбрасывает_(((((((
0
Эксперт С++
2347 / 1720 / 148
Регистрация: 06.03.2009
Сообщений: 3,675
24.01.2010, 01:27 19
Цитата Сообщение от Romksuper Посмотреть сообщение
Меня на выводе в конце выбрасывает_(((((((
Чей исходник брал и что означает выбрасывает?

Romksuper, вот чуть поправленный вариант (добавлено освобождение памяти и улучшен вывод):
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
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
#include <stdio.h>
#include <stdlib.h>
 
#define MAX_LENGHT 32
 
struct FullName{
  char surname [MAX_LENGHT];
  char name    [MAX_LENGHT];
  char lastname[MAX_LENGHT];
};
 
int main()
{
  int       n    = 0;
  FullName* list = NULL;
  int       i;
 
  printf("Number of people: ");
  scanf("%d", &n);
 
  list = (FullName*)malloc(sizeof(FullName) * n);
 
  for(i = 0; i < n; ++i){
    printf("*** Man %d ***\n", i + 1);
 
    printf("Surname: ");
    scanf ("%s", list[i].surname);
 
    printf("Name: ");
    scanf ("%s", list[i].name);
 
    printf("Lastname: ");
    scanf ("%s", list[i].lastname);
  }
 
  printf("\nList of people:\n");
 
  for(i = 0; i < n; ++i)
    printf("Man: %s %c. %c.\n", list[i].surname, list[i].name[0], list[i].lastname[0]);
 
  free(list);
 
  system("pause");
 
  return 0;
}
Никаких ошибок, только что проверил.

Результат во вложениях.
Миниатюры
Строки в С...  
0
24.01.2010, 01:27
IT_Exp
Эксперт
87844 / 49110 / 22898
Регистрация: 17.06.2006
Сообщений: 92,604
24.01.2010, 01:27
Помогаю со студенческими работами здесь

Определить длину строки. Если длина строки >6, удалить часть строки в { } скобках.
Ввести с клавиатуры строку символов. Признак окончания ввода строки – нажатие клавиши &quot;Ввод&quot;....

Сгенерировать две произвольные строки и определить, является ли какое-либо слово первой строки частью второй строки
Сгенерировать две произвольные строки и определить, является ли какое-либо слово первой строки...

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

Строки. Если в конце строки точка отсутствует, то найти слово, заканчивающееся точкой и перенести его в конец строки.
Дана строка, состоящая из слов и содержащая одну точку в конце одного из слов. Если в конце строки...


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

Или воспользуйтесь поиском по форуму:
19
Ответ Создать тему
КиберФорум - форум программистов, компьютерный форум, программирование
Powered by vBulletin
Copyright ©2000 - 2024, CyberForum.ru