用户输入一个整数就求一个阶乘,如果用户还想输入就再求阶乘,直到用户不想做的时候退出

来源:百度知道 编辑:UC知道 时间:2024/05/20 09:13:11
用户输入一个整数就求一个阶乘,如果用户还想输入就再求阶乘,直到用户不想做的时候退出
#include <stdio.h>
void main()
{
int a=1,sum=1,b;
char ch;
for(;;)
{
puts("请输入任意数字");
scanf("%d",&b);
while(a<=b)
{
printf("%d*%d=",a,sum);
sum=a*sum;
a++;
printf("%d\n",sum);
}
printf("%d阶乘数值为%d\n",b,sum);
a=0;

}
}
我已经写了这些,但是我在后面添加任何语句,都不会运行,我感觉很奇怪.请大家帮我想想应该怎么写下面的语句

加个DO WHILE即可实现楼主想要的效果。
定义变量类型char ch;
do
{
.......
.......//.表示你写好的语句块,不过把你的while的语句都去掉。
printf("是否继续<y/n>?");
fflush(stdin);
scanf("%c",&ch);
}while(ch=='y'||ch=='Y');

#include <stdio.h>

void main()
{
int a=1,sum=1,b;
char ch;
for(;;)
{
sum=1;
a=1;
puts("请输入任意数字");
scanf("%d",&b);
while(a<=b)
{
printf("%d*%d=",a,sum);
sum=a*sum;
a++;
printf("%d\n",sum);
}
printf("%d阶乘数值为%d\n",b,sum);

}
}