Найти первый отрицательный элемент массива - C (СИ)
Формулировка задачи:
Нужно ввести массив с клавиатуры и заменить нечетные элементы нулями, и вывести индекс первого отрицательного элемента. Сижу весь вечер, нифига не выходит. Точнее, выходит ужас типа
Что делать?
#include <iostream.h> #include <stdafx.h> using namespace std; int main() { setlocale(LC_ALL, "RUS"); int n, *mas, k = 0; printf("Введите размер массива:\n",n); scanf_s("$d",%n); mas = new int [n]; for(int i = 0; i < n; i++) { printf("Введите размер массива:\n",i); scanf_s("$d",%mas[i]); } for(int i = 0; i < n; i++) { if(mas[i] < 0) { k = i; break; } } printf("Индекс первого отрицательного элемента:\n",k); for(int i = 0; i < n; i++) { if(mas[i] < 0) { mas[i] = 0; } } for(int i = 0; i < n; i++) { printf(" элемент:\n",i); printf("mas[i]",i); } return 0; }
Решение задачи: «Найти первый отрицательный элемент массива»
textual
Листинг программы
#include <stdio.h> #include <conio.h> #include <locale.h> int main() { setlocale(LC_ALL, "RUS"); int i,n, *mas, k = -1; printf("Введите размер массива:"); scanf("%d",&n); mas = new int[n]; for(i = 0; i < n; i++) { printf("Введите %d-й элемент массива:",i); scanf_s("%d",&mas[i]); } for(i = 0;i < n; i++) { if(mas[i] < 0) { k = i; break; } } if(k==-1) puts("Отрицательных элементов нет\n"); else printf("Индекс первого отрицательного элемента:%d\n",k); for(i = 0; i < n; i++) { if(mas[i]%2 != 0) //нечетные не делятся на 2 { mas[i] = 0; } } puts("массив после замены нечетных элементов на нули:"); for(int i = 0; i < n; i++) printf("%d ",mas[i]); delete[] mas; puts(""); getch(); return 0; }
Объяснение кода листинга программы
В этом коде выполняются следующие действия:
- Включаются необходимые заголовочные файлы.
- Устанавливается русская локаль.
- Определяются переменные:
- i - используется для обозначения индекса элемента массива;
- n - используется для обозначения размера массива;
- mas - используется для обозначения адреса массива;
- k - используется для обозначения индекса первого отрицательного элемента массива;
- mas - используется для ввода-вывода значений.
- Пользователю предлагается ввести размер массива.
- Динамически выделяется память под массив.
- Заполняется массив значениями от пользователя.
- Первый отрицательный элемент массива сохраняется в переменной k.
- Если в массиве нет отрицательных элементов, выводится соответствующее сообщение.
- Если в массиве есть отрицательные элементы, выводится сообщение с индексом первого отрицательного элемента.
- Все четные элементы массива заменяются на 0.
- Выводится сообщение о массиве после замены нечетных элементов на нули.
- Массив освобождается от выделенной под него памяти.
- Отображается клавиша для закрытия консоли.
- Возвращается 0, чтобы указать, что программа успешно завершилась.
ИИ поможет Вам:
- решить любую задачу по программированию
- объяснить код
- расставить комментарии в коде
- и т.д