问题描述
- c++问题,新手求大神解救,
-
#include
#include
using namespace std;
void main()
{
int a = 0;
for (int i = 1;i <= 1000;i++){ for (int j = 2;j < i;j++) { {if (i == 2) cout << i; else if (i%j == 0) break; } if (j == (i - 1)) { cout << i << " "; a++; if (a % 6 == 0) { cout << 'n'; } } } } cout << "总共" << a;
}
输出后没有 2 这个素数
解决方案
#include <iostream>
using namespace std;
int main()
{
int a = 0;
for (int i = 1;i <= 1000;i++)
{
for (int j = 2;j <= i;j++) {
{if (i == 2) cout << i << " ";
else if (i%j == 0) break;
}
if (j == (i - 1))
{
cout << i << " ";
a++;
if (a % 6 == 0)
{
cout << 'n';
}
}
}
}
cout << "总共" << a;
}
解决方案二:
for (int j = 2;j < i;j++)
这一行出错了,i=2时,j<i,为假,不输出。
改为:
for (int j = 2;j < =i;j++)
解决方案三:
你不觉得你那样写,编译不通过吗?
难道编译没报 j 未定义的错误吗?
解决方案四:
你不觉得你那样写,编译不通过吗?
难道编译没报 j 未定义的错误吗?
时间: 2024-09-23 19:16:34