Моя функция не работает должным образом. Программа запускается, но когда она попадает в цикл for, функция не работает и останавливает программу, даже если предполагается, что она продолжает цикл. Если бы вы могли проверить мою функцию массива и сказать мне, если есть что-то, что я не понимаю или делаю правильно.
Спасибо за ваше время.
Я точно знаю, что цикл не проблема, потому что когда я удаляю функцию, она работает нормально. Я также попытался поместить 'b' в параметре массива функций, например, "int Array (int a [b], int b, int c);"
#include <stdio.h>
#include <stdlib.h>
/*Function*/
int Array(int a[], int b, int c);
/*Main Program*/
int main()
{
int S, C, *A, *B;
printf("How Many Numbers Would You Like in Array A and B? ");
scanf("%d\n", & S);
/*For Loop Asking The User to Enter a Value and using the Array function to calculate/store the B[] Value*/
for (C=0; C<=S; ++C){
printf("\nWhat is A[%d] ", C);
scanf("%d", & A[C]);
B[C] = Array(A, S, C);
}
}
/*Function*/
int Array(int a[], int b, int c)
{
if (a[c] < 0){
return a[c] * 10;
} else {
return a[c] * 2;
}
}
Ожидаемые результаты:
Программа просит пользователя ввести размер массива, который будет использоваться для * A и * B
Программа использует цикл for, чтобы попросить пользователя ввести значение для каждой позиции в массиве * A, используя это значение для вычисления значения для каждой подходящей позиции B
Фактические результаты:
Программа просит пользователя ввести размер массива, который будет использоваться для * A и * B
Программа использует цикл for, чтобы попросить пользователя ввести значение для каждой позиции в массиве * A, программа запрашивает у пользователя одно значение и затем останавливается.