#include
int main()
{
int num,a;
printf("please input a number: \n");
scanf("%d",&num);
while(num<=3)
{
if(num=1)
return(0);
else if(num=2)
{
printf("请输入一个整数: \n");
scanf("%d",a);
int i=1,result=1;
while(i<=a)
{
result=result*i;
i++;
}
printf("%d\n",result);
}
else
{
printf("请输入一个整数: \n");
scanf("%d",a);
if(a==2)
printf("%d是质数\n",a);
else if(a>2)
{
int i;
for(i=2;iif(num%i==0)
break;
}
if(iprintf("%d不是质数\n",a);
else
printf("%d是质数\n",a);
}
}
}
printf("请选择一个选项来操作,1代表退出,2代表求阶乘,3代表括判别质数\n",num);
return 0;
}
运行结果如下
第10行和第12行应该是num==1和num==2。
有帮助的话采纳一下哦!
发现你写的问题太多,直接上完整的代码吧。
#include<stdio.h>
int main()
{
int num,a;
printf("please input a number: \n");
scanf("%d",&num);
while(num <= 3 && num > 1)
{
if(num == 2)
{
printf("请输入一个整数: \n");
scanf("%d", &a);
int i = 1, result = 1;
while(i <= a)
{
result = result * i;
i++;
}
printf("%d\n",result);
}
else
{
printf("请输入一个整数: \n");
scanf("%d", &a);
if(a % 2 == 0 && a != 2)
printf("%d不是质数\n",a);
else
printf("%d是质数\n",a);
}
printf("请选择一个选项来操作,1代表退出,2代表求阶乘,3代表括判别质数\n");
scanf("%d", &num);
}
return 0;
}