c语言新手求大神指点!!谢谢!!
求平均成绩Description输入每行为3个整数(0~100),代表某位学生的数学、英语和计算机课程的成绩,求该生的平均成绩,以整数表示(四舍五入)。输出格式见输出样例...
求平均成绩Description 输入每行为3个整数(0~100),代表某位学生的数学、英语和计算机课程的成绩,求该生的平均成绩,以整数表示(四舍五入)。输出格式见输出样例。Input Output Sample Input 87 72 93 42 60 29 0 100 50 Sample Output math=87,eng=72,comp=93,average=84math=42,eng=60,comp=29,average=44math=0,eng=100,comp=50,average=50
展开
1个回答
展开全部
#include<stdio.h>
void main() {
int array[3][3],arr[3];
int i=0,j=0;
printf("Please input 3X3:\n");
for(i=0; i<3; i++)
for(j=0; j<3; j++)
scanf("%d",&array[i][j]);
for(i=0; i<3; i++)
arr[i] = average(array[i],3);
for(i=0; i<3; i++) {
printf("math=%d,eng=%d,com=%d,average=%d\n",array[i][0],array[i][1],array[i][2],arr[i]);
}
}
int average(int * arr,int x) {
int i=0,sum=0;
for(i=0; i<x; i++)
sum+=arr[i];
return (int)(sum/x);
}
追问
运行后第二张组数的平均数输出还是43.。。
追答
//忘了四舍五入,抱歉!
#include<stdio.h>
float average(int *,int);
int zhuanhuan(float x);
void main() {
int array[3][3],arr[3];
int i=0,j=0;
printf("Please input 3X3:\n");
for(i=0; i<3; i++)
for(j=0; j<3; j++)
scanf("%d",&array[i][j]);
for(i=0; i<3; i++)
arr[i] = zhuanhuan(average(array[i],3));
for(i=0; i<3; i++) {
printf("math=%d,eng=%d,com=%d,average=%d\n",array[i][0],array[i][1],array[i][2],arr[i]);
}
}
float average(int * arr,int x) { //求平均值
int i=0;
float sum=0;
for(i=0; i<x; i++)
sum+=arr[i];
sum /=x ;
return sum;
}
int zhuanhuan(float x) { //四舍五入
return (int) (x+0.5);
}
推荐律师服务:
若未解决您的问题,请您详细描述您的问题,通过百度律临进行免费专业咨询