/* 成績一覧表の作成 */
void data_disp(void)
{
int goukei_k=0, goukei_e=0, goukei_s=0;
double heikin_k=0.0, heikin_e=0.0, heikin_s=0.0;
double std_k=0.0, std_e=0.0, std_s=0.0;
printf("☆☆☆ 成績一覧表 ☆☆☆\n");
printf(KEISEN);
printf("番号 名前 国語 英語 数学 合計 平均\n");
for(i=0;i<n;i++){
printf("%5d %-10s %5d %5d %5d", a[i].bango, a[i].simei, a[i].kokugo, a[i].eigo, a[i].suugaku);
/* 3科目の合計計算 */
goukei=(a[i].kokugo +a[i].eigo +a[i].suugaku);
printf("%5d",goukei);
/* キャスト:3科目の平均計算 */
heikin=(double)goukei/3;
printf("%6.1f\n",heikin);
}
printf("\n");
/* 各科目の合計計算 */
for(i=0;i<n;i++){
goukei_k+=a[i].kokugo;
goukei_e+=a[i].eigo;
goukei_s+=a[i].suugaku;
}
/* 各科目の平均計算 */
heikin_k=(double)goukei_k/n;
heikin_e=(double)goukei_e/n;
heikin_s=(double)goukei_s/n;
/* 偏差の二乗和の計算 */
for(i=0;i<n;i++){
std_k+=pow((a[i].kokugo-heikin_k),2);
std_e+=pow((a[i].eigo-heikin_e),2);
std_s+=pow((a[i].suugaku-heikin_s),2);
}
/* 標準偏差の計算 */
std_k=sqrt(std_k/n);
std_e=sqrt(std_e/n);
std_s=sqrt(std_s/n);