Сохраните значение массива от пользователя и распечатайте его там, где он хранится (используя только массив и forloop) - PullRequest
0 голосов
/ 25 сентября 2019

Я сделал программу, которая спрашивает, сколько элементов должно быть введено в массив, поэтому, если пользователь вводит 3, он запросит значение для сохранения в массиве, а затем программа снова запросит ввод, "введитечисло ".

Если пользователь вводит значение, которое уже сохранено в массиве, оно должно отображать, например," введенное вами число уже сохранено в массиве ".


Мой профессордает нам эту задачу, и он сказал, что мы должны использовать только массив и цикл.Я новичок в этом компьютерном программировании, в настоящее время изучаю программирование 1-го курса колледжа.Было бы здорово, если бы кто-то мог мне помочь.

int main()
{
   int Array[50], i, Number;
   int cont;

  printf("\nPlease Enter Number of elements in an array  :  ");
  scanf("%d", &Number);

  printf("\nPlease Enter %d elements of an Array \n", Number);
  for (i = 0; i < Number; i++)
   {
     scanf("%d", &Array[i]);

   }
 printf("ENTER NUMBER: ");
 scanf("%d", &cont);

 if(cont = Array[0]){
    printf("the number you input is stored in array# %d", Array[1]);
 }


}

ожидаемый вывод должен быть примерно таким

Please Enter Number of elements in an array: 3
Please Enter 3 elements of an Array
10
20
30
ENTER NUMBER:20

the number you input is stored in array# 1

Но вывод в моем коде такой.

Please Enter Number of elements in an array: 3
Please Enter 3 elements of an Array
10
20
30
ENTER NUMBER:20

the number you input is stored in array# 20

1 Ответ

1 голос
/ 25 сентября 2019

У вас есть общая ошибка в вашей программе:

 if(cont = Array[0]){
    printf("the number you input is stored in array# %d", Array[1]);
 }

вы перезаписываете cont с Array[0].То, что вы хотели сказать:

 if(cont == Array[0]){
    printf("the number you input is stored in array# %d", Array[1]);
 }

Кроме того, вы должны проверять не только, совпадает ли число (cont) с первой записью в массиве, но и все записи, например:

for (int i = 0; i < Number; ++i) {
     if(cont == Array[i]){
        printf("the number you input is stored in array# %d", i);
        break;
     }
}

Если номер не найден, ничего не печатается.

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...