在简单的C程序中遇到麻烦

shr*_*3jn 3 c scanf

我有一个简单的C程序的问题.即使我输入1000到1999之间的年份,它仍然显示无效年份.请告诉我发生了什么事?

#include <stdio.h>

main()
{
    int year;
c:
    printf("\n\nEnter a Year: ");
    scanf("%d", year);

    if ((year < 1000) || (year > 1999))
    {
        printf("\n\nInvalid Year");
        goto c;
    }
    convert(year);

}
convert(int year)
{
    printf("%d", year);
}
Run Code Online (Sandbox Code Playgroud)

Ada*_*man 7

你需要传递一个地址scanf,即:

scanf("%d", &year);
Run Code Online (Sandbox Code Playgroud)

注意&符号.