The program now compiles, but either an array isn't storing properly, or handing over properly.
Here's the updated code:
Code:
#include "constants.h"#include <stdio.h>
int StudentAverage(int input[NUMBERofSTUDENTS][PGMSCORES]) {
int i, j, sum=0;
float SAverages[NUMBERofSTUDENTS];
for(i=0; i < NUMBERofSTUDENTS; i++) {
for(j=0; j < PGMSCORES; j++) {
sum+= input[i][j];
}
SAverages[i] = (sum / PGMSCORES);
return SAverages[i];
sum = 0;
}
}
int ProgramAverage(int input[NUMBERofSTUDENTS][PGMSCORES]) {
int i, j, sum=0;
static float PAverages[PGMSCORES];
for(i=0; i< PGMSCORES; i++) {
for(j=0; j< NUMBERofSTUDENTS; j++) {
sum+= input[j][i];
}
PAverages[i] = (sum / NUMBERofSTUDENTS);
return PAverages[i];
sum=0;
}
}
Code:
#include <stdio.h>#include "constants.h"
int GradeDist (int input[NUMBERofSTUDENTS][PGMSCORES] ) {
int i, j, A,B,C,D,F, temp;
int Grades[PGMSCORES][5];
for(i=0; i< PGMSCORES; i++) {
for(j=0; j< NUMBERofSTUDENTS; j++) {
A=B=C=D=F=0;
temp = input[j][i];
if(temp > 89) A++;
if(temp <= 89 && temp >=80) B++;
if(temp <= 79 && temp >= 70) C++;
if(temp <=69 && temp >=60) D++;
if(temp < 60) F++;
}
Grades[i][0]=A;
Grades[i][1]=B;
Grades[i][2]=C;
Grades[i][3]=D;
Grades[i][4]=F;
}
for(i=0; i< PGMSCORES; i++)
for(j=0; j< 5; j++) return Grades[i][j];
}
Code:
#include <stdio.h>#include "constants.h"
#include <math.h>
int Median(int input[NUMBERofSTUDENTS][PGMSCORES])
{
int i, j, temp, z=0;
int x, y;
static int medians[PGMSCORES];
int inputSorted[NUMBERofSTUDENTS][PGMSCORES];
for(i=0; i< NUMBERofSTUDENTS; i++)
for(j=0; j<PGMSCORES; j++) inputSorted[i][j] = BubbleSort(input);
for(i=0; i< PGMSCORES; i++) {
for(j=0; j<NUMBERofSTUDENTS; j++) {
x = inputSorted[sizeof(inputSorted) /2][i];
y = inputSorted[sizeof(inputSorted) /2 -1][i];
if(NUMBERofSTUDENTS % 2 == 1)
{
medians[i] = inputSorted[(NUMBERofSTUDENTS + 1)/2 -1][i];
}
else
{
medians[i] = (x + y) /2;
}
}
return medians[i];
}
}
Code:
#include <stdio.h>#include "constants.h"
#define ProgramMedians medians
#define StudentAvgs SAverages
#define ProgramAvgs PAverages
void dashes()
{
int i;
for(i=0; i < (PGMSCORES * 10) + 20; i++) printf("-");
}
int main() {
int mainarr[NUMBERofSTUDENTS][PGMSCORES];
float programavg[1][PGMSCORES];
int i, j;
for(i=0; i<NUMBERofSTUDENTS; i++)
for(j=0; j < PGMSCORES; j++)
scanf("%d", &mainarr[i][j]);
float SAverages[NUMBERofSTUDENTS];
float PAverages [PGMSCORES];
int medians[PGMSCORES];
int Grades[PGMSCORES][5];
for(i=0; i< NUMBERofSTUDENTS; i++)
SAverages[i] = StudentAverage(mainarr);
for(i=0; i< PGMSCORES; i++)
PAverages[i] = ProgramAverage(mainarr);
for(i=0; i< PGMSCORES; i++)
medians[i] = Median(mainarr);
for(i=0; i < PGMSCORES; i++)
for(j=0; j< 5; j++)
Grades[i][j]= GradeDist(mainarr);
printf("CSE 1030 Program 4 - Alexander Hollis - Email - csp_03\n\n");
printf("Program Results:\n");
printf("Student |");
for(i=0; i< PGMSCORES; i++)
{
printf(" PGM %d |",i+1);
}
printf(" Std Avg\n");
dashes();
printf("\n");
for(i=0; i< NUMBERofSTUDENTS; i++)
{
printf("Student %d |",i+1);
for(j=0; j < PGMSCORES; j++)
{
printf("%6d |", mainarr[i][j]);
}
printf("%6.1f \n",StudentAvgs[i]);
}
dashes();
printf("\nPGM Avg |");
for(i=0; i< PGMSCORES; i++)
{
printf("%5.1f |",ProgramAvgs[i]);
}
printf("\n");
printf("PGM Median |");
for(i=0; i < PGMSCORES; i++)
{
printf("%6d |", ProgramMedians[i]);
}
printf("\n\n\n\n");
printf("Program Grade Distribution:\n\n");
printf("Program | As | Bs | Cs | Ds | Fs\n");
for(i=0; i < 32; i++) printf("-");
printf("\n");
for(i=0; i< PGMSCORES; i++)
{
printf("PGM %d |",i+1);
for(j=0; j<5; j++) {
printf("%3d |", Grades[i][j]);
}
printf("\n");
}
printf("\n\n");
return 0;
}
Code:
#include <stdio.h>#include "constants.h"
int BubbleSort(int inputSorted[NUMBERofSTUDENTS][PGMSCORES]) {
int i, j, temp;
for(i=0; i < PGMSCORES; i++) {
for(j=0; j< NUMBERofSTUDENTS; j++) {
if(inputSorted[j][i] > inputSorted[j+1][i]) {
temp = inputSorted[j+1][i];
inputSorted[j+1][i] = inputSorted[j][i];
inputSorted[j][i] = temp;
}
}
}
for(i=0; i < PGMSCORES; i++)
for(j=0; j< NUMBERofSTUDENTS; j++) return inputSorted[i][j];
}
"Constants.h File"
Code:
#define NUMBERofSTUDENTS 5#define PGMSCORES 4
Here's the test Data:
100 97 94 87
90 68 77 81
100 100 100 100
95 90 92 88
87 88 79 81