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 展开
 我来答
善鹏海0Hc6ff
推荐于2016-03-24 · TA获得超过665个赞
知道小有建树答主
回答量:1108
采纳率:0%
帮助的人:543万
展开全部
#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);
}
推荐律师服务: 若未解决您的问题,请您详细描述您的问题,通过百度律临进行免费专业咨询

为你推荐:

下载百度知道APP,抢鲜体验
使用百度知道APP,立即抢鲜体验。你的手机镜头里或许有别人想知道的答案。
扫描二维码下载
×

类别

我们会通过消息、邮箱等方式尽快将举报结果通知您。

说明

0/200

提交
取消

辅 助

模 式