帮帮我!!!!!!!///////

来源:百度知道 编辑:UC知道 时间:2024/05/31 14:21:02
求1*2*3.....100
#include<stdio.h>
main()
{int a,i,t;
for(i=1,i<=100,i++);
a=1;
t=a*i;
printf("%d",t)
}
我哪错了呀谢谢了
double 是什么意思呀

#include <stdio.h>
void main()
{
int i;
double t=1;
for(i=1;i<=100;i++)
t=t*i;
printf("%lf",t);
}

#include <stdio.h>
void main()
{
double t=1,i; //double 是双精度类型,
for(i=1;i<=100;i++)
t=t*i;
printf("%lf",t);
}
//double 是双精度类型,int是整形他的范围是-32768——32768,而100!是很大的数,所以int的范围不够了,应该改为double类型,它的范围是-1.7的-308次幂——1.7的308次幂。

for循环应该写作:
for(i = 1 ; i <= 100 ; i++); //for中间的东西用分号隔开
printf()后面少了;(分号)
这是语法上的错误

逻辑上也存在问题:
t = 1;
for (i = 1; i <=100 ; i++)
t = t * i;

完整程序:
#include<stdio.h>
int main()
{
int i,t;

t = 1;
for (i = 1; i<=100; i++)
t = t * i;
printf("%d", t);

return 0;
}

#include<stdio.h>
main()
{
int a=1,i;//可以直接在定义时赋值;
for(i=1,i<=100,i++)
{
a=a*i; //写在fo