Моя основная проблема - написать программу на C, которая использует функцию void
с пятью аргументами: массив типа integer T[]
, его размер M
, целое число P
, другое целое число N
иеще один Null_nbr
.
Я НЕ ДЛЯ ИСПОЛЬЗОВАНИЯ ГЛОБАЛЬНЫХ ПЕРЕМЕННЫХ, и ДЛЯ ИСПОЛЬЗОВАНИЯ УКАЗАТЕЛЕЙ (потому что я сделал это уже без указателей).
Программа, которую я пишу, не возвращает никаких ошибок или предупреждений, но она не 'т работа! Я буду признателен, если кто-нибудь скажет мне, где проблема в моей программе.
#include<stdio.h>
void function(int [], int , int *, int *, int *);
int main() {
int M, t[M] , i, P, N, Null_nbr;
printf("enter the size of your array");
scanf("%d", &M);
printf("\n enter the array's elements");
for(i = 0; i < M; i++) {
scanf("%d", &t[i]);
}
function(t, M, &P, &N, &Null_nbr);
}
void function(int t[], int M, int *P, int *N, int *Null_nbr) {
int i;
*P=0;
*N=0;
*Null_nbr=0;
for(i = 0; i < M; i++){
if(t[i] == 0)
(*Null_nbr)++;
else if (t[i] < 0)
(*N)++;
else
(*P)++;
}
printf("\n P = %d N = %d and Null=%d", P, N, Null_nbr);
}