C++问题。。将prime()函数改为没有 返回值的
答案:4 悬赏:70 手机版
解决时间 2021-03-31 08:25
- 提问者网友:几叶到寒
- 2021-03-30 23:40
C++问题。。将prime()函数改为没有 返回值的
最佳答案
- 五星知识达人网友:人间朝暮
- 2021-03-31 00:36
你这个程序,if后面都没有花括号的?
要去掉返回值,只需要把int prime(int m),改成void prime(int m),然后去掉return flag;
要去掉返回值,只需要把int prime(int m),改成void prime(int m),然后去掉return flag;
全部回答
- 1楼网友:天凉才是好个秋
- 2021-03-31 04:34
#include
#include
void main(void)
{
int x;
void prime(int &m);
printf("以下是100以内的素数:\n");
for (x=2;x<=100;x++)
{ t=x;
prime(x);
if (t == x)
printf("%6d",x);
printf("\n");
}
void prime(int &m)
{
int i,n,flag=1;
n=sqrt(m);
for (i=2;i<=n;i++)
if (m%i==0)
m--;
}
#include
void main(void)
{
int x;
void prime(int &m);
printf("以下是100以内的素数:\n");
for (x=2;x<=100;x++)
{ t=x;
prime(x);
if (t == x)
printf("%6d",x);
printf("\n");
}
void prime(int &m)
{
int i,n,flag=1;
n=sqrt(m);
for (i=2;i<=n;i++)
if (m%i==0)
m--;
}
- 2楼网友:人间朝暮
- 2021-03-31 03:13
#include
#include
void main(void)
{
int x;
void prime(int m);
printf("以下是100以内的素数:\n");
for (x=2;x<=100;x++)
// if (prime(x))
prime(x);
// printf("%6d",x);
// printf("\n");
}
void prime(int m)
{
int i,n;//,flag=1;
n=sqrt(m);
for (i=2;i<=n;i++)
{ if (m%i==0) break;
}
if(i>n)
printf("%6d\n",m);
// flag=0;
//return flag;
}
#include
void main(void)
{
int x;
void prime(int m);
printf("以下是100以内的素数:\n");
for (x=2;x<=100;x++)
// if (prime(x))
prime(x);
// printf("%6d",x);
// printf("\n");
}
void prime(int m)
{
int i,n;//,flag=1;
n=sqrt(m);
for (i=2;i<=n;i++)
{ if (m%i==0) break;
}
if(i>n)
printf("%6d\n",m);
// flag=0;
//return flag;
}
- 3楼网友:迟山
- 2021-03-31 01:40
与实参的问题
以一个简单的程序为例来说明
void MSwapa(int a,int b);//这 两个函数都是交换a,b的值
void MSwapb(int&a,int&b);
int main(){
int a=2;
int b=3;
MSwapa(a,b);
cout cout }
void MSwapa(int a,int b){
int tmp=a;
a=b;
b=tmp;
}
void MSwapb(int&a,int&b){
int tmp=a;
a=b;
b=tmp;
}
//运行结果是
2 3
3 2
虽然两个函数都是交换a,b的值
MSwapa(int a,int b)参数没有用引用,这样在MSwapa(int a,int b)内产生两个临时对象a和b,并且是你在main()函数中定义的int a,b的值分别赋给这两个临时变量,而MSwapa(int a,int b)只是将这两个临时对象的值交换了
所以cout #include
void main(void)
{
int x;
void prime(int m);
printf("以下是100以内的素数:\n");
for (x=2;x<=100;x++)
prime(x);
printf("\n");
}
void prime(int m)
{
int i,n,flag=1;
n=sqrt(m);
for (i=2;i<=n;i++)
if (m%i==0)
flag=0;
if(flag) printf("%6d",m);
}
以一个简单的程序为例来说明
void MSwapa(int a,int b);//这 两个函数都是交换a,b的值
void MSwapb(int&a,int&b);
int main(){
int a=2;
int b=3;
MSwapa(a,b);
cout
void MSwapa(int a,int b){
int tmp=a;
a=b;
b=tmp;
}
void MSwapb(int&a,int&b){
int tmp=a;
a=b;
b=tmp;
}
//运行结果是
2 3
3 2
虽然两个函数都是交换a,b的值
MSwapa(int a,int b)参数没有用引用,这样在MSwapa(int a,int b)内产生两个临时对象a和b,并且是你在main()函数中定义的int a,b的值分别赋给这两个临时变量,而MSwapa(int a,int b)只是将这两个临时对象的值交换了
所以cout
void main(void)
{
int x;
void prime(int m);
printf("以下是100以内的素数:\n");
for (x=2;x<=100;x++)
prime(x);
printf("\n");
}
void prime(int m)
{
int i,n,flag=1;
n=sqrt(m);
for (i=2;i<=n;i++)
if (m%i==0)
flag=0;
if(flag) printf("%6d",m);
}
我要举报
如以上问答信息为低俗、色情、不良、暴力、侵权、涉及违法等信息,可以点下面链接进行举报!
大家都在看
推荐资讯