求大神帮忙啊,一道C++的题.
#include<stdio.h>#include<math.h>intmain(){floatm;intc=5;printf("输入任意一个整型数:\n");scanf...
#include <stdio.h>
#include <math.h>
int main()
{
float m;
int c=5;
printf("输入任意一个整型数:\n ");
scanf("%f",&m);
printf("*************************\n");
printf("1.判断该数是否为素数\n");
printf("2.求该数中所有素数\n");
printf("3.求该数中的因数\n");
printf("4.退出\n");
printf("*************************\n");
while(0)
{
scanf("%d",&c);
switch(c)
{
case 1:
break;
case 2:
break;
case 3:
break;
case 4:break;
default:printf("请输入1~4之间的数字!\n");
}
if(c==4) break;
}
return 0;
} 展开
#include <math.h>
int main()
{
float m;
int c=5;
printf("输入任意一个整型数:\n ");
scanf("%f",&m);
printf("*************************\n");
printf("1.判断该数是否为素数\n");
printf("2.求该数中所有素数\n");
printf("3.求该数中的因数\n");
printf("4.退出\n");
printf("*************************\n");
while(0)
{
scanf("%d",&c);
switch(c)
{
case 1:
break;
case 2:
break;
case 3:
break;
case 4:break;
default:printf("请输入1~4之间的数字!\n");
}
if(c==4) break;
}
return 0;
} 展开
4个回答
展开全部
这道题不错啊,适合我。等着。
#include <stdio.h>
#include <math.h>
int fuck(int a,int j)
{
for(;j<=a;j++)
{
if(a%j==0)
return j;
}
return-1;
}
int main()
{
int m;
int c=5,i,flag=0,t,n1=0;
printf("输入任意一个整型数:\n");
scanf("%d",&m);
printf("*************************\n");
printf("1.判断该数是否为素数\n");
printf("2.求该数中所有素数\n");
printf("3.求该数中的因数\n");
printf("4.退出\n");
printf("*************************\n");
while(c)
{
scanf("%d",&c);
switch(c)
{
case 1:
for(i=2;i<=m/2;i++)
if(c%i==0)
flag=1;
if(flag==0)
printf("%d是素数",m);
else
printf("%d不是素数",m);
goto loop; break;
case 2:
/*意思不懂啊*/
goto loop ;
break;
case 3:
printf("m=1");
i=2;
for(;;i++)
{
t=fuck(m,i);
if(t==-1)
break;
do
{
m=m/t;
n1++;
}while(m%t==0);
for(;n1>0;n1--)
printf("*%d",t);
} goto loop;
break;
case 4:
goto loop1;
loop: default:printf("\n请重新输入1~4之间的数字!\n");
}
}
loop1: return 0;
}//第二个功能我不懂你是什么意思啊?
#include <stdio.h>
#include <math.h>
int fuck(int a,int j)
{
for(;j<=a;j++)
{
if(a%j==0)
return j;
}
return-1;
}
int main()
{
int m;
int c=5,i,flag=0,t,n1=0;
printf("输入任意一个整型数:\n");
scanf("%d",&m);
printf("*************************\n");
printf("1.判断该数是否为素数\n");
printf("2.求该数中所有素数\n");
printf("3.求该数中的因数\n");
printf("4.退出\n");
printf("*************************\n");
while(c)
{
scanf("%d",&c);
switch(c)
{
case 1:
for(i=2;i<=m/2;i++)
if(c%i==0)
flag=1;
if(flag==0)
printf("%d是素数",m);
else
printf("%d不是素数",m);
goto loop; break;
case 2:
/*意思不懂啊*/
goto loop ;
break;
case 3:
printf("m=1");
i=2;
for(;;i++)
{
t=fuck(m,i);
if(t==-1)
break;
do
{
m=m/t;
n1++;
}while(m%t==0);
for(;n1>0;n1--)
printf("*%d",t);
} goto loop;
break;
case 4:
goto loop1;
loop: default:printf("\n请重新输入1~4之间的数字!\n");
}
}
loop1: return 0;
}//第二个功能我不懂你是什么意思啊?
更多追问追答
追问
你是说什么功能?
追答
该数中所有素数,是之从零到该数的范围的素数吗?
展开全部
#include <stdio.h>
#include <math.h>
int main()
{
float m;
int c=5;
printf("输入任意一个整型数:\n ");
scanf("%f",&m);
printf("*************************\n");
printf("1.判断该数是否为素数\n");
printf("2.求该数中所有素数\n");
printf("3.求该数中的因数\n");
printf("4.退出\n");
printf("*************************\n");
while(1)//0循环不会执行
{
scanf("%d",&c);
switch(c)
{
case 1:
break;
case 2:
break;
case 3:
break;
case 4:break;
default:printf("请输入1~4之间的数字!\n");
}
if(c==4) break;
}
return 0;
}
#include <math.h>
int main()
{
float m;
int c=5;
printf("输入任意一个整型数:\n ");
scanf("%f",&m);
printf("*************************\n");
printf("1.判断该数是否为素数\n");
printf("2.求该数中所有素数\n");
printf("3.求该数中的因数\n");
printf("4.退出\n");
printf("*************************\n");
while(1)//0循环不会执行
{
scanf("%d",&c);
switch(c)
{
case 1:
break;
case 2:
break;
case 3:
break;
case 4:break;
default:printf("请输入1~4之间的数字!\n");
}
if(c==4) break;
}
return 0;
}
更多追问追答
追问
还是不能执行啊...你需要在其中加入 函数的调用以及素数的判断的
追答
那要写函数啊,你没有写
已赞过
已踩过<
评论
收起
你对这个回答的评价是?
展开全部
你case 2你说的不太清楚。默认为:之前的所有素数。
#include <stdio.h>
#include <math.h>
void main()
{
int m;
int c=5;
printf("输入任意一个整型数:\n ");
scanf("%d",&m);
printf("*************************\n");
printf("1.判断该数是否为素数\n");
printf("2.求该数中所有素数\n");
printf("3.求该数中的因数\n");
printf("4.退出\n");
printf("*************************\n");
while(1)
{
scanf("%d",&c);
int i = 2,j=0;
int n = 1,k=0,h=0;
int a[20] = {0};
switch(c)
{
case 1:
if (m<2)
{
printf("%d%s\n",m,"不是素数!");
break;
}
if (m==2)
{
printf("%d%s\n",m,"是素数!");
break;
}
for (i=2;i<m;i++)
{
if (m%i==0)
{
j++;
}
}
if (j>0)
{
printf("%d%s\n",m,"是素数!");
break;
}
else
printf("%d%s\n",m,"不是素数!");
break;
case 2:
printf("%d%s",m,"之前的所有素数为:");
for (i=2;i<m;i++)
{
for (j=2;j<=i;j++)
{
if (i%j==0)
{
k++;
}
}
if (k<=1)
{
printf("%d\t",i);
}
k = 0;
}
printf("\n");
break;
case 3:
for (n=1;n<=m;n++)
{
if (m%n==0)
{
a[k] = n;
k++;
}
}
printf("%s\t","所有因数为:");
for (h=0;h<k;h++)
{
printf("%d\t",a[h]);
}
printf("\n");
break;
case 4:
break;
default:
printf("请输入1~4之间的数字!\n");
break;
}
if (c==4)
{
break;
}
}
}
#include <stdio.h>
#include <math.h>
void main()
{
int m;
int c=5;
printf("输入任意一个整型数:\n ");
scanf("%d",&m);
printf("*************************\n");
printf("1.判断该数是否为素数\n");
printf("2.求该数中所有素数\n");
printf("3.求该数中的因数\n");
printf("4.退出\n");
printf("*************************\n");
while(1)
{
scanf("%d",&c);
int i = 2,j=0;
int n = 1,k=0,h=0;
int a[20] = {0};
switch(c)
{
case 1:
if (m<2)
{
printf("%d%s\n",m,"不是素数!");
break;
}
if (m==2)
{
printf("%d%s\n",m,"是素数!");
break;
}
for (i=2;i<m;i++)
{
if (m%i==0)
{
j++;
}
}
if (j>0)
{
printf("%d%s\n",m,"是素数!");
break;
}
else
printf("%d%s\n",m,"不是素数!");
break;
case 2:
printf("%d%s",m,"之前的所有素数为:");
for (i=2;i<m;i++)
{
for (j=2;j<=i;j++)
{
if (i%j==0)
{
k++;
}
}
if (k<=1)
{
printf("%d\t",i);
}
k = 0;
}
printf("\n");
break;
case 3:
for (n=1;n<=m;n++)
{
if (m%n==0)
{
a[k] = n;
k++;
}
}
printf("%s\t","所有因数为:");
for (h=0;h<k;h++)
{
printf("%d\t",a[h]);
}
printf("\n");
break;
case 4:
break;
default:
printf("请输入1~4之间的数字!\n");
break;
}
if (c==4)
{
break;
}
}
}
已赞过
已踩过<
评论
收起
你对这个回答的评价是?
展开全部
这题是要答案吗?
更多追问追答
追问
上面的有步骤有错误,你能够在我上面的基础上修改吗?
追答
我看看啊,曾经学过点儿,不知道是不是都还给老师了
已赞过
已踩过<
评论
收起
你对这个回答的评价是?
推荐律师服务:
若未解决您的问题,请您详细描述您的问题,通过百度律临进行免费专业咨询