Форум программистов
 

Восстановите пароль или Зарегистрируйтесь на форуме, о проблемах и с заказом рекламы пишите сюда - alarforum@yandex.ru, проверяйте папку спам!

Вернуться   Форум программистов > IT форум > Помощь студентам
Регистрация

Восстановить пароль
Повторная активизация e-mail

Купить рекламу на форуме - 42 тыс руб за месяц

Ответ
 
Опции темы Поиск в этой теме
Старый 05.05.2013, 18:04   #1
majuw
Пользователь
 
Регистрация: 04.04.2013
Сообщений: 77
По умолчанию Поиск на Си

Здраствуйте.Не могли б вы мне помочь в одной проблеме, вот есть поиск , выводит у файл ,но мне нужно сделать как в условии .Создать файл записей о лагере Алые паруса с полями фамилия, возраст ребенка, пол, название отряда, номер смены. Вывести на экран сведения о мальчиках второй смены.
Код:
#include "stdafx.h"
#include "string.h"
#define tabir "Spisok.txt"
#define n 1
struct Chervonivitrula
{char surname[20];
int vik;
char pol[20];
char zagon[20];
int zmina;
}child[n];
 void vvod()
{
 int i;
 for (i=0; i<n; i++)
  {
  printf("Enter data children\n");
  printf("Enter surname:\n");
  scanf("%s", child[i].surname);
  printf("Enter vik:\n");
  scanf("%d", &child[i].vik);
  printf("Enter pol:\n");
  scanf("%s", &child[i].pol); 
  printf("Enter name zagon:\n");
  scanf("%s", child[i].zagon);
  printf("Enter zmina:\n");
  scanf("%d", &child[i].zmina);
  printf("\n");
  }
}

void search() 
 {
 int z;
 FILE *fp;
 fp = fopen(tabir,"a");
 for(z=0;z<n;z++)
 { 
 if ((child[z].zmina == 2)&&(strcmp(child[z].pol,"man")==0)) 
 fprintf(fp,"%s %d %s %s %d\n\n",child[z].surname,child[z].vik,child[z].pol,child[z].zagon,child[z].zmina);
 }
 fclose(fp);
 }


int main(void)
 {
 vvod();
 FILE *fp;
 fp = fopen(tabir,"w");
 fprintf(fp,"Surname Vik Pol Zagon Zmina\n");
 fclose(fp);
 search();
 return 0;
 }
majuw вне форума Ответить с цитированием
Старый 05.05.2013, 22:00   #2
majuw
Пользователь
 
Регистрация: 04.04.2013
Сообщений: 77
По умолчанию

Что никто не может помочь?
majuw вне форума Ответить с цитированием
Старый 05.05.2013, 22:10   #3
Stilet
Белик Виталий :)
Старожил
 
Аватар для Stilet
 
Регистрация: 23.07.2007
Сообщений: 57,097
По умолчанию

Я могу.
Код:
#include "stdafx.h"
#include "string.h"
#define tabir "Spisok.txt"
#define n 1
struct Chervonivitrula
{char surname[20];
int vik;
char pol[20];
char zagon[20];
int zmina;
}child[n];

FILE *fp;

 void vvod()
{
 int i;
 for (i=0; i<n; i++)
  {
  printf("Enter data children\n");
  printf("Enter surname:\n");
  scanf("%s", child[i].surname);
  printf("Enter vik:\n");
  scanf("%d", &child[i].vik);
  printf("Enter pol:\n");
  scanf("%s", &child[i].pol); 
  printf("Enter name zagon:\n");
  scanf("%s", child[i].zagon);
  printf("Enter zmina:\n");
  scanf("%d", &child[i].zmina);
  printf("\n");
  }
//Создать файл записей
 fp = fopen(tabir,"w");
 fwrite(&child[0],sizeof(Chervonivitrula),n,fp);
 fclose(fp);
}

void search() 
 {
 int z;

//Вывести на экран сведения о мальчиках второй смены. 
 fp = fopen(tabir,"r");
 fread(&child[0],sizeof(Chervonivitrula),n,fp);
 fclose(fp);
 
 for(z=0;z<n;z++)
 { 
 if ((child[z].zmina == 2)&&(strcmp(child[z].pol,"man")==0)) 
 printf(,"%s %d %s %s %d\n\n",
   child[z].surname,child[z].vik,child[z].pol,child[z].zagon,child[z].zmina);
 }
 }


int main(void)
 {
 vvod();
 search();
 system("pause");
 return 0;
 }
Изменения понятны?
I'm learning to live...
Stilet вне форума Ответить с цитированием
Старый 05.05.2013, 22:47   #4
majuw
Пользователь
 
Регистрация: 04.04.2013
Сообщений: 77
По умолчанию

Да огромное вам спасибо...
majuw вне форума Ответить с цитированием
Старый 05.05.2013, 22:56   #5
majuw
Пользователь
 
Регистрация: 04.04.2013
Сообщений: 77
По умолчанию

Только у файл записывает непонятно что....
majuw вне форума Ответить с цитированием
Старый 05.05.2013, 22:57   #6
Stilet
Белик Виталий :)
Старожил
 
Аватар для Stilet
 
Регистрация: 23.07.2007
Сообщений: 57,097
По умолчанию

На здоровье.
Цитата:
у файл записывает непонятно что
Файл создается типизированный. Записывается образ массива точка-в-точку. Так легче записывать и считывать данные.
I'm learning to live...
Stilet вне форума Ответить с цитированием
Старый 05.05.2013, 23:00   #7
majuw
Пользователь
 
Регистрация: 04.04.2013
Сообщений: 77
По умолчанию

ага спасибо.
majuw вне форума Ответить с цитированием
Ответ


Купить рекламу на форуме - 42 тыс руб за месяц



Похожие темы
Тема Автор Раздел Ответов Последнее сообщение
Поиск на c Алексей_ЕА Помощь студентам 0 31.01.2012 20:14
Поиск TotKogoNet Microsoft Office Excel 5 17.05.2011 18:15
Поиск в БД ->@LEX<- БД в Delphi 4 16.05.2011 11:50
Поиск Яр|/||< (^_^) Общие вопросы Delphi 9 24.06.2009 09:37
Поиск StartMis Общие вопросы Delphi 5 26.08.2008 13:48