i thought i solved it
but its not working
??
Code:
#include <stdio.h>
int main() { //star
int holder2[50],x,x1,y,i,j,k,temp,temp3[50],holder;
int rows = 50;
int cols = 50;
int jndex,input;
// int sum2=0; sum2 is never used
/* You can't make an array without telling it's size. rows and cols
have not been assigned a value, yet.
*/
int matrix[50][50];
// int matrix[rows][cols];
// int sum[rows][cols];
int sum[50][50];
// int temp1[rows][cols];
int temp1[50][50];
// int transpose [cols][rows];
int transpose [50][50];
int index,kndex,tndex,gndex,lndex;
int rows_sum[50];
//int rows_sum[rows]; //rows could be ANY value, still.
/* your program isn't designed for this
printf("enter rows and cols [1..50] ==> ");
scanf("%d %d",&rows,&cols);
*/
/* You can save yourself this code, just by making the array initialize to
zero's, when you declare it:
row_sum[4] = { 0 };
This only works when you first declare them, not at any later time
*/
printf("enter the size of a matrix:");
scanf("%d %d",&rows,&cols);
for (index = 0; index < rows; index++)
{
holder2[kndex]=0;
rows_sum[index]=0;
for (kndex = 0; kndex < cols; kndex++)
{
matrix[index][kndex] = 0;
sum[index][kndex] = 0;
temp1[index][kndex] = 0;
transpose[index][kndex] = 0;
}//end inner for
temp3[index] = 0;
}//end outer for
printf("enter numbers in a row for a matrix:"); //stat input
for (index = 0;index <rows; index++)
{
for (kndex = 0; kndex<cols; kndex++)
{
scanf("%d", &matrix[index][kndex]);
transpose[kndex][index] = matrix[index][kndex];
}
}
i = getchar(); //needed because of scanf()
//end input
//start power operation
// rows sum
for (index = 0; index < rows; index++)
{
for (kndex = 0; kndex < cols; kndex++){
rows_sum[index]=rows_sum[index]+matrix[index][kndex];
}
// printf("\n");
}
// end rows sum
//star sorting code
for(x = 0; x <rows; x++)
for(y = 0; y < rows-1; y++)
if(rows_sum[y] > rows_sum[y+1]) {
for(x1 = 0; x1 <rows; x1++){
holder2[x1]=matrix[y+1][x1];
}
holder = rows_sum[y+1];
for(x1 = 0; x1 <rows; x1++){
matrix[y+1][x1]=matrix[y][x1];
}
rows_sum[y+1] = rows_sum[y];
for(x1 = 0; x1 <rows; x1++){
matrix[y][x1]=holder2[x1];
}
rows_sum[y] = holder;
}
//print the swapped matrix
for(i = 0; i < rows; i++) {
putchar('\n');
for(j = 0; j < cols; j++)
printf(" %d", matrix[i][j]);
}
i = getchar();
return 0;
}//end main