c语言纠错

来源:百度知道 编辑:UC知道 时间:2024/05/21 08:19:39
#include<stdio.h>
void mian()
{

int i,t;
t=1
i=2

while(i<=9)

{
t=t*i;
i=i+1;

}
printf("%d\n",t);

}输出结果为什么是负的呢,若改成i<=100

就会得0,又是为什么?

怎么会是负数呢?
#include<stdio.h>
void main()
{

int i,t;
t=1;
i=2 ;
while(i<=9)
{
t=t*i;
i=i+1;
}
printf("%d\n",t);
}

362880
请按任意键继续. . .

改成100,int根本存不了那么大的数。
修改成double:
#include<stdio.h>
void main()
{

double i,t;
t=1;
i=2 ;
while(i<=100)
{
t=t*i;
i=i+1;
}
printf("%f\n",t);
}

93326215443944102000000000000000000000000000000000000000000000000000000000000000
000000000000000000000000000000000000000000000000000000000000000000000000000000.0
00000
请按任意键继续. . .

main()函数写错了.

去掉 void 看下