#include
int main(){
void average(float (*p_ave),int n);
int i,j,(*p)[4];
float score[3][4];
printf("please enter their score:");
for(i=0;i<3;i++){
for(j=0;j<4;j++){
scanf("%d",&score[i][j]);
}
}
average(*score,12);
return 0;
}
void average(float (*p_ave),int n){
float *p_end;
float sum = 0,aver;
p_end = p_ave+n-1;
for(;p_ave<=p_end;p_ave++)
sum = sum+(*p_ave);
printf("%f",sum);
return;
}
輸出以後sum是零,不管我輸入什麼數值,出來的結果都是零。是我沒有把score中的數據傳到average函數裡面嗎?求解答 感激不盡!
自己發現問題了,是scanf裡的%f,應該改為%d.謝謝大家的幫助~~~