С Новым годом! Форум программистов, компьютерный форум, киберфорум
Наши страницы

С++ для начинающих

Войти
Регистрация
Восстановить пароль
 
Katrin156
0 / 0 / 0
Регистрация: 05.01.2010
Сообщений: 5
#1

Дан двумерный массив С[10][10], поменять местами элементы первого и последнего столбца, второго и предпоследнего и так далее - C++

05.01.2010, 13:21. Просмотров 1010. Ответов 9
Метки нет (Все метки)

Дан двумерный массив С[10][10], поменять местами элементы первого и последнего столбца, второго и предпоследнего и так далее.Помогите пожалуйста!
0
Надоела реклама? Зарегистрируйтесь и она исчезнет полностью.
Similar
Эксперт
41792 / 34177 / 6122
Регистрация: 12.04.2006
Сообщений: 57,940
05.01.2010, 13:21
Здравствуйте! Я подобрал для вас темы с ответами на вопрос Дан двумерный массив С[10][10], поменять местами элементы первого и последнего столбца, второго и предпоследнего и так далее (C++):

Поменять местами элементы первого и второго столбца матрицы - C++
я студент, 2курс. задали программу на C++. прошу помощи. я жил на диком востоке украины, из-за чего не мог учить. сейчас мне нужно быстро...

Поменять местами элементы первого и последнего столбцов матрицы - C++
2)Задана матрица целых чисел.Поменять местами элементы первого и последнего столбцов.

Поменять местами элементы первого столбца с элементами побочной диагонали. - C++
Дан двумерный квадратный массив. Поменять местами элементы первого столбца с элементами побочной диагонали. Заранее всем, кто...

Дан двумерный массив. Поменять местами 1 и 3 строки - C++
Нужно поменять местами 1 и 3 строки. Я сначала ввожу кол-во строк и столбцов, допустим 3 и 4. Затем задаю 12 чисел от 1 до 12. Сначала...

Односвязный список. Вывести сумму последнего элемента и первого, предпоследнего и последнего и т.д. - C++
Считываю с клавиатуры числа пока не встречаю 0. Например 1 3 7 5 8 1 0 Вывожу суму последнего элемента и первого, предпоследнего и...

поменять местами первый и последний элемент, второй и предпоследний и так далее - C++
Задан масив целых чисел.Распечатать преобразованный массив: поменять местами первый и последний элемент, второй и предпоследний и так...

9
Alex_C#
21 / 21 / 1
Регистрация: 25.12.2009
Сообщений: 86
05.01.2010, 13:31 #2
C++
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
int main()
{
    int C[10][10], d;
    //заполнение массива
    for(int j=0, j1=9; j<5; j++, j1--)
    {
        for(int i=0; i<10; i++)
        {
            d=C[i][j];
            C[i][j]=C[i][j1];
            C[i][j1]=d;
        }
    }
    return 0;
}
0
Katrin156
0 / 0 / 0
Регистрация: 05.01.2010
Сообщений: 5
05.01.2010, 14:31  [ТС] #3
что то я не поняла а как тут цмфра 5 фигурирует массив же 10 на 10

Добавлено через 11 минут
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
54
55
56
57
58
59
60
61
62
63
64
65
#include "stdafx.h"
#include "stdio.h"
#include "stdlib.h"
#include "time.h"
#include "conio.h"
#include "locale.h"
#define FNAME "D:\\n.txt.\0"\
 
