rendered paste body#include <stdio.h>
#include <stdlib.h>
void totalscore (int test[9][100], int n, int* total);
void calc(int test[9][100], int high[9], int low[9], float ave[9][2], int n);
int main ()
{
// Local Declarations
int n = 0;
int test[9][100];
char first[80];\
int high[9] = {0};
int low[9] = {100, 100, 100, 100, 100, 100, 100, 100, 100};
float ave[9][2] = {0};
char name[4];
char test1[6];
char test2[6];
char test3[6];
char test4[6];
char test5[6];
char test6[6];
char test7[6];
char test8[6];
char test9[6];
int total;
FILE* fpIN;
FILE* fpOut;
// Statements
// --------------------
if (!(fpIN = fopen("C:\\Documents and Settings\\Owner.TacoJim\\My Documents\\IUPUI\\Engineering\\ECE 264\\wboler_hw1\\inputFile.txt", "r")))
{
printf("\aCould not open student file.\n");
exit (100);
}
fscanf(fpIN, "%s""%s""%s""%s""%s""%s""%s""%s""%s""%s", name, test1, test2, test3, test4, test5, test6, test7, test8, test9);
printf("File scanning initiated.");
fpOut = fopen("C:\\Documents and Settings\\Owner.TacoJim\\My Documents\\IUPUI\\Engineering\\ECE 264\\wboler_hw1\\outputFile.txt", "w");
fprintf(fpOut, "\t%s\t\t%s\t%s\t%s\t%s\t%s\t%s\t%s\t%s\t%s\tTotal\n", name, test1, test2, test3, test4, test5, test6, test7, test8, test9);
while (fscanf(fpIN, "%s %d %d %d %d %d %d %d %d %d", first, &test[0][n], &test[1][n], &test[2][n], &test[3][n], &test[4][n], &test[5][n], &test[6][n], &test[7][n], &test[8][n]) == 10)
{
totalscore(test, n, &total);
fprintf(fpOut, "%s\t\t%3d\t%3d\t%3d\t%3d\t%3d\t%3d\t%3d\t%3d\t%3d\t%3d\n", first, test[0][n], test[1][n], test[2][n], test[3][n], test[4][n], test[5][n], test[6][n], test[7][n], test[8][n], total);
n++;
}
calc(test, high, low, ave, n);
fprintf(fpOut, "\nHighest Score:\t\t%3d\t%3d\t%3d\t%3d\t%3d\t%3d\t%3d\t%3d\t%3d", high[0], high[1], high[2], high[3], high[4], high[5], high[6], high[7], high[8]);
fprintf(fpOut, "\nLowest Score:\t\t%3d\t%3d\t%3d\t%3d\t%3d\t%3d\t%3d\t%3d\t%3d", low[0], low[1], low[2], low[3], low[4], low[5], low[6], low[7], low[8]);
fprintf(fpOut, "\nAverage Score:\t\t%3.0f\t%3.0f\t%3.0f\t%3.0f\t%3.0f\t%3.0f\t%3.0f\t%3.0f\t%3.0f\n", ave[0][0], ave[1][0], ave[2][0], ave[3][0], ave[4][0], ave[5][0], ave[6][0], ave[7][0], ave[8][0]);
printf("\nScanning complete.\n");
fclose (fpIN);
fclose (fpOut);
return 0;
}
void totalscore(int test[9][100], int n, int* total)
{
*total = test[0][n] + test[1][n] + test[2][n] + test[3][n] + test[4][n] + test[5][n] + test[6][n] + test[7][n] + test[8][n];
}
void calc(int test[9][100], int high[9], int low[9], float ave[9][2], int n)
{
int sum = 0;
for (int y = 0; y < n; y++)
{
for (int x = 0; x < 10; x++)
{
if (test[x][y] < low[x])
low[x] = test[x][y];
if (test[x][y] > high[x])
high[x] = test[x][y];
ave[x][1]+= (float) test[x][y];
}
}
for (int r = 0; r < 10; r++)
ave[r][0] = ave[r][1] / (float) n;
}