Понедельник, 29.04.2024, 00:32
"I-School" - школа знаний XXI века
     In doing we learn
Главная | Регистрация | Вход Приветствую Вас Гость | RSS
Форма входа
Категории раздела
Пользователь ПК [0]
WEB-дизайн [0]
Программирование [18]
Корзина
Пользователь ПК [0]
WEB-дизайн [0]
Программирование [18]
Поиск
Друзья сайта
  • Официальный блог
  • Сообщество uCoz
  • FAQ по системе
  • Инструкции для uCoz
  • Статистика

    Онлайн всего: 1
    Гостей: 1
    Пользователей: 0
    Главная » Статьи » Информатика, программирование » Программирование

    Динамический двумерный массив в С++, работа с указателями
    #include <iostream>
    #include <ctime>
    using namespace std;
     
    void inp(int** x,int n);
    void out(int** x,int n);
    void replace(int** x,int n);
     
     
    int main()
    {
     int n;
     cout<<"n=";
     cin>>n;
     int** x=new int*[n];
     
     for(int i=0;i<n;i++)
     x[i]=new int[n];
     
     inp(x,n);
     out(x,n);
     replace(x,n);
     cout<<endl<<endl;
     out(x,n);
     
     for(int i=0;i<n;i++)
     delete[] x[i];
     
     delete[] x;
     return 0;
    }
     
    void inp(int** x,int n)
    {
     srand(time(0));
     for(int i=0;i<n;i++)
     for(int j=0;j<n;j++)
     *(*(x+i)+j)=rand()%10;
    }
     
    void out(int** x,int n)
    {
     for(int i=0;i<n;i++)
     {
     for(int j=0;j<n;j++)
     cout<<*(*(x+i)+j)<<" ";
     cout<<endl;
     }
     
    }
     
    void replace(int** x,int n)
    {
     int buff;
     for(int i=0;i<n;i++)
     for(int j=0;j<i;j++)
     {
     buff=*(*(x+i)+j);
     *(*(x+i)+j)=*(*(x+j)+i);
     *(*(x+j)+i)=buff;
     }
    }
    Категория: Программирование | Добавил: IrineK (15.03.2011)
    Просмотров: 3996 | Теги: обучение C/C++/CLI, программирование С++, задача бесплатно | Рейтинг: 0.0/0
    Всего комментариев: 0
    Добавлять комментарии могут только зарегистрированные пользователи.
    [ Регистрация | Вход ]
    Copyright MyCorp © 2024
    Конструктор сайтов - uCoz