ぼるじょあがC/C++の宿題を片づけますYO! 66代目
■ このスレッドは過去ログ倉庫に格納されています
0056デフォルトの名無しさん
NGNG#include<stdio.h>
#include<stdlib.h>
#include<math.h>
double average(int* a,size_t len){int s=0;size_t i;for(i=0;i<len;i++)s+=a[i];return (double)(s/len);}
double deviation(int* a,size_t len){size_t i;double var=0.0,avg=average(a,len);
for(i=0;i<len;i++)var+=pow(a[i]-avg,2);var/=len;return sqrt(var);}
int min_arr(int* a,size_t len){int t=INT_MAX;size_t i;for(i=0;i<len;i++)if(t>a[i])t=a[i];return t;}
int max_arr(int* a,size_t len){int t=-INT_MAX;size_t i;for(i=0;i<len;i++)if(t<a[i])t=a[i];return t;}
int main(int argc,char* argv[]){char tmp[100];size_t i,n=0;FILE* fp;int *a,*b,*c,*d,*e;
if(argc>1){if((fp=fopen(argv[1],"r"))!=NULL){while(fgets(tmp,sizeof(tmp),stdin))n++;
fclose(fp);a=(int*)malloc(sizeof(int)*n);b=(int*)malloc(sizeof(int)*n);c=(int*)malloc(sizeof(int)*n);
d=(int*)malloc(sizeof(int)*n);e=(int*)malloc(sizeof(int)*n);fp=fopen(argv[1],"r");for(i=0;i<n;i++){
fgets(tmp,sizeof(tmp),stdin);sscanf(tmp,"%d %d %d %d %d",&a[i],&b[i],&c[i],&d[i],&e[i]);}
printf("教科A 最大:%i 最小:%i 平均:%2.2f 標準偏差:%2.2f\n",max_arr(a,n),min_arr(a,n),
average(a,n),deviation(a,n));
printf("教科B 最大:%i 最小:%i 平均:%2.2f 標準偏差:%2.2f\n",max_arr(b,n),min_arr(b,n),
average(b,n),deviation(b,n));
printf("教科C 最大:%i 最小:%i 平均:%2.2f 標準偏差:%2.2f\n",max_arr(c,n),min_arr(c,n),
average(c,n),deviation(c,n));
printf("教科D 最大:%i 最小:%i 平均:%2.2f 標準偏差:%2.2f\n",max_arr(d,n),min_arr(d,n),
average(d,n),deviation(d,n));
printf("教科E 最大:%i 最小:%i 平均:%2.2f 標準偏差:%2.2f\n",max_arr(e,n),min_arr(e,n),
average(e,n),deviation(e,n));}}return 0;}
■ このスレッドは過去ログ倉庫に格納されています