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

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

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

Задание: Объявить структуру, содержащую строки, соответствующие имени и фамилии человека. Создать массив из 10 таких структур, инициализировать их именами и фамилиями любых известных людей. Напечатать список людей, чье имя совпадает с именем, которое ввел пользователь. Код:
#include <stdio.h>
#include <stdlib.h>
#include <string.h>

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

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

textual
Листинг программы
#include <stdio.h>
#include <stdlib.h>
#include <string.h>
 
struct imya {
    char name[ 20 ], cename[ 20 ];
};
 
int main( void ) {
 
    struct imya t, b; // везеде нужно тащить с собой слово struct при объявлении переменных типа imya
    strcpy( t.name, "Vasya" ); //t = {"Vasya", "Pupkin"};
    strcpy( t.cename, "Pupkin" );
    strcpy( b.name, "Petya" ); // b = {"Petya","Tikovkin"};
    strcpy( b.cename, "Tikovkin" );
    printf( "%s %s\n", t.name, b.cename );
 
    return 0;
}

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


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

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

5   голосов , оценка 3.6 из 5
Похожие ответы