帮我看下这个有什么问题?
我是一名新的不能再新的新手,刚接触C没多长时间,老湿布置了一篇作业,求1!+2!+3!+……+n!,然后就写了一段代码,如下:#include <stdio.h>
#include <ctype.h>
int main(void)
{
long number=0L;
long sum=0L;
long k=0L;
char choice=0;
for( ; ;)
{
printf("请输入阶乘上限:");
scanf("%ld",&number);
for(long i=1;i<=number;)
{
k=1L;
for(long j=1L;j<=i;)
{
k=k*j;
++j;
}
sum+=k;
++i;
}
printf("%ld",sum);
printf("想再试试其它的数吗?请输入Y或N:");
scanf("%c",&choice);
choice=toupper(choice);
if(choice=='N')
break;
}
return 0;
}
但是里面的这个:
printf("想再试试其它的数吗?请输入Y或N:");
scanf("%c",&choice);
choice=toupper(choice);
if(choice=='N')
break;
总是不执行。
当输完一个数后就直接显示结果,然后就提示要在输入一个数字。
上面的直接不执行。
怎么回事啊?
高人帮忙看一下。