void main()
{   
    FILE *fp;
    int C[10][10];
    int c[10][10];
    int i,j;
    
setlocale(LC_ALL, "rus");
if ((fp=fopen(FNAME,"wt"))==NULL)
       {
           printf ("ошибка");
getch ();
 
}
    srand(time(NULL));
    for(i=0;i<10;i++)
    {
        for(j=0;j<10;j++)
        {
            C[i][j] = rand()%100;
            printf("%2i ",C[i][j]);
        }
        printf("\n");
    }
 
for(i=0;i<10;i++)
{
        for(j=0;j<10;j++)
        {
            c[i][j]=C[i][j];
        }
}
for(i=0;i<10;i++)
{
    for(j=0;j<10;j++);
    {
    
    }
printf("\n");
printf("Полученный массив:\n");
printf("\n");
 
    for(i=0;i<10;i++)
    {
        for(j=0;j<10;j++)
        {
            printf("%2i ",c[i][j]);
            fprintf(fp,"%2i ",c[i][j]);
            
        }
    
printf("\n");
fprintf(fp,"\n");
    }
fclose(fp);
getch();
}
я вот так сделала ток не знаю как условие записать там где пустое место оставила
0
kazak
3050 / 2371 / 160
Регистрация: 11.03.2009
Сообщений: 5,436
Завершенные тесты: 1
05.01.2010, 15:26 #4
C++
1
2
3
4
5
6
7
8
9
for (int i = 0; i < size; i++)
{
   for (int j = 0; j < size/2; j++)
   {
      tmp = c[i][j];
      c[i][j] = c[i][size-j-1];
      c[i][size-j-1] = tmp;
   }
}
size - размер массива.
0
Katrin156
0 / 0 / 0
Регистрация: 05.01.2010
Сообщений: 5
06.01.2010, 18:57  [ТС] #5
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
54
55
56
57
58
59
60
61
#include "stdafx.h"
#include "stdio.h"
#include "stdlib.h"
#include "time.h"
#include "conio.h"
#include "locale.h"
#define FNAME "D:\\n.txt.\0"\
 
void main()
{   
    FILE *fp;
    int C[10][10];
    int tmp;
    int i,j;
    
setlocale(LC_ALL, "rus");
if ((fp=fopen(FNAME,"wt"))==NULL)
       {
           printf ("ошибка");
getch ();
 
}
    srand(time(NULL));
    for(i=0;i<10;i++)
    {
        for(j=0;j<10;j++)
        {
            C[i][j] = rand()%100;
            printf("%i ",C[i][j]);
        }
        printf("\n");
    }
 
    for (int i = 0; i < 10; i++)
{
   for (int j = 0; j < 10/2; j++)
   {
      tmp = C[i][j];
      C[i][j] = C[i][10-j-1];
      C[i][10-j-1] = tmp;
   }
}
 
printf("\n");
printf("Полученный массив:\n");
printf("\n");
    for(i=0;i<10;i++)
    {
        for(j=0;j<10/2;j++)
        {
            printf("%i ",tmp[i][j]);
            fprintf(fp,"%i ",tmp[i][j]);
            
        }
    
printf("\n");
fprintf(fp,"\n");
    }
fclose(fp);
getch();
}
сделала не работает 2 ошибки
0
kazak
3050 / 2371 / 160
Регистрация: 11.03.2009
Сообщений: 5,436
Завершенные тесты: 1
06.01.2010, 19:04 #6
Цитата Сообщение от Katrin156 Посмотреть сообщение
for(j=0;j<10/2;j++)
{
printf("%i ",tmp[i][j]);
fprintf(fp,"%i ",tmp[i][j]);
}
Во-первых откуда у нас взялся массив tmp?)
Во-вторых j<10/2; используем только для обмена, для вывода пишем стандартно j<10;
0
Katrin156
0 / 0 / 0
Регистрация: 05.01.2010
Сообщений: 5
07.01.2010, 15:35  [ТС] #7
ну ставила я и просто 10 и 10/2 и там где tmp ставила С всё равно вылазит две ошибки


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
54
55
56
57
58
59
60
61
#include "stdafx.h"
#include "stdio.h"
#include "stdlib.h"
#include "time.h"
#include "conio.h"
#include "locale.h"
#define FNAME "D:\\n.txt.\0"\
 
