-3
没有编译器错误,但我没有看到来自printf的语句(循环之后)。循环之前的printf是很好的。我无法解决这个问题。printf不工作为什么?
int prime(int n);
int main(void)
{
int num = 0;
bool prime;
int n;
int count;
int sum;
printf("Enter the limit:", n);
scanf("%d", &n);
printf("Primes up to %d\n", n);
// loop
for(int i =2; i <= n; i++)
{
prime = true;
for(int j =2; j < i; j++)
{
if(i%j == 0)
{
prime = false;
break;
}
}
if(prime)
{
num += i;
printf("%d ", i);
}
}
return num;
count++;
sum += count;
// sum of primes
printf("Number of primes: \n", sum);
}
这是为什么?
'return num;':此行终止函数执行。它将在执行后没有任何内容。 –
谢谢,我不知道。 – blacklune
编译时是否启用了所有警告('-Wall -Wtratra')?你的编译器应该告诉你一些关于'printf'调用和未初始化的变量。那是什么'int prime(int n);'关于什么?此外,这看起来不像C++。 – 5gon12eder