%d和%ld输出的不同
两段一样的代码 ,只是输出%ld和%d的差别 为什么一个能通过,一个不能通过,但是显示出来的答案是相同的#include<stdio.h>
int main()
{
int n,i;
long a=1;
scanf("%d",&n);
if(n==0) printf("0!=0");
else {
for(i=1;i<=n;i++)
a=a*i;
printf("%d!=%ld[/u][/u][/code]",n,a);
}
return 0;
}
#include<stdio.h>
int main()
{
int n,i;
long a=1;
scanf("%d",&n);
if(n==0) printf("0!=0");
else {
for(i=1;i<=n;i++)
a=a*i;
printf("%d!=%d",n,a);
}
return 0;
}