|
马上注册,结交更多好友,享用更多功能^_^
您需要 登录 才可以下载或查看,没有账号?立即注册
x
#include <stdio.h>
#include <math.h>
void main()
{
int m, i, k;
for(m=1 ; m<=100; m++);
{
k = sqrt(m);
for(i=2; i<=k; i++);
{
if(0 == m%k);
{
break;
}
if(i>k)
{
printf("#d\n",m);
}
else
{
printf("\n");
}
}
}
}
E:\MSDev98\MyProjects\zhishu\zhishu.c(16) : error C2043: illegal break
这个是什么情况啊.......
本帖最后由 巴巴鲁 于 2020-8-9 21:12 编辑
你这个方法很好啊 
i>k那句判断语句不可能会执行,当i>k退出里层for循环,其他小问题在程序里注释了
- #include <stdio.h>
- #include <math.h>
- void main()
- {
- int m, i, k;
- for(m=2 ; m<=100; m++)
- {
- k = sqrt(m);
- for(i=2; i<=k; i++)
- {
- if(0 == m%i) // 这里是i
- {
- break;
- }
- }
- if(i>k) // 把判断放到内层循环外面
- {
- printf("%d\n",m); %d而不是#d
- }
-
- }
- }
复制代码
|
|