Программа Simple C печатает переменную как 6356748 последовательно после того, как переменная должна сканировать - PullRequest
0 голосов
/ 09 февраля 2019

Я пишу программу и хочу предложить пользователю ввести числовое значение, а затем сразу же распечатать его.Проблема в том, что независимо от числа, которое я ввожу, переменная всегда печатается как 6356748.

Вот код:

#include <stdio.h>

int main(){
    int days;
    printf("How many days will you be observing your crew?\n");
    scanf("%d",&days);
    printf("%d\n",&days);
    return 0;
}

Возврат одинаков для любого ввода (даже букв);Он просто печатает f, принимает пользовательский ввод и возвращает 6356748.

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

Я хочу знать, как заставить scanf фактически назначить ввод переменной и заставить программу прекратить печатать то же большое значение.Если это поможет, я использую кодовые блоки.Заранее спасибо

1 Ответ

0 голосов
/ 09 февраля 2019

Вы печатаете адрес переменной ... Вот исправление:

printf("%d\n", days);
...