从键盘输入3*3的矩阵,编程计算其平均值并输出,同时输出大于等于平均值的各元素值。
输入矩阵并计算平均值的函数原型:
int ReadMatrixAndAverage(int matrix[][3]);
输出大于等于平均值的各元素值的函数原型:
void PrintAboveAver(int matrix[][3], int average);
**输入提示信息:"please input 3*3 matrix
"
**输入格式:"%d"
**输出提示信息及格式:
输出平均值:"aver = %d
"
输出高于平均值各元素的值:"%4d"
1 #include <stdio.h> 2 #include <stdlib.h> 3 #define N 3 4 5 int ReadMatrixAndAverage(int matrix[][3]); 6 void PrintAboveAver(int matrix[][3], int average); 7 8 //输入矩阵并计算平均值 9 int ReadMatrixAndAverage(int matrix[][3]) 10 { 11 int i,j,sum=0; 12 for(i=0; i<N; ++i) 13 { 14 for(j=0; j<3; ++j) 15 { 16 scanf("%d",&matrix[i][j]); 17 sum+=matrix[i][j]; 18 } 19 } 20 return sum/(3*N); 21 } 22 23 //输出大于等于平均值的各元素值 24 void PrintAboveAver(int matrix[][3], int average) 25 { 26 int i,j; 27 for(i=0; i<N; ++i) 28 { 29 for(j=0; j<3; ++j) 30 { 31 if(matrix[i][j]>=average) 32 { 33 printf("%4d",matrix[i][j]); 34 } 35 } 36 } 37 } 38 39 int main() 40 { 41 int matrix[N][3]; 42 int aver=0; 43 printf("please input 3*3 matrix "); 44 aver=ReadMatrixAndAverage(matrix); 45 printf("aver = %d ",aver); 46 PrintAboveAver(matrix,aver); 47 return 0; 48 }