求大神帮忙啊,一道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;
}
展开
 我来答
哒哒啊如同一条
2012-04-01 · TA获得超过232个赞
知道小有建树答主
回答量:348
采纳率:0%
帮助的人:135万
展开全部
这道题不错啊,适合我。等着。
#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;
}//第二个功能我不懂你是什么意思啊?
更多追问追答
追问
你是说什么功能?
追答
该数中所有素数,是之从零到该数的范围的素数吗?
百度网友28b4182
2012-03-28 · TA获得超过7218个赞
知道大有可为答主
回答量:4847
采纳率:100%
帮助的人:1767万
展开全部
#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;
}
更多追问追答
追问
还是不能执行啊...你需要在其中加入  函数的调用以及素数的判断的
追答
那要写函数啊,你没有写
已赞过 已踩过<
你对这个回答的评价是?
评论 收起
sq...i@sina.com
2012-03-29 · TA获得超过142个赞
知道答主
回答量:225
采纳率:0%
帮助的人:163万
展开全部
你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;
}
}
}
已赞过 已踩过<
你对这个回答的评价是?
评论 收起
满天星0312
2012-03-28 · 超过14用户采纳过TA的回答
知道答主
回答量:171
采纳率:0%
帮助的人:59.5万
展开全部
这题是要答案吗?
更多追问追答
追问
上面的有步骤有错误,你能够在我上面的基础上修改吗?
追答
我看看啊,曾经学过点儿,不知道是不是都还给老师了
已赞过 已踩过<
你对这个回答的评价是?
评论 收起
收起 1条折叠回答
收起 更多回答(2)
推荐律师服务: 若未解决您的问题,请您详细描述您的问题,通过百度律临进行免费专业咨询

为你推荐:

下载百度知道APP,抢鲜体验
使用百度知道APP,立即抢鲜体验。你的手机镜头里或许有别人想知道的答案。
扫描二维码下载
×

类别

我们会通过消息、邮箱等方式尽快将举报结果通知您。

说明

0/200

提交
取消

辅 助

模 式