Вывести на экран первый отрицательный элемент массива (одномерного) и его номер - C (СИ)
Формулировка задачи:
Я немного туплю с Си и не шибко представляю суть программы, если кто нибудь может - напишите пожалуйста программу по такому заданию:
Вывести на экран первый отрицательный элемент массива(одномерного) и его номер. Если отрицательных элементов нет - вывести на экран соответствующее сообщение.
Заранее благодарю за помощь.
Решение задачи: «Вывести на экран первый отрицательный элемент массива (одномерного) и его номер»
textual
Листинг программы
#include <stdio.h>
#include <stdlib.h>
#include <time.h>
#define SIZE 32
int get_rand(int n);
int main(void) {
int i;
int arr[SIZE];
/* Заполнение массива случайными числами */
for (i = 0; i < SIZE; ++i) {
arr[i] = get_rand(i);
}
/* Вывод массива */
for (i = 0; i < SIZE; ++i) {
printf("%d ", arr[i]);
}
printf("\n");
/* Поиск первого отрицательного числа */
for (i = 0; i < SIZE; ++i) {
if (arr[i] < 0) {
printf("The first negative integer is %d.\n", arr[i]);
break;
}
}
if (i == SIZE) {
printf("No negative integers.\n");
}
return EXIT_SUCCESS;
}
/* Генератор чисел от -100 до 512 */
int get_rand(int n) {
srand(n + time(NULL ));
return -100 + rand() % 512;
}
Объяснение кода листинга программы
Вывод:
- В этом коде определен массив arr типа int размером SIZE, который заполняется случайными числами с помощью функции get_rand(int n).
- Затем массив выводится на экран с помощью цикла for и функции printf.
- Далее, с помощью двух вложенных циклов for, ищется первый отрицательный элемент массива.
- Если такой элемент найден, то выводится сообщение
The first negative integer is X., где X - это найденный элемент. - Если в массиве не найдено ни одного отрицательного элемента, выводится сообщение
No negative integers.. - Код завершается возвратом EXIT_SUCCESS.
- Функция get_rand(int n) генерирует случайное число в диапазоне от -100 до 512.
- В этой функции используется функция rand(), которая инициализируется с помощью текущего времени (time(NULL)).
- Сгенерированное число затем приводится к типу int и возвращается.