不使用結構體,那只能用多個變量單獨表示每個成員。
題目要求函數fun要把處理結果放在成員ave中,那麽函數有2種寫法:
1,傳入分數數組及長度,計算後,返回平均分。主函數用變量ave接收返回值。
2,函數多壹個參數,就是主函數變量ave的地址,這樣在fun中給該地址賦值,主函數中ave變量值也改變。
我代碼用第壹種方法寫:
#include <stdio.h>
float fun(float *scores,int len);
int main()
{
int i,id=10021;
float scores[8]={85.5,76,69.5,85,91,72,64.5,87.5},ave;
ave=fun(scores,8);
printf("學號:%d,8門學科成績分別為:\n",id);
for(i=0;i<8;printf("%.1f ",scores[i]),i++);
printf("\n平均分為%.3f\n",ave);
return 0;
}
float fun(float *scores,int len)
{
int i;
float ave,sum=0;
for(i=0;i<len;sum+=scores[i],i++);
ave=sum/len;
return ave;
}