Скачиваний:
27
Добавлен:
02.05.2014
Размер:
1.32 Кб
Скачать
#include<stdlib.h>
#include<string.h>
#include<fstream.h>
#include<conio.h>
#include<stdio.h>
struct materials{
char caption[20];
int mass;
int res;
}p[50],result[50],tmp;

int n,res_n,resist;
char file_name[15];

void search(int resistance){
res_n=-1;
for (int i=0;i<n;i++)
 if (p[i].res==resistance)
	{ res_n++;
	  result[res_n]=p[i];
	}
}

void init_base(char *name){
ifstream inp_file(name);
if (!inp_file)
		{ printf("Frror!!! File not found! Press any key to exit.");
		  getch();
		  exit(1);
		  return;
		}
n=-1;
while (!inp_file.eof())
	{
	n++;
	inp_file>>p[n].caption>>p[n].res>>p[n].mass;
	}
inp_file.close();
}

void sort(){
for (int i = 0; i <= res_n-1; i++)
	{
	int min = i;
	for (int j = i+1; j <= res_n; j++)
		if (result[j].mass <= result[min].mass) min = j;
	tmp=result[i];
	result[i]=result[min];
	result[min]=tmp;
	}
}

void save(){
printf("Enter output filename:");
scanf("%s",file_name);
ofstream output(file_name,ios::trunc);
for (int j=0;j<=res_n;j++)
output<<result[j].caption<<" "<<result[j].res<<" "<<result[j].mass<<"\n";
output.close();
}

void main(){
clrscr();
printf("Enter filename:");
scanf("%s",file_name);
init_base(file_name);
printf("Enter resistance:");
scanf("%i",&resist);
search(resist);
sort();
save();
}
Соседние файлы в папке Лабораторная работа №3