Работа с массивом через пользовательские функции через указатели - C (СИ)
Формулировка задачи:
Не хочет работать ( Выводит только последний элемент массива ) Help!
#include <iostream> using namespace std; void vvod(int x, int *); void vyvod(int y, int *); int result(int z, int *); int main(void) { int n, massiv[40], *g; g = massiv; setlocale(0, "rus"); cout << "\t\tПрактическая №5 \t\t\n"; cout << "\tОписание: Ввести в память машины одномерный целочисленный массив,\n"; cout << "\tразмером не менее 30 элементов.Ввод осуществить с клавиатуры.\n"; cout << "\tПроизвести манипуляции с массивом данных согласно условию, предложенному в варианте задания.\n"; cout << "\tВывести на экран исходный массив и данные, полученные согласно заданию в варианте.\n"; cout << "\tВвод массива, манипуляции с массивом, вывод данных произвести через отдельные пользовательские функции.\n"; cout << "\tПервый вариант решения должен использовать обычную адресацию элементов массива.\n"; cout << "\tВторой вариант решения должен использовать адресацию элементов массива через указатели.\n\n"; cout << "\t\tПервый вариант\t\t\n"; cout << "Введите колличество элементов : "; cin >> n; while (n < 5) { cout << "Ошибка! Количество элементов должно быть не менее 30 элементов\n"; cout << "Введите колличество элементов : "; cin >> n; } vvod(n, g); vyvod(n, g); cout << "\nКоличество 3-x значных отрицательных элементов массива равно = " << result(n, g); cout << "\n"; g = &massiv[0]; } void vvod(int x, int *a) { cout << "\nВведите элементы массива :\n"; for (int i = 0; i<x; i++) cin >> *a; a++; } void vyvod(int y, int *a) { cout << "\nВы ввели массив :"; for (int i = 0; i<y; i++) cout << *a << " "; a++; } int result(int z, int *b) { int res = 0; for (int i = 0; i<z; i++) if (*b>-1000 && *b<-99) res++; b++; return res; }
Решение задачи: «Работа с массивом через пользовательские функции через указатели»
textual
Листинг программы
for (int i = 0; i < x; i++) { cin >> *a; a++; }
Объяснение кода листинга программы
В данном коде выполняется следующие действия:
- Создается переменная типа int с именем i и инициализируется значением 0.
- Создается переменная типа int с именем x и инициализируется значением, которое неизвестно на данном этапе (предполагается, что это значение было получено от пользователя или из другого источника данных).
- Создается переменная типа int с именем a и инициализируется значением, которое также неизвестно на данном этапе (предполагается, что это значение было получено от пользователя или из другого источника данных).
- Запускается цикл for, который будет выполняться до тех пор, пока значение переменной i меньше значения переменной x.
- Внутри цикла выполняется действие: ввод значения с помощью функции cin и сохранение этого значения в переменную *a. Здесь используется оператор индирекции (знак звездочки), который позволяет обращаться к элементу массива через указатель.
- После ввода значения переменной a увеличивается на 1, что позволяет перейти к следующему элементу массива.
- После завершения цикла выполняются действия, которые не были описаны в представленном коде (предполагается, что это могут быть действия, связанные с обработкой полученных данных).
ИИ поможет Вам:
- решить любую задачу по программированию
- объяснить код
- расставить комментарии в коде
- и т.д