C语言程序题 哪位好心人能帮忙做下啊 非常感谢

来源:百度知道 编辑:UC知道 时间:2024/06/19 15:09:18
三、程序设计题
n个人的成绩存放在score数组中,请编写函数proc,它的功能是将低于平均分的人数作为函数值返回,将低于平均分的分数放在down所指的数组中。例如,当score数组中的数据为{99,80,40,56,59,84,60,76,100}时,函数返回的人数应该是4,down中的数据应为40 56 59 60。
注意:部分源程序给出如下。
请勿改动主函数main和其他函数中的任何内容,仅在函数proc的花括号中填入所编写的若干语句。
试题程序:
#include <stdlib.h>
#include <conio.h>
#include <stdio.h>
#include <string.h>
int proc(int score〔〕,int n, int down〔〕)
{

}
void main()
{
int i, n, down〔9〕;
int score〔9〕={24,35,88,76,90,54,59,66,96};
system("CLS");
n=proc(score, 9, down);
printf("\nup to the average score are: ");
for (i=0;i<n;i++)
printf("%d ",down〔i〕);
}

#include <stdlib.h>
#include <conio.h>
#include <stdio.h>
#include <string.h>
int proc(int score[],int n, int down[])
{
int i =0,No = 0,nResult = 0;
int sum = 0;
double avg = 0.0;

for(i=0;i<n;i++)
{
sum = score[i]+sum;
}
avg = (double)sum/n;
for(i=0;i<n;i++)
{
if (score[i] < avg)
{
down[No] = score[i];
No++;
}
}
return No;
}
void main()
{
int i, n, down[9];
int score[9]={24,35,88,76,90,54,59,66,96};
system("CLS");
n=proc(score, 9, down);
printf("\nup to the average score are: ");
for (i=0;i<n;i++)
printf("%d ",down[i]);
}

int proc(int score[],int n, int down[])
{
int i =0,j = 0,nResult = 0;
int nTotalNum = 0;
double avgNum = 0.0;

// 计算总分
for(i=0;i<