void main()
{   
    FILE *fp;
    int C[10][10];
    int tmp;
    int i,j;
    
setlocale(LC_ALL, "rus");
if ((fp=fopen(FNAME,"wt"))==NULL)
       {
           printf ("ошибка");
getch ();
 
}
    srand(time(NULL));
    for(i=0;i<10;i++)
    {
        for(j=0;j<10;j++)
        {
            C[i][j] = rand()%100;
            printf("%i ",C[i][j]);
        }
        printf("\n");
    }
 
    for (int i = 0; i < 10; i++)
{
   for (int j = 0; j < 10/2; j++)
   {
      tmp = C[i][j];
      C[i][j] = C[i][10-j-1];
      C[i][10-j-1] = tmp;
   }
}
 
printf("\n");
printf("Полученный массив:\n");
printf("\n");
    for(i=0;i<10;i++)
    {
        for(j=0;j<10;j++)
        {
            printf("%i ",С[i][j]);
            fprintf(fp,"%i ",С[i][j]);
            
        }
    
printf("\n");
fprintf(fp,"\n");
    }
fclose(fp);
getch();
}
0
easybudda
Модератор
Эксперт CЭксперт С++
9699 / 5649 / 964
Регистрация: 25.07.2009
Сообщений: 10,871
07.01.2010, 16:00 #8
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
#include <stdio.h>
    
/* Дан двумерный массив С[10][10], 
    поменять местами элементы первого и последнего столбца, второго и предпоследнего и так далее. */
#define ROWSIZE 10
int main(void){
    int matr[ROWSIZE][ROWSIZE], tmp;
    size_t i, j, k;
    
    /* для наглядности */
    for ( i = 0; i < ROWSIZE; ++i )
        for ( j = 0; j < ROWSIZE; ++j )
            matr[i][j] = j;
    printf("\nOrigin:\n");
    for ( i = 0; i < ROWSIZE; ++i )
        for ( j = 0; j < ROWSIZE; ++j )
            printf( ( j < ROWSIZE - 1 ) ? "%d " : "%d\n", matr[i][j]);
    
    for ( i = 0; i < ROWSIZE; ++i ){
        for ( j = 0, k = ROWSIZE - 1; j < k; ++j, --k ){
            tmp = matr[i][j];
            matr[i][j] = matr[i][k];
            matr[i][k] = tmp;
        }
    }
    
    printf("\nProcessed:\n");
    for ( i = 0; i < ROWSIZE; ++i )
        for ( j = 0; j < ROWSIZE; ++j )
            printf( ( j < ROWSIZE - 1 ) ? "%d " : "%d\n", matr[i][j]);
    
    return 0;
}
0
Katrin156
0 / 0 / 0
Регистрация: 05.01.2010
Сообщений: 5
14.01.2010, 19:00  [ТС] #9
А можно доделать мою программу?А то тут я не особо понимаю
0
easybudda
Модератор
Эксперт CЭксперт С++
9699 / 5649 / 964
Регистрация: 25.07.2009
Сообщений: 10,871
14.01.2010, 19:15 #10
Цитата Сообщение от Katrin156 Посмотреть сообщение
А можно доделать мою программу?А то тут я не особо понимаю
А Вы скомпилируйте и запустите - так понятнее будет.
А в Вашей программе мне и самому многое не понятно...

Цитата Сообщение от Katrin156 Посмотреть сообщение
#define FNAME "D:\\n.txt.\0"\
это что? проще надо быть
#define FNAME "D:\\n.txt"
0
14.01.2010, 19:15
MoreAnswers
Эксперт
37091 / 29110 / 5898
Регистрация: 17.06.2006
Сообщений: 43,301
14.01.2010, 19:15
Привет! Вот еще темы с ответами:

Дан двумерный массив, поменять элементы относительно главной диагонали - C++
Дан, Двумерный масив Н*М(3*3) , поменять эл-нты относительно главной диагонали. #include &lt;iostream.h&gt; const int n=3,m=3; void...

Дан двумерный массив. Вывести на экран все элементы s-го столбца массива, большие k - C++
Дан двумерный массив. Вывести на экран все элементы s-го столбца массива, большие k.

Создать двумерный массив и поменять в нем местами четные и нечетные элементы - C++
написать двумерный массив и поменять в нем местами четные и нечетные элементы

Дан двумерный массив. Преобразовать его так, чтобы новый массив содержал элементы старого, циклически сдвинутые на 2 элемента влево. - C++
Уважаемые форумчане, такая проблема, не знаю как решить задачу, в моём городе мне не к кому обратиться с ней, все либо уже забыли либо...


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

Или воспользуйтесь поиском по форуму:
10
Ответ Создать тему
Опции темы

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