Форум программистов, компьютерный форум, киберфорум
Наши страницы
C для начинающих
Войти
Регистрация
Восстановить пароль
Другие темы раздела
C (СИ) Описать свой тип http://www.cyberforum.ru/c-beginners/thread593014.html
Помогите переделать тип запись из Паскаля на Си. Как описываются структуры в си я понимаю, но не могу понять как мне описать свой тип, например в Паскале это делается так type <имя типа> = <значения...
Двоичное дерево поиска C (СИ)
Доброго времени суток! Если кто-то хорошо разбирается в деревьях - отзовитесь, пожалуйста! Нужно написать программу для работы по запросам оператора с упорядоченной таблицей, реализованной в виде...
C (СИ) кольцевая очередь
очередь в виде кольцевого массива. Если в очередь поступает положительное число, то её размер увеличивается на 1, если отрицательное - не меняется, а если ноль, то очистка очереди. никак не могу...
C (СИ) Вывести на печать все ее слова в порядке: все однобуквенные, двухбуквенные, трехбуквенные Дана текстовая строка. Вывести на печать все ее слова в таком порядке: все однобуквенные, потом все двухбуквенные, потом все трехбуквенные и т.д. до слова максимальной длины, используя функции... http://www.cyberforum.ru/c-beginners/thread592944.html
C (СИ) Арканоид (не работает проверка с столкновениями) http://www.cyberforum.ru/c-beginners/thread592903.html
Помогите пожалуйста с арканоидом вот собственно код: #include <stdlib.h> #include <stdio.h> #include <conio.h> #include <graphics.h> const int rowblok = 9; const int colblok = 19;
C (СИ) Вывести сначала летние месяцы, а затем — зимние
Условие задачи: Создать файл, содержащий названия всех месяцев го¬да. Вывести сначала летние месяцы, а затем - зимние. Добавлено через 10 часов 9 минут На языке СИ
Присвоение значений C (СИ)
#include <iostream> #include <conio.h> using namespace std; void main() { setlocale (0, ""); int A; int B;
C (СИ) Сохранения всего, что в консоли, в текстовый файл ребят, подскажите, может кто знает, как всё, что выводится в консоль(весь текст, и английский, и русский) записывать в файл! Делать так сказать своеобразный отчет о всех действиях, чтобы можно было... http://www.cyberforum.ru/c-beginners/thread592867.html
C (СИ) Даны действительные числа а1,..., аn.. Получить попарно различные целые j1,…,jn такие, что: http://www.cyberforum.ru/c-beginners/thread592847.html
Даны действительные числа а1,..., аn.. Получить попарно различные целые j1,…,jn такие, что 1jk n, k=1,…n и aj1aj2…ajn. Ошибки в 24,25,28 и 37 строках. # include <stdio.h> # include...
C (СИ) Завершение цикла при вводе "end", не работает программа Здравствуйте. Почему код не делает то, чего я от него прошу? Ну, то есть, прекращать ввод как только будет введено "end". #include <stdio.h> #define MAX_SIZE 80 main() { char *s =... http://www.cyberforum.ru/c-beginners/thread592808.html
slava0394
1 / 1 / 1
Регистрация: 05.12.2011
Сообщений: 39
01.06.2012, 12:36  [ТС] 0

Найти минимальный элемент матрицы M*N и переставить строку содержащую этот элемент с первой строкой

01.06.2012, 12:36. Просмотров 787. Ответов 2
Метки (Все метки)

Лучший ответ Сообщение было отмечено slava0394 как решение

Решение

C
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
# include <stdio.h>
# include <stdlib.h>
void Process(double*matr,int L,int N,int M);
 
 int main(void)
 {
     int N,M,L,i,j;
     double *matr;
     FILE*in=fopen("input.txt","r");
     FILE*out=fopen("output.txt","w");
     if(in==0) return -1;
     if(fscanf(in,"%d%d",&N,&M)!=2) return -1;
    L=N*M;
    matr=(double*)malloc(sizeof(double)*L);
    for(i=0;i<L;i++)
    {
        if(fscanf(in,"%lf",&matr[i])!=1)
        return -1;
    }
     Process(matr,L,N,M);
     for(i=0;i<N;i++)
     {
         for(j=0;j<M;j++)
         fprintf(out,"%.2lf ",matr[i*M+j]);
         fprintf(out,"\n");
     }
     fclose(in);
     fclose(out);
     free(matr);
     return 0;
 
 }
 void Process(double*matr,int L, int N,int M)
    {
    int i,j,k;
    double min,c;
    c=0;
    min=matr[0];
    for(i=0;i<N;i++)
        {
        for(j=0;j<M;j++)
            {
            if(matr[i*N+j]<min)
                {
                min=matr[i*N+j];
                k=i;
                }
            }
        }
    for(j=0;j<M;j++)
        {
        c=matr[k*N+j];
        matr[k*N+j]=matr[j];
Добавлено через 1 минуту
еще одно решение есть. вот оно правильное. у меня автоматизированный зачет и поэтому там все эти условия. ЧТО ТАКОЕ L?

Вернуться к обсуждению:
Найти минимальный элемент матрицы M*N и переставить строку содержащую этот элемент с первой строкой
0
QA
Эксперт
41792 / 34177 / 6122
Регистрация: 12.04.2006
Сообщений: 57,940
01.06.2012, 12:36
Готовые ответы и решения:

В матрице поменять местами строку, содержащую минимальный элемент, со строкой, содержащей максимальный элемент массива
Помогите пожалуйста поправить код... Задание:В двумерном N*K массиве целых чисел поменять местами...

Поменять местами строку матрицы, содержащую элемент с max значением, со строкой, содержащий элемент с min значением
Задача. В заданной действительной матрице с размерностью 3х4 поменять местами строку, содержащую...

Массивы и указатели: Поменять местами строку, содержащую максимальный элемент, со строкой, содержащей минимальный
дана действительная матрица размера nxm. Поменять местами строку, содержащую элемент с наибольшим...

Массивы и указатели: Поменять местами строку, содержащую максимальный элемент, со строкой, содержащей минимальный
дана действительная матрица размера nxm. Поменять местами строку, содержащую элемент с наибольшим...

Удалить из матрицы строку, содержащую ее минимальный элемент
Дана действительная матрица размером n*m. Удалить строку, содержащую минимальный элемент матрицы

2
КиберФорум - форум программистов, компьютерный форум, программирование
Powered by vBulletin® Version 3.8.9
Copyright ©2000 - 2019, vBulletin Solutions, Inc.
Рейтинг@Mail.ru