Напечатать список людей, чье имя совпадает с именем, которое ввел пользователь - C (СИ) (75330)

Узнай цену своей работы

Формулировка задачи:

Задание: Объявить структуру, содержащую строки, соответствующие имени и фамилии человека. Создать массив из 10 таких структур, инициализировать их именами и фамилиями любых известных людей. Напечатать список людей, чье имя совпадает с именем, которое ввел пользователь. Код:
Листинг программы
  1. #include <stdio.h>
  2. #include <stdlib.h>
  3. #include <string.h>
  4.  
  5. void main()
  6. {
  7. struct imya
  8. {
  9. char name[20], cename[20];
  10. };
  11. imya t,b;
  12. t = {"Vasya", "Pupkin"};
  13. b = {"Petya","Tikovkin"};
  14. printf ("%s\n%s",t,b);
  15. getch();
  16. }
Меня сейчас интересует чисто проверка работы структуры (давно с ними не работал). К самому заданию вернусь чуть позже. Ошибка:
Листинг программы
  1. |6|warning: return type of 'main' is not 'int' [-Wmain]|
  2. ||In function 'main':|
  3. |12|error: unknown type name 'imya'|
  4. |13|error: expected expression before '{' token|
  5. |14|error: expected expression before '{' token|
  6. |15|warning: format '%s' expects argument of type 'char *', but argument 2 has type 'int' [-Wformat]|
  7. |15|warning: format '%s' expects argument of type 'char *', but argument 3 has type 'int' [-Wformat]|
  8. |16|warning: implicit declaration of function 'getch' [-Wimplicit-function-declaration]|
  9. ||=== Build finished: 3 errors, 4 warnings (0 minutes, 12 seconds) ===|
  10. |
Почему он не понимает, что 'imya' - это объявленная структура? Помогите разобраться. Интересует |12| - ошибка

Решение задачи: «Напечатать список людей, чье имя совпадает с именем, которое ввел пользователь»

textual
Листинг программы
  1. #include <stdio.h>
  2. #include <stdlib.h>
  3. #include <string.h>
  4.  
  5. struct imya {
  6.     char name[ 20 ], cename[ 20 ];
  7. };
  8.  
  9. int main( void ) {
  10.  
  11.     struct imya t, b; // везеде нужно тащить с собой слово struct при объявлении переменных типа imya
  12.     strcpy( t.name, "Vasya" ); //t = {"Vasya", "Pupkin"};
  13.     strcpy( t.cename, "Pupkin" );
  14.     strcpy( b.name, "Petya" ); // b = {"Petya","Tikovkin"};
  15.     strcpy( b.cename, "Tikovkin" );
  16.     printf( "%s %s\n", t.name, b.cename );
  17.  
  18.     return 0;
  19. }

ИИ поможет Вам:


  • решить любую задачу по программированию
  • объяснить код
  • расставить комментарии в коде
  • и т.д
Попробуйте бесплатно

Оцени полезность:

5   голосов , оценка 3.6 из 5

Нужна аналогичная работа?

Оформи быстрый заказ и узнай стоимость

Бесплатно
Оформите заказ и авторы начнут откликаться уже через 10 минут
Похожие ответы