Тема: Составление программ решения задач с использованием файла произвольного доступа. 


Мы поможем в написании ваших работ!



ЗНАЕТЕ ЛИ ВЫ?

Тема: Составление программ решения задач с использованием файла произвольного доступа.



Форма проведения: Решение задач.

Задание 1. Создать массив записей в соответствии с заданной структурой. Реализовать ввод и обработку записей, используя файлы записей. Все действия пользователя должны контролироваться и снабжаться осмысленными сообщениями. Результат (база данных) должен запоминаться тоже в файле и быть доступен для последующей (многократной) обработки.

Варианты заданий:

Варианты 1-5.

Предусмотреть вывод значений для полей элементов массива записей по следующим ключам: дате, предмету судебного разбирательства, названию фирмы-истца, названию фирмы-обвиняемого.

 

Запросы:

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

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

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

4. Определить, в каком году было больше всего дел, связанных с дискриминацией.

5. Определить фирму, по которой возбуждалось уголовное дело более 2-х раз.

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

Варианты заданий:

1. Дана строка S и текстовый файл. Добавить строку S в начало и конец файла.

2. Дан текстовый файл. Удалить из него первую и последнюю строку.

3. Дан текстовый файл, содержащий более трех строк. Удалить из него три последние строки.

4. Дано число k (< 10) и текстовый файл, содержащий более k строк. Создать новый текстовый файл, содержащий k последних строк исходного файла.

5. Дан текстовый файл. Удалить из него пустые строки.

Методические рекомендации по проведению СРСП.

Контрольный пример 1. Дан текстовый файл f; записать его в обратном порядке в файл g.

Контрольный пример 2. Дан символьный файл f; заменить в нем все точки и запятые плюсами и записать в файл g.

 

/* пример 1 */ #include <stdio.h> #include <string.h> main() { file *f, *g; char *s; f = fopen("f1.txt", "r"); g = fopen("f2.txt", "w"); while (!feof(f)) { fgets(s, 20, f); strrev(s); fputs(s,g); } fclose(f); fclose(g); return 0; } /* пример 2 */ #include <stdio.h> main() { FILE *f, *g; char с; f = fopen("f1.txt", "r"); g = fopen("f2.txt", "w"); while (!feof(f)) { c=fgetc(f); if (c=='.' || c==',') fputc(‘+’, g); else fputc(c, g); } fclose(f); fclose(g); return 0; }

 

Контрольный пример 3. Дан файл, содержащий целые числа. Найти сумму и произведение компонент файла.

Контрольный пример 4. Дан текстовый файл. Удалить из него все символы, кроме “.” и ”,”.

 

/* пример 3 */ #include <stdio.h> main(void) { FILE *f; int a, s=0, p=1; f = fopen("f.txt", "r"); while (!feof(f) { fscanf(f, "%d", &a); s+=a; p*=a; } fclose(f); printf("s = %d, p = %d", s, p); return 0; } /* пример 4 */ #include <stdio.h> #include <conio.h> main () { char c; FILE *f1,*f2; f1=fopen("f1.txt","r"); f2=fopen("f2.txt","w+"); while(!feof(f1)) { c=fgetc(f1); if ((c=='.')||(c==',')) fputc(c,f2); } fclose(f1); fclose(f2); getch(); return 0; }

 

Контрольный пример 5. Дан файл, содержащий сведения о сотрудниках фирмы: фамилия, имя, адрес, возраст, телефон, зарплата. Вывести сведения о сотрудниках чей возраст превышает 50 лет.

/* пример 5 */ #include <stdio.h> #include <conio.h> #define n 3 struct person { char fam[20],name[15], address[30]; int age,phone,salary; }; main () { struct person str_pr; int i; FILE *f; clrscr(); f=fopen("f.txt","w+"); for (i=0;i<n;i++) { printf("%i person\n",i+1); printf("Fam: "); scanf("%s",str_pr.fam); printf("Name: "); scanf("%s",str_pr.name); printf("Address: "); scanf("%s",str_pr.address); printf("Age: "); scanf("%i",&str_pr.age);   printf("Phone: "); scanf("%i",&str_pr.phone); printf("Salary: "); scanf("%i",&str_pr.salary); printf("\n"); fwrite(&str_pr, sizeof(str_pr), 1, f); } fclose(f); f=fopen("f.txt","r"); while (!feof(f)) { fread(&str_pr,sizeof(str_pr),1,f); if (str_pr.age>50) { printf("Fam: %s\n",str_pr.fam); printf("Name: %s\n",str_pr.name); printf("Address: %s\n",str_pr.address); printf("Age: %i\n",str_pr.age); printf("Phone: %i\n",str_pr.phone); printf("Salary: %i\n",str_pr.salary); }} fclose(f); getch(); return 0;}    

Задание № 12 (СРСП)

 

срок сдачи: 14 неделя,

(согласно Графику выполнения и сдачи СРС и Графику проведения и содержания СРСП)

Тема: Алгоритмизация графических построений.



Поделиться:


Последнее изменение этой страницы: 2016-12-30; просмотров: 203; Нарушение авторского права страницы; Мы поможем в написании вашей работы!

infopedia.su Все материалы представленные на сайте исключительно с целью ознакомления читателями и не преследуют коммерческих целей или нарушение авторских прав. Обратная связь - 18.222.184.162 (0.004 с.)