1

私のプログラムは、すべての出力に対して「うるう年です」と表示しています。どこでエラーを犯しているのか教えてください??

#include<stdio.h>
#include<conio.h>

void main()
{
int a;
clrscr();
printf("\n Enter the year : ");
scanf("%d",a);

if (a%400 == 0)
printf("\n It is a leap year");

else
if (a%100 == 0)
printf("\n It is not a leap year");

else
if (a%4 == 0)
printf("\n It is a leap year");

else
printf("\n It is not a leap year");


getch();

}

4

3 に答える 3

4

この関数では、変数のアドレスscanf()を渡す必要があります。

scanf("%d",&a);
于 2012-06-14T08:28:21.517 に答える
0

scanf("%d", a);scanf 行を に編集してくださいscanf("%d",&a);。値ではなく、a のアドレスを渡す必要があります。

于 2012-06-14T08:30:19.557 に答える
0

「&」を忘れました:

scanf("%d",&a);

そのため、何を入力しても、最初の値は常に「a」が = 0 であるため、true として返されます。

于 2012-06-14T08:31:06.100 に答える