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

Вывести на консоль информацию, хранящуюся в массиве структур, заданным образом - C++

Восстановить пароль Регистрация
 
Линка
0 / 0 / 0
Регистрация: 08.11.2010
Сообщений: 17
09.04.2011, 20:25     Вывести на консоль информацию, хранящуюся в массиве структур, заданным образом #1
Дана информация о пяти студентах. Запись имеет вид: фамилия, год рождения, факультет. Вывести данные о студентах по факультетам.
Описание структуры вроде осилила, но мне нужен цикл, для вывода данных, помогите, пожалуйста))
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
#include <vcl.h>
#include <stdio.h>
#include <conio.h>
#include <string.h>
#define n 5
#pragma hdrstop
 
//---------------------------------------------------------------------------
 
#pragma argsused
int main(int argc, char* argv[])
{int i, k;
    {  struct student {
    char *name[20];
    char *fakultet[15];
    char *data[9];} t;
    struct student m[n];  //объявление массива структур m[n]
    char a[5]; //Факультет
  clrscr();
    printf("\n Vvedite informasiy o studentah \n");
        for (i=0;i<n;i++)
  {   printf("\n  familiya , god, facultet :  ");
      scanf("%s %s %s",t.name,t.fakultet,t.data); //Заполнение информацией структуры t
      m[i]=t; //Присвоение i-му элементу массива структуры t целиком
  }
 
   printf("\n Vvedite facultet :  ");
  scanf("%s",a);
  for(i=0; i<n; i++)
  //тело цикла не получается((
 
   getch();}
    return 0;}
Similar
Эксперт
41792 / 34177 / 6122
Регистрация: 12.04.2006
Сообщений: 57,940
09.04.2011, 20:25     Вывести на консоль информацию, хранящуюся в массиве структур, заданным образом
Посмотрите здесь:

C++ Вывести на консоль информацию, хранящуюся в массиве структур, заданным образом
C++ на С++ вывести информацию о учащихся, занимающихся заданным видом спорта
Вывести элементы массива заданным образом C++
В случайным образом заполненном массиве найти и вывести на экран числа, повторяющиеся два и более раз C++
C++ Вывести на консоль true, если точка принадлежит заданным областям, и false - в противном случае
После регистрации реклама в сообщениях будет скрыта и будут доступны все возможности форума.
Jupiter
Каратель
Эксперт C++
6542 / 3962 / 226
Регистрация: 26.03.2010
Сообщений: 9,273
Записей в блоге: 1
Завершенные тесты: 2
09.04.2011, 20:29     Вывести на консоль информацию, хранящуюся в массиве структур, заданным образом #2
C
1
2
3
4
for(i=0; i<n; i++)  
{
    printf("%s\t%s\t%s\n", m[i].name, m[i].data m[i].fakultet)
}
Линка
0 / 0 / 0
Регистрация: 08.11.2010
Сообщений: 17
09.04.2011, 20:38  [ТС]     Вывести на консоль информацию, хранящуюся в массиве структур, заданным образом #3
Он выдает все данные, а не одного факультета( Вот скриншот:
http://imglink.ru/show-image.php?id=...ff1d7cc5bfe85d
Jupiter
Каратель
Эксперт C++
6542 / 3962 / 226
Регистрация: 26.03.2010
Сообщений: 9,273
Записей в блоге: 1
Завершенные тесты: 2
09.04.2011, 20:42     Вывести на консоль информацию, хранящуюся в массиве структур, заданным образом #4
Цитата Сообщение от Линка Посмотреть сообщение
но мне нужен цикл, для вывода данных, помогите, пожалуйста))
то что вы просили то и написал

тогда так:
C
1
2
3
4
5
6
7
8
9
#include <string.h>
//
printf("\n Vvedite facultet :  ");
  scanf("%s",a);
for(i=0; i<n; i++)  
{
     if(strcmp(a, m[i].fakultet) == 0)
        printf("%s\t%s\t%s\n", m[i].name, m[i].data m[i].fakultet)
}
vitaska
 Аватар для vitaska
83 / 83 / 2
Регистрация: 04.02.2010
Сообщений: 162
09.04.2011, 20:43     Вывести на консоль информацию, хранящуюся в массиве структур, заданным образом #5
чуток опоздал)
C
1
2
3
4
5
for(i=0; i<n; i++)  
{
    if(!strcmp(m[i].fakultet, a))
        printf("%s\t%s\t%s\n", m[i].name, m[i].data m[i].fakultet);
}
Линка
0 / 0 / 0
Регистрация: 08.11.2010
Сообщений: 17
09.04.2011, 21:18  [ТС]     Вывести на консоль информацию, хранящуюся в массиве структур, заданным образом #6
Всем спасибо))

Добавлено через 17 минут
Черт! Компилятор на строку с условием ошибку выдает(( cannot convert char** to const char
MoreAnswers
Эксперт
37091 / 29110 / 5898
Регистрация: 17.06.2006
Сообщений: 43,301
09.04.2011, 21:54     Вывести на консоль информацию, хранящуюся в массиве структур, заданным образом
Еще ссылки по теме:

Реализовать функцию поиска по заданному полю в массиве структур "Info", содержащих информацию о жителях города C++
C++ Массив структур "Музыкальная школа": вывести информацию по ученикам, играющим на заданном инструменте
Вывести информацию о студенте из списка структур C++

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

Или воспользуйтесь поиском по форуму:
vitaska
 Аватар для vitaska
83 / 83 / 2
Регистрация: 04.02.2010
Сообщений: 162
09.04.2011, 21:54     Вывести на консоль информацию, хранящуюся в массиве структур, заданным образом #7
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
#include <stdio.h>
#include <conio.h>
#include <string.h>
 
#define n 5
#pragma hdrstop
 
struct student {
    char name[20];
    char fakultet[15];
    char data[9];
} t;
//---------------------------------------------------------------------------
 
#pragma argsused
int main(int argc, char* argv[])
{
    int i;
    struct student m[n];  //объявление массива структур m[n]
    char a[15]; //Факультет
    clrscr();
    printf("\n Vvedite informasiy o studentah \n");
    for (i=0;i<n;i++)
    {
        printf("\n  familiya , god, facultet :  ");
        scanf("%s %s %s",t.name,t.fakultet,t.data); //Заполнение информацией структуры t
        m[i]=t; //Присвоение i-му элементу массива структуры t целиком
    }
 
    printf("\n Vvedite facultet :  ");
    scanf("%s",a);
    for(i=0; i<n; i++)
    {
        if(!strcmp(m[i].fakultet, a))
           printf("%s\t%s\t%s\n", m[i].name, m[i].data, m[i].fakultet);
    }
 
    getch();
 
    return 0;
}
Yandex
Объявления
09.04.2011, 21:54     Вывести на консоль информацию, хранящуюся в массиве структур, заданным образом
Ответ Создать тему
Опции темы

Текущее время: 18:36. Часовой пояс GMT +3.
КиберФорум - форум программистов, компьютерный форум, программирование
Powered by vBulletin® Version 3.8.9
Copyright ©2000 - 2016, vBulletin Solutions, Inc.
Рейтинг@Mail.ru