Форум программистов, компьютерный форум, киберфорум
C для начинающих
Войти
Регистрация
Восстановить пароль
Карта форума Темы раздела Блоги Сообщество Поиск Заказать работу  
 
Рейтинг 4.57/7: Рейтинг темы: голосов - 7, средняя оценка - 4.57
0 / 0 / 0
Регистрация: 21.02.2013
Сообщений: 16
1

Поменять местами первую и вторую половины строки

23.05.2013, 22:57. Показов 1262. Ответов 1
Метки нет (Все метки)

Author24 — интернет-сервис помощи студентам
Поменять местами первую и вторую половины рядка

Вот то что получилось у меня, но почему-то не работает:
C
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
#include <stdio.h>
int main(){
    int m,k,t,a,i,d;
    int m[6]={1,2,3,4,5,6};
        m=n/2;
        if(n%2)k=m+1;
        else k=m;
        for(i=0;i<m;i++){
            t=a[i];
            a[i]=a[k+i];
            a[k+i]=t;
        }
    printf("%d!=%d",m);
    while(!kbhit());
    return 0;
}
0
Programming
Эксперт
94731 / 64177 / 26122
Регистрация: 12.04.2006
Сообщений: 116,782
23.05.2013, 22:57
Ответы с готовыми решениями:

Поменять местами первую и вторую половины массива
Задание: Задан массив. Задан номер барьерного элемента L, разделяющий массив на две части....

Как поменять местами строки в матрице? Первую и последнюю, вторую и предпоследнюю и.т.д
В матрице A(NxM) поменять местами строки так, чтобы перестановка выполнялась между первой с...

Строки верхней половины матрицы поменять местами со строками нижней половины
Дан двумерный массив из четного числа строк. Строки верхней половины массива поменять местами со...

Столбцы левой половины массива поменять местами со столбцами правой половины
1. Дан двумерный массив из четного числа столбцов. Столбцы левой половины массива поменять местами...

1
213 / 202 / 85
Регистрация: 09.05.2012
Сообщений: 494
24.05.2013, 17:43 2
C
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
#include <stdio.h>
#include <stdlib.h>
 
int main() {
    int x[] = { 0, 1, 2, 3, 4 };
    int i, size = 5;
    int middle = size >> 1;
    int shift = size % 2;
    int middle_elem = x[middle];
    for(i = 0; i < middle; i++){
        int t = x[i];
        x[i] = x[i + middle + shift];
        x[i + middle] = t;
    }
    if(shift) x[size - 1] = middle_elem;
    return 0;
}
Добавлено через 4 минуты
ps: а у вас не работает, как минимум, потому, что обьявлены два одинаковых идентификатора: int m; int m[6];
0
24.05.2013, 17:43
IT_Exp
Эксперт
87844 / 49110 / 22898
Регистрация: 17.06.2006
Сообщений: 92,604
24.05.2013, 17:43
Помогаю со студенческими работами здесь

Строки. Найти первую и последнюю цифры в строке и поменять местами
Никогда не работал со строками на Си. Помогите найти первую и последнюю цифры в строке и поменять...

Поменять местами половины массива
Заданный массив с четным количеством элементов. Поменять местами его половины.

Поменять местами половины элементов массива
Дан массив из четных чисел, нужно сместить его половины так, что бы первый элемент поменялся с...

Поменять местами левую и правую половины матрицы
Привет ребят! Помогите, пожалуйста, доделать вторую программку и подскажите с алгоритмом для...


Искать еще темы с ответами

Или воспользуйтесь поиском по форуму:
2
Ответ Создать тему
КиберФорум - форум программистов, компьютерный форум, программирование
Powered by vBulletin
Copyright ©2000 - 2024, CyberForum.ru