Форум программистов, компьютерный форум CyberForum.ru

Перестановка строк без цикла - C++

Войти
Регистрация
Восстановить пароль
Другие темы раздела
C++ Найти двузначные числа http://www.cyberforum.ru/cpp-beginners/thread76242.html
Найти двузначные числа для которых существуют трехзначные такие,что все их круговые перестановки цифр делятся на это двузначное число (наприм. для 864 число 48,для 486 - 27,648 - 36) (в С++)
C++ слова Ребята помогите решить задачу(срочно) В строке посчитать сколько слов начинаются с большой буквы. (если можно на максимально простом языке) http://www.cyberforum.ru/cpp-beginners/thread76238.html
Найти и заменить в тексте все предлоги на "!" C++
Задание: набрать текст в текстовом редакторе(5-10 строк по 40-60 символов); считать этот текст в программу; найти и заменить в тексте все предлоги на ! (кол-во восклицательных знаком должно быть равно числу символов в предлоге); Результаты работы программы записать в текстовый файл (я так понял другой) и вывести на экран. Ну считать текст из файла и запихнуть обработанный обратно мы еще не...
C++ Функции
Помогите пожалйсто решить задачи на языке С: Пользователь вводит построчно полные имена файлов. Завершение ввода – ввод пустой строки. Сгруппировать файлы по каталогам, в которых они находятся. Вывести на экран имя каталога, в котором находится больше всего файлов с расширением txt. Дан строковый массив. Размер и элементы массива вводятся пользователем. Упорядочить массив тремя ...
C++ Цикл... http://www.cyberforum.ru/cpp-beginners/thread76225.html
Задания такие: 1. Определить количество удвоенных нечетных чисел среди данных 150 целых чисел. 2. Перевести число из десятичной системы счисления в восьмеричную. плохо понел тему циклов видимо, а зачёт нужен( Borland C++
C++ передача массива в функциях есть 3 функции void gamebegin(int Mas) { Mas=100; } void DrawDiagram(HWND hWnd, HDC hdc,int Mas) { \\тут код подробнее

Показать сообщение отдельно
easybudda
Модератор
Эксперт С++
 Аватар для easybudda
9384 / 5434 / 916
Регистрация: 25.07.2009
Сообщений: 10,428
19.12.2009, 00:26     Перестановка строк без цикла
Цитата Сообщение от КуДрЯшЕчКа Посмотреть сообщение
дана произвольная матрица, записанная в файле, необходимо поменять местами две любые строчки этой матрицы, не используя цикл.
Что такое "произвольная матрица, записанная в файле" не понял. Вот Вам функция с примером работы, а дальше или сами, или пишите задание понятнее...
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
#include <stdio.h>
#include <stdlib.h>
#include <string.h>
 
#define ROWS 5
#define COLS 3
 
/* меняет между собой count элементов массивов a и b */
void swapArrays(int *a, int *b, size_t count){
    int *c;
    
    if ( !a || !b || !count )
        return;
    
    if ( ( c = (int*)calloc(count, sizeof(int)) ) == NULL ){
        perror("Bad memory!\n");
        exit(1);
    }
    
    memcpy(c, a, count * sizeof(int));
    memcpy(a, b, count * sizeof(int));
    memcpy(b, c, count * sizeof(int));
    
    free(c);
    return;
}
 
int main(void){
    int matr[ROWS][COLS];
    size_t row, col;
    
    /* заполнение массива - для наглядности */
    for ( row = 0; row < ROWS; ++row )
        for ( col = 0; col < COLS; ++col )
            matr[row][col] = row + 1;
    /* вывод */
    printf("\nOrigin:\n");
    for ( row = 0; row < ROWS; ++row )
        for ( col = 0; col < COLS; ++col )
            printf( ( col < COLS - 1 ) ? "%2d " : "%2d\n", matr[row][col]);
    /* обмен строк с индексами 1 и 3 */
    swapArrays(&matr[1][0], &matr[3][0], COLS);
    /* и снова вывод */
    printf("\nChanged:\n");
    for ( row = 0; row < ROWS; ++row )
        for ( col = 0; col < COLS; ++col )
            printf( ( col < COLS - 1 ) ? "%2d " : "%2d\n", matr[row][col]);
    exit(0);
}
 
Текущее время: 04:31. Часовой пояс GMT +3.
КиберФорум - форум программистов, компьютерный форум, программирование
Powered by vBulletin® Version 3.8.9
Copyright ©2000 - 2017, vBulletin Solutions, Inc.
Рейтинг@Mail.ru