## Issue

I have made a program which finds the column that has the min sum out of a 2d array.

To calculate it, I initiated the `min`

variable of the `lowestSum`

function.

**Purpose**

I am trying to initialize the `min`

variable with the sum of the 1st column instead of giving a specific number. So far only with providing a specific number I made it work. See the code below:

Therefore, how should it store the sum of the first column and then check against the other columns to eventually find the column with the min sum of values? Now it works only by providing the `min`

specifically.

```
#include<stdio.h>
#define ROWS 4
#define COLS 3
void printnumbers(int arr[][COLS]);
int lowestSum(int MovieRatings[][COLS]);
int main() {
int arr[ROWS][COLS] = {{1, 2, 3},
{2, 3, 4},
{3, 4, 5},
{5, 15, 6}};
printnumbers(arr);
printf("the lowest sum is in column %d\n", lowestSum(arr));
return 0;
}
void printnumbers(int arr[][COLS]){
int i,j;
for(i = 0; i<ROWS; i++)
{
printf("\n");
for(j = 0; j<COLS; j++)
{
printf("%d\t", arr[i][j]);
}
}
}
int lowestSum(int arr[][COLS]){
int i, j, total, min,min_col;
min = 20; //<------this is is intialization
for (j = 0; j < COLS; j++) {
total = 0;
for (i = 0; i < ROWS; i++) {
total += arr[i][j];
}
if (min > total) {
min = total;
min_col = j+1;
printf("\n");
}
}
return min_col;
}
```

## Solution

After summing up the first column, that one will for the moment have the smallest sum. So if you’re on the first iteration of the outer loop, set `min`

.

```
if (j == 0 || min > total) {
min = total;
min_col = j+1;
printf("\n");
}
```

Answered By – dbush

Answer Checked By – Jay B. (BugsFixing Admin)