Форум программистов, компьютерный форум, киберфорум
Наши страницы
C для начинающих
Войти
Регистрация
Восстановить пароль
 
Genomee
0 / 0 / 4
Регистрация: 01.11.2015
Сообщений: 28
Завершенные тесты: 1
#1

Обработка файлов с информацией об автомобилях

22.06.2016, 16:30. Просмотров 182. Ответов 1
Метки нет (Все метки)

1)Разработать программу, которая должна в диалоговом режиме позволять:
а) создать файл, каждая запись которого содержит данные, тип которых задан в конкретной условии задачи;
б) открыть существующий файл;
в) закрыть файл;
г) проверить содержимое типизированного файла;
д) добавить запись в файл;
е) выйти из программы.
2)Определить все автомобили марки "газ" номера которых начинаются и заканчиваются на цифру три
Думал будут сложности с первой частью задания, но с ней я справился.
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
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
105
106
107
108
109
110
111
112
113
114
115
116
117
118
119
120
121
122
123
124
125
126
127
128
129
#include <stdio.h>
#include <conio.h>
#include <math.h>
 
FILE *fIn,*fSolution,*fWatch,*fAdd;
int f1=0,f2=0;
 
struct {
char mark;
int nomer;
}car[80];
 
void Action1()
     {char Name[80];
      if(!f1)
         printf("There are no open file to work with\nIf you want to make a file choose 5 in menu\nthen choose 2");
         else {printf("Print name of file you want to add something\n");
               scanf("%s",&Name);
               if(!(fSolution=fopen(Name,"w")))
                   printf("Error");
                   else  {printf("File is created\n");
 
                           while(!feof(fIn))
                              {
                          
                                
                             
                              }
                    
 
                          }
    
      }
 
 
 
 
     }
 
void Action2()
     {char Name[80];
      printf("Add name of file you want to open\n");
      scanf("%s",&Name);
      if(!(fIn=fopen(Name,"rt")))
        {printf("Error");
        }
      else {f1=1;
            printf("File is open");
           }
     }
 
void Action3()
     {
      if(f1)
         {fclose(fIn);
          f1=0;
          printf("\n Open file is closed\n");
         }
      if(f2)
         {fclose(fSolution);
          f2=0;
          printf("\nCreated file is closed\n");
         }
     }
 
void Action4()
     {char Name[80];
      struct point M;
            {printf("Add name of file you want to see\n");
             scanf("%s",Name);
              if(!(fWatch=fopen(Name,"r+")))
                {printf("Error");
                }
 
             while(!feof(fWatch))
                  {
                  }
            }
     }
 
void Action5()
     {char Name[80];
      int n,i;
      struct point M;
            {printf("Print name of file you want to add something\n");
             scanf("%s",Name);
             fAdd=fopen(Name,"a");
             printf("How much strings you want to add?");
             scanf("%d",&n);
           
 
            }
     
     }
 
void TypeOfAction(a)
    {
 
     while (a!=0)
     {printf("\nChoose what to do :");
      printf("\n1-To create a file with solution");
      printf("\n2-Open existing file");
      printf("\n3-Close file");
      printf("\n4-To see what is in file");
      printf("\n5-Add information to file");
      printf("\n0-Exit program\n");
      scanf("%d",&a);
      if( (a<0)||(a>5)  )
      printf("\nYou choose wrong acton,try again");
 
      switch(a)
             { case 1 :Action1(); break ;
               case 2 :Action2(); break ;
               case 3 :Action3(); break ;
               case 4 :Action4(); break ;
               case 5 :Action5(); break ;
               case 0 :break;
             }
 
 
     }
 
    }
 
int main()
    {int a=-1;
     TypeOfAction(a);
     return 0;
    }
Никак не могу сделать вторую часть, не знаю как ее вставить сюда хотя казалось бы самая простая часть задачи. Заранее спасибо всем кто поможет.

Заказываю контрольные, курсовые, дипломные и любые другие студенческие работы здесь.

0
Надоела реклама? Зарегистрируйтесь и она исчезнет полностью.
Similar
Эксперт
41792 / 34177 / 6122
Регистрация: 12.04.2006
Сообщений: 57,940
22.06.2016, 16:30
Ответы с готовыми решениями:

Создание и обработка файлов
Нужно решить задачу

Чтение и обработка файлов CSV
Доброго времени суток всем. Посмотрите пожалуйста задание. Разработать...

Обработка нескольких файлов в цикле
У меня вопрос. Можно ли в программе привязать к переменной файл, выполнять с...

Обработка бинарных файлов - исправить ошибку
Всем привет, вот прога с ошибкой (знаю где)! :wall: Задание: Составить...

Обработка файлов с числовыми данными функциями прямого доступа
Всем привет! :scratch: Ребят кому не сложно... Задание: Требования к...

