#include<stdio.h>
#include<math.h>
void sort(double a[],int n);
double std(double a[]);
double GPA(double,double);
int main()
{
double s[10],c[5],gpa[10];
int i,j;
printf("請依次輸入五門課程的學分:\n");
for(i=0;i<5;i++)
scanf("%lf",&c[i]);
printf("請依次輸入十位同學五門課程的分數:\n");
for(j=0;j<10;j++)
{for(i=0;i<5;i++)
scanf("%lf",&s[j]);
printf("該同學的GPA:%lf\n",GPA(s,c));}
printf("請將得到的十個GPA輸入:\n"); //將計算出的十個結果輸入賦值給gpa陣列
for(j=0;j<10;j++)
scanf("%lf",&gpa[j]);
sort(gpa,10);
printf("十位同學的GPA成績由高到低排序后如下:\n");
for(j=0;j<10;j++)
printf(" %lf\n",gpa[j]);
printf("該班同學GPA成績標準差為:%lf\n", std(gpa));
return 0;
}
double GPA(double s[5],double c[5]) //換算績點
{
int i;
double n;
for(i=0;i<5;i++)
{
if(s[i]>=96 && s[i]<=100)
s[i]=4.8;
else if(s[i]>=93 && s[i]<=95)
s[i]=4.5;
else if(s[i]>=90 && s[i]<=92)
s[i]=4.0;
else if(s[i]>=86 && s[i]<=89)
s[i]=3.8;
else if(s[i]>=83 && s[i]<=85)
s[i]=3.5;
else if(s[i]>=80 && s[i]<=82)
s[i]=3.0;
else if(s[i]>=76 && s[i]<=79)
s[i]=2.8;
else if(s[i]>=73 && s[i]<=75)
s[i]=2.5;
else if(s[i]>=70 && s[i]<=72)
s[i]=2.0;
else if(s[i]>=66 && s[i]<=69)
s[i]=1.8;
else if(s[i]>=63 && s[i]<=65)
s[i]=1.5;
else if(s[i]>=60 && s[i]<=62)
s[i]=1.0;
else if(s[i]<60) s[i]=0;
}
n=(s[0]*c[0]+s[1]*c[1]+s[2]*c[2]+s[3]*c[3]+s[4]*c[4])/(c[0]+c[1]+c[2]+c[3]+c[4]);
return n;
}
void sort(double a[],int n) //冒泡排序法將十位同學的績點從高到低排序
{
int i,j,t;
for(j=0;j<10;j++)
for(i=0;i<9-j;i++)
if(a[i]<a[i+1])
{t=a[i];a[i]=a[i+1];a[i+1]=t;}
}
double std(double a[]) //求十位同學績點的標準差
{
double sum1=0,ave,e=0,stdd;
int i;
for(i=0;i<10;i++)
sum1=sum1+gpa[i];
ave=sum1/10;
for(i=0;i<10;i++)
e+=(gpa[i]-ave)*(gpa[i]-ave);
stdd=sqrt(e/10);
return stdd;
}
問題主要是出在求標準差的std子函式,還有主函式里面呼叫GPA子函式的程序中!!!求求了!!經管學院小女子別無他法了!!
uj5u.com熱心網友回復:
你得把具體問題說清楚才好看uj5u.com熱心網友回復:
double std(double a[]) //求十位同學績點的標準差{
double sum1=0,ave,e=0,stdd;
int i;
for(i=0;i<10;i++)
sum1=sum1+gpa[i]; ===>>> 傳入的是陣列a,這里gpa[] 陣列是哪兒來的
ave=sum1/10;
for(i=0;i<10;i++)
e+=(gpa[i]-ave)*(gpa[i]-ave);
stdd=sqrt(e/10);
return stdd;
}
轉載請註明出處,本文鏈接:https://www.uj5u.com/houduan/47651.html
標籤:C++ 語言
上一篇:無法決議的外部符號 glutInit,該符號在函式 main 中被參考
下一篇:求助 哪個大佬幫幫忙
