Головна Головна -> Інше українською -> Інформатика, комп'ютери, програмування -> Сформувати файл “ЕХ”, що містить відомості про експорт товарів

Сформувати файл “ЕХ”, що містить відомості про експорт товарів

Назва:
Сформувати файл “ЕХ”, що містить відомості про експорт товарів
Тип:
Інше
Мова:
Українська
Розмiр:
1,91 KB
Завантажень:
497
Оцінка:
 
поточна оцінка 5.0


Скачати цю роботу безкоштовно
Пролистати роботу: 1  2 
Завдання: Сформувати файл “ЕХ”, що містить відомості про експорт товарів такого зразка: порядковий номер запису, найменування, країна, обсяг поставок і вартість поставок. Переписати в файл “ЕХР” назви країн, експорт до яких перевищує 10 найменувань, і загальну вартість таких поставок. Вивести цю інформацію по бажанні користувача на екран. Забезпечити можливість поповнення файлу “ЕХ” з клавіатури, а також вилучення обраних по порядковому номеру записів. Після модифікації файлу “ЕХ” таблиця, яка виводиться на екран і файл “ЕХР” повинні оновлюватись автоматично. Забезпечити можливість відновлення попередньої версії модифікованого файлу.
#include <conio.h>
#include <stdio.h>
#include <string.h>
struct stItem
{
char sName[16];
char sCountry[16];
int iCount;
int iSum;
stItem *next;
};
struct stItem *first,*rob;
int records;
void addrecord()
{
char string[100];
int i;
char q;
clrscr();
printf("\nНазва: ");
scanf("%s",string);
strncpy(rob->sName,string,15);
printf("Країна: ");
scanf("%s",string);
strncpy(rob->sCountry,string,15);
printf("К-ть: ");
scanf("%i",&rob->iCount);
printf("Сума: ");
scanf("%i",&rob->iSum);
rob->next=new stItem;
rob=rob->next;
rob->next=NULL;
records++;
}
void deleterecord(void)
{
int del,i=0;
clrscr();
printf("Введiть номер запису для вилучення:");
scanf("%i",&del);
if ((del<1)||(del>records)) return;
if (del==1) {
first=first->next;
} else {
rob=first;
while(rob->next!=NULL)
{
i++;
if (i==(del-1)) {
rob->next=(rob->next)->next;
break;
}
rob=rob->next;
}
}
records--;
return;
}
void showrecords(void)
{
int i=0;
clrscr();
rob=first;
printf("%-4s %-16s %-16s %-5s %-5s\n","N","Назва",
"Країна","К-ть","Сума");
printf("---------------------------------------------\n");
while(rob->next!=NULL)
{
printf("%-4i %-16s %-16s %-5i %-5i\n",
++i,rob->sName,rob->sCountry,rob->iCount,rob->iSum);
rob=rob->next;
}
records=i;
printf("\nНатиснiть будь-яку клавiшу для продовження...");
getch();
};
void showmatch(void)
{
int i=0,flag;
long sum=0;
char *c;
FILE *out;
if ((out = fopen("EXP", "w+"))
== NULL)
{
printf("Cannot create file 'EXP'.\n");
return;
};
rob=first;
printf("%-4s %-16s %-16s %-5s %-5s\n","N","Назва",
"Країна","К-ть","Сума");
printf("---------------------------------------------------\n");
while(rob->next!=NULL)
{
i++;
if (rob->iCount>10) {
printf("%-4i %-16s %-16s %-5i %-5i\n",
i,rob->sName,rob->sCountry,rob->iCount,rob->iSum);
fprintf(out,"%-4i %-16s %-16s %-5i %-5i\n",
i,rob->sName,rob->sCountry,rob->iCount,rob->iSum);
sum+=rob->iSum;
}
rob=rob->next;
}
printf("\nСума = %li \n",sum);
fprintf(out,"\nСума = %li \n",sum);
fclose(out);
};
int save_to_file(char *filename)
{
FILE *out;
int i=0;
if ((out = fopen(filename, "w+"))
== NULL)
{
printf("Cannot create file '%s'.\n",filename);
return 1;
}
rob=first;
while(rob->next!=NULL)
{
fprintf(out,"%-4i %-16s %-16s %-5i %-5i\n",
++i,rob->sName,rob->sCountry,rob->iCount,rob->iSum);
rob=rob->next;
}
fclose(out);
return 0;
}
int read_from_file(char *filename)
{
FILE *in;
int i;
if ((in = fopen(filename, "r"))
== NULL)
{
printf("Cannot open file '%s'.\n",filename);
return 1;
}
records=0;
rob=first;
while(!feof(in))
{
fscanf(in,"%i %16s %16s %i %i\n",
&i,rob->sName,rob->sCountry,&rob->iCount,&rob->iSum) records++;
if (rob->next==NULL) {
rob->next= new stItem;
rob=rob->next;
rob->next=NULL;
} else {
rob=rob->next;
}
}
rob->next=NULL;
fclose(in);
return 0;
}
void main (void)
{
char c;
//create an empty list
records=0;
first = new stItem;
rob=first;
rob->next=NULL;
//read saved database
read_from_file("EX");
//create backup copy
save_to_file("EX.

Завантажити цю роботу безкоштовно
Пролистати роботу: 1  2 



Інше на тему: Сформувати файл “ЕХ”, що містить відомості про експорт товарів

BR.com.ua © 1999-2017 | Реклама на сайті | Умови використання | Зворотній зв'язок