Найти количество элементов ,равных 0 и сумму элементов массива, распол-ых после минимального элемента - C (СИ)
Формулировка задачи:
Я написала программу с двумя элементами ввода массивов, но результат выводит не неверный и после выбора ручного ввода программа вылетает. Помогите пожалуйста
#include<stdio.h>
#include<stdlib.h>
#include<locale.h>
#include<time.h>
#include<math.h>
#include<conio.h>
#define N 500
#define MIN 80
int main(void)
{
setlocale (0, "rus");
int a[N],n,i, min=a[0], nummin=0, sum=0, nol=0, k;
srand((unsigned)time(NULL));
printf ( " Определите характер заполнения: 1- автоматическое, 2- вручную");
printf("\n");
scanf("%d",&k);
switch(k)
{ case 1:
{
printf("vvedite n - ");
scanf("%d",&n);
for (i=0; i<n; i++)
{
a[i]=rand()%30-8;
printf("%4d", a[i]);
} break;}
case 2:
{printf("Введите 5 элементов\n");
for(i=0; i<5; i++)
{
printf (" Введите элемент массива mas[i]");
scanf("%d", &a [i]);
} break;}
default:
printf("номер введён неверно"); getch(); return 0;
}
for (i=0; i<n; i++)
{
if (a[i]==0)
{
nol=nol+1;
}}
printf("\n");
printf("Количество элементов равных нулю - %d",nol);
for (i=0; i<n; i++)
if (min>a[i])
{
printf("\n");
min=a[i];
nummin=i;}
for (i=nummin+1; i<n; i++)
sum=sum+a[i];
printf("min=%d\nsum=%d\n",min,sum);
getchar();
return 0;
}Решение задачи: «Найти количество элементов ,равных 0 и сумму элементов массива, распол-ых после минимального элемента»
textual
Листинг программы
n=5;
Объяснение кода листинга программы
- Объявляется переменная
nи присваивается ей значение 5. - Инициализируется массив
aразмером 5. - Задаются значения элементов массива
a. - Вычисляется количество элементов массива
a, равных 0. - Вычисляется сумма элементов массива
a, расположенных после минимального элемента.