C 每行需要10个输出
我在精炼一些代码时遇到了困难。我的代码取一个数字“n”,并计算出许多素数。我需要每行输出数据显示10个素数。任何提示都将不胜感激C 每行需要10个输出,c,if-statement,for-loop,C,If Statement,For Loop,我在精炼一些代码时遇到了困难。我的代码取一个数字“n”,并计算出许多素数。我需要每行输出数据显示10个素数。任何提示都将不胜感激 #include <stdio.h> int main() { int n, i = 3, count, c; printf("How many primes would you like?"); scanf("%d",&n); if ( n >= 1 ) { printf("2"); }
#include <stdio.h>
int main()
{
int n, i = 3, count, c;
printf("How many primes would you like?");
scanf("%d",&n);
if ( n >= 1 )
{
printf("2");
}
for ( count = 2 ; count <= n ; )
{
for ( c = 2 ; c <= i - 1 ; c++ )
{
if ( i%c == 0 )
break;
}
if ( c == i )
{
printf(" %d",i);
count++;
}
i++;
}
return 0;
}
#包括
int main()
{
int n,i=3,计数,c;
printf(“您想要多少素数?”);
scanf(“%d”和“&n”);
如果(n>=1)
{
printf(“2”);
}
对于(count=2;count只需尝试
printf(" %5d", i);
/* ^ to help align the numbers
及
首次修复已打印的2
bool is_prime(int anyNum)//获取整数数组返回,is_prime
bool is_prime(int anyNum) //takes an integer array returns, is_prime
{
bool is_prime = true;
for (int c = 2; c <= anyNum - 1; c++)
{
if (anyNum % c == 0)
{
//printf("%d is not prime\r\n" , anyNum);
is_prime = false;
}
}
return is_prime;
}
int main()
{
int num_primes;
printf("How many primes would you like: ");
std::cin >> num_primes;
printf("\r\nScanned Primes Are---\r\n");
int foundPrimes = 0;
int x = 0;
for (; x <= num_primes; x++)
{
bool gotLuckyFindingPrime = is_prime( x );
if (gotLuckyFindingPrime)
{
if (foundPrimes % 10 == 0)
{
printf("\r\n");
}
printf(" %d", x);
foundPrimes = (foundPrimes + 1) % 10;
}
}
}
{
bool是_prime=true;
对于(int c=2;c>num_素数;
printf(“\r\n扫描素数为--\r\n”);
int-foundPrimes=0;
int x=0;
对于(;x一种方法是让另一个计数器变量在每次打印数字时递增。用1
int counter = 1;
如果此条件(计数器%10==0)
为true
,则通过\n
打印新行:
if (counter % 10 == 0)
printf("\n");
以下是每行打印10
数字的完整代码:
#include<stdio.h>
int main()
{
int n, i = 3, count, c;
int counter = 1; // <------ added this
printf("How many primes would you like?");
scanf("%d",&n);
if ( n >= 1 )
{
printf("2");
}
for ( count = 2 ; count <= n ; )
{
for ( c = 2 ; c <= i - 1 ; c++ )
{
if ( i%c == 0 )
break;
}
if ( c == i )
{
if (counter % 10 == 0) // <------ added this if-statement
printf("\n");
printf(" %2d", i);
counter++; // <------ added this
count++;
}
i++;
}
printf("\n");
return 0;
}
#包括
int main()
{
int n,i=3,计数,c;
整数计数器=1;//=1)
{
printf(“2”);
}
对于(count=2;count当您从未在任何地方输出换行符(\n)时,您希望得到什么?请注意,您的素数确定机制非常粗糙(表示缓慢)。有效,但非常非常缓慢。请尝试查找10000个素数(104729是第10000个素数)。这太好了!非常感谢,有没有关于如何更好地对齐输出数据的建议?是否要在每个数字之间输出更多空间?
#include<stdio.h>
int main()
{
int n, i = 3, count, c;
int counter = 1; // <------ added this
printf("How many primes would you like?");
scanf("%d",&n);
if ( n >= 1 )
{
printf("2");
}
for ( count = 2 ; count <= n ; )
{
for ( c = 2 ; c <= i - 1 ; c++ )
{
if ( i%c == 0 )
break;
}
if ( c == i )
{
if (counter % 10 == 0) // <------ added this if-statement
printf("\n");
printf(" %2d", i);
counter++; // <------ added this
count++;
}
i++;
}
printf("\n");
return 0;
}