성적나오는건되는데 분포에서막힙니다 함봐주세요
#include <stdio.h>
void main()
{
int i,n,a,b,c,h,ef;
static int no[100]={0},ao[100]={0},bo[100]={0},co[100]={0},hap[100]={0};
static float e[100]={0};
float v,w,x,y,z;
char g[1];
for(i=0;i<100;i++)
{
printf("번호?");scanf("%d",&n);
if(n==-1)break;
no[i]=n;
printf("과목1 ?");scanf("%d",&a);
ao[i]=a;
printf("과목2 ?");scanf("%d",&b);
bo[i]=b;
printf("과목3 ?");scanf("%d",&c);
co[i]=c;
hap[i]=ao[i]+bo[i]+co[i]; e[i]=hap[i]/3.;
if(e[i]>=90)
g[i]='A';
else if(e[i]>=80)
g[i]='B';
else if(e[i]>=70)
g[i]='C';
else if(e[i]>=60)
g[i]='D';
else
g[i]='F';
}
printf("\t성적처리프로그램B반");
printf("\n번호\t과목1\t과목2\t과목3\t 총점\t평균\t학점\n");
a=0;b=0;c=0;h=0;ef=0;
for(i=0;i<=no[i];i++)
{
printf("%2d %9d %7d %7d %7d %8.1f %6c\n",no[i],ao[i],bo[i],co[i],hap[i],e[i],g[i]);
a=a+ao[i]; b=b+bo[i]; c=c+co[i]; h=h+hap[i]; ef=ef+e[i];
}
v=(float)a/i; w=(float)b/i; x=(float)c/i; y=(float)h/i; z=(float)ef/i;
printf("------------------------------------------------------------------------------%d");
printf("%8.1f %7.1f %7.1f %8.1f %7.1f",v,w,x,y,z);
{
printf(" \n%s\n%s\n%s\n",
"********", " 분포", "********");
printf("------------------------------------------------------------------\n");
printf("%10s%10s%8s%-20s\n\n", "학점", "횟수", " ", "히스토그램");
printf("%28s%-40s\n%28s%-40s\n"," ",
" 1 1 2 2", " ",
"1 5 0 5 0 5");
printf("------------------------------------------------------------------\n");
printf("*");
printf("\n");
printf("------------------------------------------------------------------\n");
printf("분포에서는 수의 빈도 횟수를 나타낸다.\n"
"분석 결과, 가장 많은 빈도수는 수 "
"%d이(가) %d번 나타났다.\n");
}
|