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

С++ для начинающих

Войти
Регистрация
Восстановить пароль
 
Ксюха21
0 / 0 / 0
Регистрация: 20.02.2011
Сообщений: 8
#1

Работа с файлами - C++

20.02.2011, 22:27. Просмотров 410. Ответов 1
Метки нет (Все метки)

Добрый день! Помогите, пожалуйста с задачей -- я в С++ совсем чайник. Просто хотя бы подскажите каким методом делать или пример какой-нибудь дайте.
Надо, чтобы программа принимала 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
#include <iostream>
#include <fstream>
#define MAX 105
using namespace std;
 int main( void )
{
    FILE *file;
    char fname[30];
    char result;
    cout << "Enter file name" << endl;
    gets (fname);
    file = fopen(fname,"r");
    if (file==0 && result != EOF) {
        cout << "Can't open file" << fname << endl;
        return 0;
    }
 
 int i=0;
     while ( i<MAX) {
         result = fgetc(file);
         cout << result;
         i++;
     }
     fclose (file);
 }
(Простите за все ужасные ошибки -- я действительно совсем новичок и делала все наобум) ->
А в файле должен быть список дел -- по одному на строку в формате:
<Начальное время> <Конечное время> <дело>. Пример:

12:30 16:40 работа
13:00 14:00 обед
16:30 17:00 встреча

А вывести программа должна в консоль время начала и конца пересечения событий и сами события, пример:

13:00 14:00 работа + обед
16:30 16:40 работа + встреча

(Я понимаю это как структуру, но не знаю как связать считывание с файла и работу со структурными элементами).
Помогите, пожалуйста, заранее огромное спасибо!!
0
Надоела реклама? Зарегистрируйтесь и она исчезнет полностью.
Similar
Эксперт
41792 / 34177 / 6122
Регистрация: 12.04.2006
Сообщений: 57,940
20.02.2011, 22:27
Здравствуйте! Я подобрал для вас темы с ответами на вопрос Работа с файлами (C++):

работа с файлами - C++
Здравствуйте. Хотел бы получить небольшую помощь Задача есть конфиг в котором написаны ip-адреса на разных строчках пример: ... ...

Работа с файлами - C++
Программа полностью рабочая. Кроме одного момента. #include &lt;conio.h&gt; #include &lt;stdio.h&gt; #include &lt;iostream&gt; #include &lt;clocale&gt;...

Работа с файлами - C++
Всем доброго времени суток) При написании программы возникла проблема.... не знаю как из одного файла в другой переписать некоторые...

Работа с файлами - C++
1) Преобразовать строку, заменяя каждую цифру соответствующим ей числом символов нижнего подчеркивания. Например: «3 слона» -&gt; «_ _ _слона»...

Си, работа с файлами - C++
помогите пожалуйста написать прогамму на Си, вот само задание: подготовьте текстовый файл, который состоит из строк, содержащих...

Работа с файлами - C++
создать файл, содержащие сведения о количестве изделий, собранных сборщиками цеха неделю. Каждая запись содержит поля: фамилия...

1
accept
4822 / 3243 / 165
Регистрация: 10.12.2008
Сообщений: 10,682
21.02.2011, 06:05 #2
Цитата Сообщение от Ксюха21
Надо, чтобы программа принимала 1 параметр командной строки -- имя файла
C
1
int main(int argc, char *argv[])
C
1
2
    if (argc > 1)
        printf("%s\n", argv[1]);
argv[1] можно передавать в fopen()

время можно переводить в секунды, чтобы удобнее сравнивать и вычислять продолжительность

похоже это пересечения
из этого
12:30 16:40 работа
13:00 14:00 обед
16:30 17:00 встреча

получилось это
13:00 14:00 работа + обед
16:30 16:40 работа + встреча


структура может быть такой
C
1
2
3
4
5
6
7
8
struct time {
    int hour, min;
};
 
struct arrang {
    struct time start, end;
    char name[NAMESIZE];
};
подводный камень - это пересечение всех дел, имена начнут заполнять name[] и оно может переполниться
в то же время нельзя делать громадный размер для name, так как структура arrang подразумевает хранение одного дела
на первых порах можно просто проверять массив на переполнение, на вторых же придётся делать динамическое выделение памяти

у тебя код по большей части сделан на C, на C++ он вообще по-другому делается (думаю, ты не поймёшь код на C++)
1
MoreAnswers
Эксперт
37091 / 29110 / 5898
Регистрация: 17.06.2006
Сообщений: 43,301
21.02.2011, 06:05
Привет! Вот еще темы с ответами:

Работа с файлами - C++
Доброго времени суток... Необходимо выполнить следующее задание: Найти сумму первых шести элементов массива и записать вместо...

Работа с файлами - C++
Создать файл, содержащий сведения о месячной заработной плате сотрудников отдела. Каждая запись содержит поля: фамилия со¬трудника,...

Работа с файлами - C++
Напишите пожалуйста программу ( с комментариями по возможности ) Информация об участниках спортивных соревнований содержит: ...

РАБОТА С ФАЙЛАМИ - C++
Пожалуйста объясните задачу, как её сделать? Создать текстовый файл с записями фиксированной длины. Файл содержит информацию об 10...


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

Или воспользуйтесь поиском по форуму:
2
Ответ Создать тему
Опции темы

КиберФорум - форум программистов, компьютерный форум, программирование
Powered by vBulletin® Version 3.8.9
Copyright ©2000 - 2017, vBulletin Solutions, Inc.
Рейтинг@Mail.ru