[ create a new paste ] login | about

Link: http://codepad.org/9ra3PWuv    [ raw code | fork ]

C, pasted on Feb 9:
/* test5.c */

#include <stdio.h>
#include <stdlib.h>

void input(char *fname, double **x, int *n) {
  FILE *fp;
  int i;

  fp = fopen(fname,"r");
  fscanf(fp,"%d",n);
  *x = (double *)malloc(sizeof(double)*(*n));
  for (i = 0; i < *n; i++)
    fscanf(fp,"%lf",&((*x)[i]));
  fclose(fp);
}

void check(double *x, int n) {
  int i;

  for (i = 0; i < n; i++)
    printf("x[%2d] = %9.6lf\n",i,x[i]);
}

double average(double *x, int n) {
  double ans;
  double sum = 0.0;
  int i;

  for (i = 0; i < n; i++) {
    sum += x[i];
  }
  ans = sum / n;

  return ans;
}

void output(double *x, int k) {
  printf("最大値は x[%d] = %lf\n",k,x[k]);
}

int main(int argc, char *argv[]) {
  double *x;
  int n;
  double a;

  if (argc != 2)
    return -1;
  input(argv[1],&x,&n);
  check(x,n);
  a = average(x,n);
  printf("平均: %lf\n",a);

  return 0;
}


Create a new paste based on this one


Comments: