求助c语言循环问题:
#include"stdafx.h"#include"math.h"intmain(){intm,k,i,n=0;for(m=101;m<=200;m=m+2){k=sq...
#include "stdafx.h"
#include"math.h"
int main()
{
int m,k,i,n=0;
for(m=101;m<=200;m=m+2)
{
k=sqrt(m);
for(i=2;i<=k;i++)
if (m%i==0) break;
if(i>k)
{
printf(" %d ",m);
n++;
}
if(n%10==0) printf("\n");
}
printf("\n");
return 0;
}
第二个for循环后面加一对括号,结果为什么不一样(如下)???
#include "stdafx.h"
#include"math.h"
int main()
{
int m,k,i,n=0;
for(m=101;m<=200;m=m+2)
{
k=sqrt(m);
for(i=2;i<=k;i++)
{
if (m%i==0) break;
if(i>k)
{
printf(" %d ",m);
n++;
}
if(n%10==0) printf("\n");
}
}
printf("\n");
return 0; 展开
#include"math.h"
int main()
{
int m,k,i,n=0;
for(m=101;m<=200;m=m+2)
{
k=sqrt(m);
for(i=2;i<=k;i++)
if (m%i==0) break;
if(i>k)
{
printf(" %d ",m);
n++;
}
if(n%10==0) printf("\n");
}
printf("\n");
return 0;
}
第二个for循环后面加一对括号,结果为什么不一样(如下)???
#include "stdafx.h"
#include"math.h"
int main()
{
int m,k,i,n=0;
for(m=101;m<=200;m=m+2)
{
k=sqrt(m);
for(i=2;i<=k;i++)
{
if (m%i==0) break;
if(i>k)
{
printf(" %d ",m);
n++;
}
if(n%10==0) printf("\n");
}
}
printf("\n");
return 0; 展开
2个回答
展开全部
上一个程序中if结构要 i 循环结束才会执行。所以能将结果打印出来
for(i=2;i<=k;i++)
if (m%i==0) break;
i 循环就循环这一条语句
下一个程序中,每次 i 循环 if 结构都会执行一次,但i > k的条件永远也满足不了,所以没结果
for(i=2;i<=k;i++)
if (m%i==0) break;
i 循环就循环这一条语句
下一个程序中,每次 i 循环 if 结构都会执行一次,但i > k的条件永远也满足不了,所以没结果
已赞过
已踩过<
评论
收起
你对这个回答的评价是?
展开全部
你这个程序是求100-200之间的素数
#include "stdafx.h"
#include"math.h"
int main()
{
int m,k,i,n=0;
for(m=101;m<=200;m=m+2)
{
k=sqrt(m);
for(i=2;i<=k;i++)
if (m%i==0) break; //这个循环体只有这个条件语句,作用是
if(i>k) //如果有i能整除m则退出循环
{ //循环出来后判断i的值就知道它是不是素数
printf(" %d ",m);
n++;
}
if(n%10==0) printf("\n");
}
printf("\n");
return 0;
}
#include "stdafx.h"
#include"math.h"
int main()
{
int m,k,i,n=0;
for(m=101;m<=200;m=m+2)
{
k=sqrt(m);
for(i=2;i<=k;i++)
{ //加了大括号,这个循环体就包含了3个条件语句
if (m%i==0) break;
if(i>k) //由于在循环内,所以i没可能大于k,所以程序没输出
{
printf(" %d ",m);
n++;
}
if(n%10==0) printf("\n");
}
}
printf("\n");
return 0;
#include "stdafx.h"
#include"math.h"
int main()
{
int m,k,i,n=0;
for(m=101;m<=200;m=m+2)
{
k=sqrt(m);
for(i=2;i<=k;i++)
if (m%i==0) break; //这个循环体只有这个条件语句,作用是
if(i>k) //如果有i能整除m则退出循环
{ //循环出来后判断i的值就知道它是不是素数
printf(" %d ",m);
n++;
}
if(n%10==0) printf("\n");
}
printf("\n");
return 0;
}
#include "stdafx.h"
#include"math.h"
int main()
{
int m,k,i,n=0;
for(m=101;m<=200;m=m+2)
{
k=sqrt(m);
for(i=2;i<=k;i++)
{ //加了大括号,这个循环体就包含了3个条件语句
if (m%i==0) break;
if(i>k) //由于在循环内,所以i没可能大于k,所以程序没输出
{
printf(" %d ",m);
n++;
}
if(n%10==0) printf("\n");
}
}
printf("\n");
return 0;
本回答被提问者采纳
已赞过
已踩过<
评论
收起
你对这个回答的评价是?
推荐律师服务:
若未解决您的问题,请您详细描述您的问题,通过百度律临进行免费专业咨询