1
Genomee
0 / 0 / 4
Регистрация: 01.11.2015
Сообщений: 28
Завершенные тесты: 1
23.06.2016, 22:36  [ТС] #2
Все еще не могу решить вопрос с первой функцией,как сделать так чтобы она проверяла созданый файл и записывала в новый только если mark == GAZ и первая и последняя чифра номера = 3?
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
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
105
106
107
108
109
110
111
112
113
114
115
116
117
118
119
120
121
122
123
124
125
126
127
128
129
130
131
132
133
134
135
136
137
138
139
140
141
142
143
144
145
146
147
148
149
150
151
152
153
#include <stdio.h>
#include <conio.h>
#include <math.h>
#include <malloc.h>
FILE *fIn,*fSolution,*fWatch,*fAdd;
int f1=0,f2=0;
struct car
    { char mark[80],vlasn[80],adr[80];
      int nomer,year;
    };
void Action1()
     {char Name[80];
      struct car *M;
      int n ,i,n0=20;
     M =(struct car*)calloc(n0,sizeof(struct car));
      if(!f1)
         printf("There are no open file to work with\nIf you want to make a file choose 5 in menu\nthen choose 2");
         else {printf("Print name of file you want to add something\n");
               scanf("%s",Name);
               if(!(fSolution=fopen(Name,"w")))
                {printf("Error");
                }
                else{printf("File is created\n");
                     while(!feof(fIn))
                         {
 
                         fscanf(fIn,"%s %s %s", M[n].mark,M[n].vlasn,M[n].adr);
                         fscanf (fIn,"%d %d", M[n].nomer, M[n].year);
                          n++;
                          if(n0-1<=n)
                            {n0+=1;
                             M=(struct car*)calloc(n0,sizeof(struct car));
                            }
                           for (i = 0; i < n; i++) 
                          if (M[n].nomer == 3)
                          {
                          fprintf (fSolution,"%d,",M[n].nomer);
                          }
 
                            }
                         }
 
                           }
                    }
void Action2()
     {char Name[80];
      printf("Add name of file you want to open\n");
      scanf("%s",&Name);
      if(!(fIn=fopen(Name,"rt")))
        {printf("Error");
        }
      else {f1=1;
            printf("File is open");
           }
     }
 
void Action3()
     {
      if((!f1)&&(!f2))
             printf("Sory,but there are no files to close\n");
      if(f1)
         {fclose(fIn);
          f1=0;
          printf("\n Open file is closed\n");
         }
      if(f2)
         {fclose(fSolution);
          f2=0;
          printf("\nCreated file is closed\n");
         }
     }
 
void Action4()
     {char Name[80];
      struct car M;
            {printf("Add name of file you want to see\n");
             scanf("%s",Name);
              if(!(fWatch=fopen(Name,"r")))
                {printf("Error");
                }
 
             while(!feof(fWatch))
                  {fscanf(fWatch,"%d",&M.nomer);
                   printf(" %d ",M.nomer);
                  }
             fclose(fWatch);
            }
     }
 
void Action5()
     {char Name[80];
      int n,i;
      struct car M;
            {printf("Print name of file you want to add something\n");
             scanf("%s",Name);
             fAdd=fopen(Name,"a");
             printf("How much strings  add?");
             scanf("%d",&n);
             for(i=0;i<n;i++)
                {
                 printf ("Enter mark:");
                 scanf ("%s", &M.mark);
                 printf ("Enter host:");
                 scanf ("%s", &M.vlasn);
                 printf ("Enter adress:");
                 scanf ("%s", &M.adr);
                 printf ("Enter nomer:");
                 scanf ("%d", &M.nomer);
                 printf ("Enter year:");
                 scanf ("%d", &M.year);
                 if(i==n-1)
                    fprintf(fAdd,"%s %s %s %d %d ",M.mark, M.vlasn, M.adr, M.nomer, M.year);
                    else fprintf(fAdd,"%s %s %s %d %d\n ",M.mark, M.vlasn, M.adr, M.nomer, M.year);
                }
 
            }
       fclose(fAdd);
     }
 
void TypeOfAction(a)
    {
 
     while (a!=0)
     {printf("\nChoose what to do :");
      printf("\n1-To create a file with solution");
      printf("\n2-Open existing file");
      printf("\n3-Close file");
      printf("\n4-To see what is in file");
      printf("\n5-Add information to file");
      printf("\n0-Exit program\n");
      scanf("%d",&a);
      if( (a<0)||(a>5)  )
      printf("\nYou choose wrong acton,try again");
 
      switch(a)
             { case 1 :Action1(); break ;
               case 2 :Action2(); break ;
               case 3 :Action3(); break ;
               case 4 :Action4(); break ;
               case 5 :Action5(); break ;
               case 0 :break;
             }
 
 
     }
 
    }
 
int main()
    {int a=-1;
     TypeOfAction(a);
     return 0;
    }
0
MoreAnswers
Эксперт
37091 / 29110 / 5898
Регистрация: 17.06.2006
Сообщений: 43,301
23.06.2016, 22:36

Составить программу формирования данных об автомобилях
Помогите составить программку: Составить программу формирования данных об...

Вывести сведения об автомобилях, возраст которых больше 10 лет
Составить программу, которая выводит сведения об автомобилях, возраст которых...

Обработка файлов с информацией о студентах
Написать программу обработки файла типа запись, содержащую следующие пункты...


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

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

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