#include <stdio.h>
#include <time.h>
int main () {
FILE *fp;
char str[80] = "0123456789";
int len;
time_t start, end;
long int t, null_for;
long times = 100;
if ((fp = fopen("diskwr1.dat", "w")) == NULL) {
printf("Ошибка открытия файла diskwr.dat\n");
return -1; }
printf("Определение длительности работы пустого цикла\n");
printf("и одновременно необходимого числа раз выполнения цикла\n");
do {
times *= 2;
start = time(NULL);
for (t=0; t < times; t++);
end = time(NULL);
null_for = difftime(end, start);
printf("times = %li %i\n", times, null_for);
} while (null_for == 0);
len = strlen(str);
printf("Вывод с помощью оператора fputs\n");
start = time(NULL);
for (t=0; t<times; t++)
fputs(str, fp);
end = time(NULL);
/* fputs("\n", fp); */
printf("\nС помощью fputs символ записывается за %e секунд\n",
(difftime(end, start)-null_for)/times/len);
fclose(fp);
printf("Вывод с помощью оператора fwrite\n");
fp = fopen("diskwr2.dat", "wb");
start = time(NULL);
for (t=0; t < times; t++) fwrite(&str, len, 1, fp);
end = time(NULL);
fclose(fp);
printf("с помощью fwrite за %e секунд",
(difftime(end, start)-null_for)/times/len);
return 0;
}