Not a member of Pastebin yet?
Sign Up,
it unlocks many cool features!
- #include <stdio.h>
- #include <malloc.h>
- void work(int ***array, int num_k, int num_l, int size)
- {
- int i,temp,j,k;
- int temp_max=0;
- //Поиск максимального n раз
- for (i=0;i<size;i++)
- for(j=0;j<size;j++)
- for(k=0;k<size;k++)
- if(((*array)[i][i] < (*array)[j][k]) )
- if(j!=k || j > i)
- {
- temp = (*array)[i][i];
- (*array)[i][i]=(*array)[j][k];
- (*array)[j][k] = temp; }
- }
- void output_mas(int **array, int size)
- {
- //Вывод всего массива
- int i,j;
- for (i=0;i<size;i++){
- printf("Строка %d: ",i);
- for (j=0;j<size;j++) printf("Элемент %2d:%3d ",j,array[i][j]);
- printf("\n");
- }
- }
- int **input_kbd(int **array, int size)
- {
- int i,j;
- //Ввод с клавиатуры
- for (i=0;i<size;i++)
- for (j=0;j<size;j++){
- scanf("%d",&array[i][j]);}
- return (array);
- }
- int **input_file(int **array, int size)
- {
- char file[255];
- int i,j;
- FILE *fn;
- //Ввод из файла
- printf("Введите имя файла\n");
- scanf("%s", file);
- getchar();
- fn = fopen (file,"r");
- if (fn == NULL)
- {printf("Неверное имя файла\n");
- return 0;}
- else
- {
- for (i=0;i<size;i++)
- for (j=0;j<size;j++)
- fscanf (fn, "%d", &array[i][j]);
- fclose(fn);
- return array;
- }
- }
- void main()
- {
- int size,k,l,var, i;
- int **arr;
- printf("Ввести размер квадратного массива\n");
- scanf("%d", &size);
- arr = calloc (size , sizeof(*arr));
- for (i=0;i<size;i++){
- (*(arr+i)) = malloc (size * sizeof(int));}
- printf("Как вы хотите ввести матрицу?\n");
- printf("1)из файла\n2)с клавиатуры\n");
- scanf("%d", &var);
- if (var == 1)
- input_file(arr,size);
- else input_kbd(arr,size);
- printf("Первоначальный массив:\n");
- output_mas(arr, size);
- work (&arr, k, l, size);
- printf("Конечный массив:\n");
- output_mas(arr, size);
- free (arr);
- }
Add Comment
Please, Sign In to add comment