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

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

Войти
Регистрация
Восстановить пароль
 
dencil
10 / 10 / 12
Регистрация: 23.09.2013
Сообщений: 145
#1

Переделать индексное обращение к массиву в указательное - C++

13.05.2014, 19:35. Просмотров 177. Ответов 4
Метки нет (Все метки)

В общем есть задача:

Написать программу, которая выводит минимальный элемент введенного с клавиатуры массива целых чисел (состоящего из 6 элементов). Для доступа к элементам массива использовать указатель. Организовать вывод массива на экран.

Но я вроде бы написал с использованием арифметики указателей
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
#include "stdafx.h"
#include <iostream>
using namespace std;
int _tmain(int argc, _TCHAR* argv[])
{int A[6];
for(int i=0;i<6;i++)
{   
    cout<<"A["<<i+1<<"] = ";
    cin>>*(A+i);
}
    cout<<"\n";
for (int i=0;i<6;i++)
{
    cout<<"A["<<i+1<<"] = "<<*(A+i)<<"\n";
}
int min=*(A+0);
for(int i=0;i<6;i++)
{   
    if (min>*(A+i))
    {   
        min=*(A+i); 
    }
}
cout<<"min = "<<min<<"\n";
    return 0;
}
Не могли бы вы сделать обращение к элементам массива просто через указатель?
0
Надоела реклама? Зарегистрируйтесь и она исчезнет полностью.
Similar
Эксперт
41792 / 34177 / 6122
Регистрация: 12.04.2006
Сообщений: 57,940
13.05.2014, 19:35
Здравствуйте! Я подобрал для вас темы с ответами на вопрос Переделать индексное обращение к массиву в указательное (C++):

обращение к динамич массиву - C++
Задание:Дана целочисленная квадратная матрица. Определить сумму элементов в тех строках, которые не содержат отрицательных...

Обращение к массиву структур - C++
Структура объявлена в отдельной трансляции, там же объявлена функция заполнения двумерного массива структур, а по возвращении в main не...

ошибка в обращение к массиву - C++
Можете подсказать почему у меня выдает ошибки на строках Mas=(i*z*y+j*z+k); и cout &lt;&lt;Mas&lt;&lt;&quot;/t&quot;; в коде, я же вроде бы не...

Матрицы (обращение к двумерному массиву) - C++
Народ, решил на досуге для собственного использования создать класс матрица( пока пробный). Разумеется захотелось обращаться как к...

Обращение ко всему массиву в классах - C++
Всем привет. Есть класс: typedef unsigned int ui; class Location { private: std::string nameOfLocation; int...

Адресное обращение к массиву структур - C++
когда пробегаю по циклу, например, обращаюсь вот так: *(a+i).pole_1.pole_2 Так понел, что это неправильно. Как тогда, подскажите...

4
nmcf
5678 / 4989 / 1701
Регистрация: 14.04.2014
Сообщений: 20,350
13.05.2014, 19:42 #2
Сделай указатель на начало массива int *p = A; Затем в цикле просто увеличивай его p++; и обращайся *p.
1
zss
Модератор
Эксперт С++
6569 / 6131 / 2021
Регистрация: 18.12.2011
Сообщений: 15,983
Завершенные тесты: 1
13.05.2014, 19:44 #3
Примерно так
C++
1
2
3
4
5
6
7
int *pa=A;
int min=*pa;
for(;pa<A+6;pa++)
{   
    if (min>*pa)
        min=*pa; 
}
1
dencil
10 / 10 / 12
Регистрация: 23.09.2013
Сообщений: 145
13.05.2014, 19:55  [ТС] #4
Оно?
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
#include "stdafx.h"
#include <iostream>
using namespace std;
int _tmain(int argc, _TCHAR* argv[])
{int A[6];
    int *p = A;
for(int p=0;p<6;p++)
{   
    cout<<"A["<<p+1<<"] = ";
    cin>>A[p];
}
    cout<<"\n";
for (int p=0;p<6;p++)
{
    cout<<"A["<<p+1<<"] = "<<A[p]<<"\n";
}
int min=A[*p];
for(int p=0;p<6;p++)
{   
    if (min>A[p])
    {   
        min=A[p];   
    }
}
cout<<"min = "<<min<<"\n";
    return 0;
}
0
zss
Модератор
Эксперт С++
6569 / 6131 / 2021
Регистрация: 18.12.2011
Сообщений: 15,983
Завершенные тесты: 1
13.05.2014, 22:11 #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
#include <iostream>
using namespace std;
int main()
{
    int A[6];
    int *p = A;
    for(int i=0;i<6;p++,i++)
    {   
        cout<<"A["<<i<<"] = ";
        cin>>*p;
    }
    cout<<"\n";
    for (p=A;p<A+6;p++)
    {
          cout<<*p<<"\n";
    }
    pa=A;
    int min=*pa;
    for(;pa<A+6;pa++)
    {   
        if (min>*pa)
            min=*pa; 
    }
    cout<<"min = "<<min<<"\n";
    return 0;
}
0
13.05.2014, 22:11
MoreAnswers
Эксперт
37091 / 29110 / 5898
Регистрация: 17.06.2006
Сообщений: 43,301
13.05.2014, 22:11
Привет! Вот еще темы с ответами:

Обращение к массиву классов из из дочернего класса - C++
Здравствуйте уважаемые обитатели сего форума. Недавно начал изучать язык C++ и появился такой вопрос. Ничего толкового не смог нагуглить,...

Обращение к массиву по индексу, выходящему за его пределы - C++
Код: #include &lt;stdio.h&gt; #include &lt;string&gt; #include &lt;iostream&gt; #include &lt;fstream&gt; #define LINE &quot;\n ...

Обращение к массиву структур, почему именно так? - C++
Почему в не которых функциях к елементам структуры обращаются *invtry , а в других просто invtry? #include &lt;stdafx.h&gt; #include...

Обращение к массиву - Java SE
Всем доброго времени суток. Есть код, который при выполнение вызывает определенный магазин под номером 10001. Но только один: ...


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

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

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