WHILE语句求N的阶乘出不了结果了,求救~
#include "stdio.h"void main()
{
int i,n,sum;
printf("请输入一个数:");
scanf("%d",&n); //从键盘获得一个数
while(i<=n)
{
i=1;
sum=1; //给I和SUM赋个初始值
sum=i*sum; //I循环相乘结果放入SUM中
}
printf("%d",sum);
}
又不能出结果了,我晕。。
----------------解决方案--------------------------------------------------------
#include "stdio.h"
void main()
{
int i,n,sum;
printf("请输入一个数:");
scanf("%d",&n); //从键盘获得一个数
while(i<=n)/*i没有赋初值就使用了*/
{
i=1;
sum=1; //给I和SUM赋个初始值
sum=i*sum; //I循环相乘结果放入SUM中
}
printf("%d",sum);
}
----------------解决方案--------------------------------------------------------
恩恩,我去试下看看,谢谢,正确结果我等会发过来给你看看
----------------解决方案--------------------------------------------------------
#include "stdio.h"
void main()
{
int i,n,sum;
i=1;
sum=1;
printf("请输入一个数:");
scanf("%d",&n); //从键盘获得一个数
while(i<=n)
{
sum=i*sum; //I循环想乘结果放入SUM中
}
printf("%d",sum);
}
还是没有结果。。不知道错在哪了呢~
----------------解决方案--------------------------------------------------------
#include "stdio.h"
void main()
{
int i,n,sum;
i=1;
sum=1;
printf("请输入一个数:");
scanf("%d",&n); //从键盘获得一个数
while(i<=n)
{
sum=i*sum; //I循环想乘结果放入SUM中
i++;
}
printf("%d",sum);
}
----------------解决方案--------------------------------------------------------
这么低级的错误都犯了,我晕了。。
----------------解决方案--------------------------------------------------------
小弟不才刚学C语言,说的不对的请指点.
楼主的程序好像有问题,while(i<=n)这句好像有问题因为在这语句之前只给N赐值了,i并没有赐值.
所以这句的意思是判断N等于或大于i的ASCII码值.
----------------解决方案--------------------------------------------------------
你还叫刚学啊,你说的是什么我都听不懂啊~
----------------解决方案--------------------------------------------------------
你每次循环都把i和num赋初值了,能出结果就怪了
----------------解决方案--------------------------------------------------------
我才是刚学的呢
你们说的什么真的听不懂啊
----------------解决方案--------------------------------------------------------