Код | #include<stdio.h>
#define SIZE 5
int stolbec_bez_nuley(int matr[][SIZE], int col) { int i; for(i = 0; i < SIZE; i++) if(matr[i][col] == 0) return 0; return 1; }
int sum_elem(int matr[][SIZE], int row) { int j; int sum = 0; for(j = 1; j < SIZE; j += 2) if(matr[row][j] > 0) sum += matr[row][j]; return sum; }
void swap(int* a, int* b) { int tmp;
tmp = *a; *a = *b; *b = tmp; }
int main(int argc, char* argv[]) { srand((unsigned)time(NULL)); int matrix[SIZE][SIZE]; int i, j, k; int sum = 0; for(i = 0; i < SIZE; i++) for(j = 0; j < SIZE; j++) matrix[i][j] = rand() % 19 - 9; for(i = 0; i < SIZE; i++) sum += stolbec_bez_nuley(matrix, i); for(i = 0; i < SIZE; i++) { for(j = 0; j < SIZE; j++) printf("%4d", matrix[i][j]); puts(""); } printf("\nstolbcov bez nuley: %d\n\n", sum); for(k = 0; k < SIZE; k++) { for(i = 0; i < SIZE - 1; i++) { if(sum_elem(matrix, i) > sum_elem(matrix, i + 1)) for(j = 0; j < SIZE; j++) swap(&matrix[i][j], &matrix[i + 1][j]); } } for(i = 0; i < SIZE; i++) { for(j = 0; j < SIZE; j++) printf("%4d", matrix[i][j]); printf(" (%d)\n", sum_elem(matrix, i)); } puts("\nPress any key to quit..."); getchar(); return 0; } |
|