吾爱破解 - 52pojie.cn

 找回密码
 注册[Register]

QQ登录

只需一步,快速开始

查看: 1521|回复: 8
收起左侧

[求助] 用函数实现班级高等数学、大学英语II、C语言程序设计三门课成绩的输入,分别计算并...

[复制链接]
djdgf4 发表于 2022-7-3 21:55
[C] 纯文本查看 复制代码
#include<stdio.h>
/*该函数实现高等数学、大学英语II、C语言程序设计三门课程的成绩输入
* 输入的成绩存放在score数组中,返回学生人数
*/
int input_2(float score[][3])
{
    // 请在下面添加代码
    // ********** Begin **********
    int i,j,n=0;
    for( i = 0 ;  ; i++ ){
        for( j = 0 ;  j < 3 ; j++ )
    {
        if( score[i][j] == -1) break;
        scanf("%f,",&score[i][j]);
    }
    n++;
    }
    return n;
    // **********  End  **********
}

/*该函数用来实现分别求高等数学、大学英语II、C语言程序设计三门课程的平均成绩
* score为学生成绩
* n为该班学生人数
* 求得的平均成绩存放在avg数组中
*/
void average_2(float score[][3],float avg[3], int n)
{
    // 请在下面添加代码
    // ********** Begin **********
    int i,j;
    float sum = 0;
    for( j = 0 ; j < 3 ; j++ ){
        for( i = 0 ; i < n ; i++ ){
            sum += score[i][j];
    }
    avg[j] = sum / n;
    sum = 0 ;
    }
    // **********  End  **********
}

/*该函数用来实现输出学生的平均成绩
* avg分别为高等数学、大学英语II、C语言程序设计三门课的平均成绩
* n为该班学生人数
*/
void output_2(float avg[3],int n)
{
    // 请在下面添加代码
    // ********** Begin **********
    printf("张小兵同学所在班级一共有%d名同学,该班的平均成绩如下:\n",n);
    printf("高等数学的平均成绩为%f\n",avg[0]);
    printf("大学英语II的平均成绩为%f\n",avg[1]);
    printf("C语言程序设计的平均成绩为%f\n",avg[2]);
    // **********  End  **********
}
//用函数实现班级高等数学、大学英语II、C语言程序设计三门课成绩的输入,分别计算并输出三门课的平均成绩。

这是平台的题目,没给出main函数
始终没有输出,我推测是输入函数出了问题,但是没搞明白在哪儿

测试输入结果

测试输入结果

发帖前要善用论坛搜索功能,那里可能会有你要找的答案或者已经有人发布过相同内容了,请勿重复发帖。

robboter 发表于 2022-7-3 23:19
这是educoder平台的题,把地址贴出来,可以帮你测试。
SLCoCo 发表于 2022-7-3 23:32
本帖最后由 SLCoCo 于 2022-7-3 23:36 编辑

很久没学了不知道回答的对不对仅供参考
首先你这里输入成绩的时候是数字加上一个逗号那到最后一个数不就也要有逗号,你改成
[C] 纯文本查看 复制代码
scanf_s("%f,%f,%f", &score[i][0], &score[i][1], &score[i][2]);

这样试试。
其次就是你这里判断输入的值是否为-1的时候在输入之前这样是不太合理的
还要就是他这里样例的结果是保留两位小数。所以输出平均数的时候用  %.2f

p紫气东来 发表于 2022-7-4 06:43
bj9ye666 发表于 2022-7-4 06:50
好家伙论坛真是人才辈出啊666
 楼主| djdgf4 发表于 2022-7-4 13:56
robboter 发表于 2022-7-3 23:19
这是educoder平台的题,把地址贴出来,可以帮你测试。

https://www.educoder.net/tasks/yx34bvfihtc6
太感谢啦
 楼主| djdgf4 发表于 2022-7-4 14:11
SLCoCo 发表于 2022-7-3 23:32
很久没学了不知道回答的对不对仅供参考
首先你这里输入成绩的时候是数字加上一个逗号那到最后一个数不就也 ...

为什么判断-1要放在后面呢?
好像 放在后面的话我看是会把-1也输入数组。但是因为平均值函数里没用到-1,所以我没把-1加进去
SLCoCo 发表于 2022-7-5 17:41
本帖最后由 SLCoCo 于 2022-7-5 17:47 编辑
djdgf4 发表于 2022-7-4 14:11
为什么判断-1要放在后面呢?
好像 放在后面的话我看是会把-1也输入数组。但是因为平均值函数里没用到-1 ...
你不输入的话你判断的值要从哪里来。

vtor 发表于 2022-7-15 15:43
行13和行14应该调换一下吧
您需要登录后才可以回帖 登录 | 注册[Register]

本版积分规则

返回列表

RSS订阅|小黑屋|处罚记录|联系我们|吾爱破解 - LCG - LSG ( 京ICP备16042023号 | 京公网安备 11010502030087号 )

GMT+8, 2024-11-25 10:00

Powered by Discuz!

Copyright © 2001-2020, Tencent Cloud.

快速回复 返回顶部 返回列表