Указатели. Найти количество элементов массива, которые больше 100, меньше 100, равны 100 - C (СИ)
Формулировка задачи:
Разработать функцию,которая находит количество элементов массива,которые больше 100,меньше 100, равно 100
Не могу вывести количество!!!
#include <stdio.h>
#include<locale.h>
#define MAX 100
void max_min_equal(int a[],int n,int *max,int *min,int *equal,int *k,int *l,int *m);
int main(){
setlocale(LC_CTYPE,"rus");
int b[MAX],i,big,small,peer;
int N;
int k,l,m;
printf("Введите размерность:\n");
scanf("%d",&N);
setlocale(LC_CTYPE,"rus");
printf("Введите числа\n");
for(i=0;i<N;i++)
scanf("%d",&b[i]);
max_min_equal(b,N,&big,&small,&peer,&k,&l,&m);
printf("Больше 100 %d %d\n",big,k);
printf("Меньше 100 %d %d\n",small,l);
printf("Равно 100 %d %d\n",peer,m);
return 0;
}
void max_min_equal(int a[],int n,int *max,int*min,int*equal,int *k,int *l,int *m){
int i;
*k=0;
*l=0;
*m=0;
*max=*min=*equal=a[0];
for (i=1;i<n;i++){
if(a[i]>100){
*max=a[i];
}*k++;
else if(a[i]<100){
*min=a[i];
}*l++;
else if(a[i]==100){
*equal=a[i];
}*m++;
}}Решение задачи: «Указатели. Найти количество элементов массива, которые больше 100, меньше 100, равны 100»
textual
Листинг программы
#define MAX 100
void max_min_equal(int *a,int n,int &max,int &min,int &equal,int &k,int &l,int &m){
int i;
k=l=m=0;
max=min=equal=a[0];
for(i = 0; i < n; i++){
if(a[i] > MAX){
k++;
} else if(a[i] < MAX){
l++;
} else {
m++;
}
if(max < a[i]){
max = a[i];
}
if(min > a[i]){
min = a[i];
}
}
}
int main()
{
setlocale(LC_CTYPE,"rus");
int b[MAX],i,big,small,peer;
int N;
int k,l,m;
printf("Введите размерность:\n");
scanf_s("%d",&N);
setlocale(LC_CTYPE,"rus");
printf("Введите числа\n");
for(i=0;i<N;i++)
scanf_s("%d",&b[i]);
max_min_equal(b,N,big,small,peer,k,l,m);
printf("Больше 100 %d %d\n",big,k);
printf("Меньше 100 %d %d\n",small,l);
printf("Равно 100 %d %d\n",MAX,m);