stats.c
来自「实现把一个大电路划分成两个小电路」· C语言 代码 · 共 42 行
C
42 行
#include <stdio.h>
#include <math.h>
main(argc, argv)
int argc;
char *argv[];
{
double *times, avg_time;
int *cuts, cut, num_runs, i, tot_cut, min_cut;
FILE *fr;
char line[80], temp[80];
num_runs = atoi(argv[1]);
cuts = (int *) calloc(num_runs,sizeof(int));
times = (double *) calloc(num_runs,sizeof(double));
for (i=0; i<num_runs; i++) {
cuts[i] = 0;
times[i] = 0;
}
fr = fopen(argv[2], "r");
if (fr == NULL)
fprintf(stderr, "Could not open file\n");
for (i=0; i<num_runs; i++) {
fscanf(fr, "%*s %*s %*s %d%*s %s %*s %*d\n", &cut, temp);
cuts[i] = cut;
times[i] = atof(temp);
}
tot_cut = 0;
min_cut = 9999999;
avg_time = 0;
for (i=0; i<num_runs; i++) {
tot_cut += cuts[i];
if (min_cut > cuts[i]) min_cut = cuts[i];
avg_time += times[i];
}
printf("Min cut %d, Avg cut %.2f, Avg time %.2f\n", min_cut,
((float) tot_cut)/num_runs, avg_time/num_runs);
}
⌨️ 快捷键说明
复制代码Ctrl + C
搜索代码Ctrl + F
全屏模式F11
增大字号Ctrl + =
减小字号Ctrl + -
显示快捷键?