Добавил:
korayakov
Опубликованный материал нарушает ваши авторские права? Сообщите нам.
Вуз:
Предмет:
Файл:Лабы / неТельминов / lab4 / LAB4-7
.CPP// lab 4 var 7
#include <conio.h>
#include <stdio.h>
#include <io.h>
#include <string.h>
#include <iostream.h>
#include <dir.h>
class name_and_size
{
public:
long int size;
char name[260];
};
int main(int argc, char *argv[])
{
int counter = 0;
int i, changed;
char tardir[255]="";
clrscr();
if (argc>1) {strcpy(tardir, argv[1]); strcat(tardir,"\\");}
strcat(tardir,"*.*");
name_and_size dir[200];
struct ffblk ffblk;
int done;
printf("Directory listing:\n");
done = findfirst(tardir,&ffblk,0);
while (!done)
{
printf("%-12s ", ffblk.ff_name);
cout << ffblk.ff_fsize << "\n";
dir[counter].size = ffblk.ff_fsize;
strcpy( dir[counter].name, ffblk.ff_name );
counter++;
done = findnext(&ffblk);
}
name_and_size temp;
do {
changed = 0;
for (i = 0; i < counter-1; i++)
{
if (dir[i].size > dir[i+1].size)
{
changed = 1;
temp = dir[i];
dir[i] = dir[i+1];
dir[i+1] = temp;
}
}
} while (changed);
printf("\nSorted:\n");
for ( i = 0; i < counter; i++ )
{
printf("%-12s ", dir[i].name);
cout << dir[i].size << "\n";
}
return 0;
}