我试图弄清楚如何获得素数n,并计算n
(1^3 + 2^3 + ... + n^3)
的立方体总和。到目前为止,我可以弄清楚如何获得素数。我只是无法弄清楚如何得到相同的n来计算它的素数。这是我到目前为止:
#include <stdio.h>
int main() {
int n, i, c = 0
printf("Enter any number n: ");
scanf("%d", &n);
for(i=2; i<=n/2; i++){
if(n%i == 0){
c=1;
break;
}
}
if (c==0)
printf(%d is a prime number.",n);
else
printf("%d is not a prime number.",n);
printf("Enter that same number n: ");
scanf("%d", &num);
int num, cube, sum = 0, j=1;
while (j <= num) {
cube = j*j*j;
sum = sum + cube;
j++;
}
printf("sum of cubes of %d is %d\n", num, sum);
return 0:
}
我在第二个scanf上遇到错误,因为它说num是未声明的。我该怎么做才能解决这个问题。
声明int num后使用scanf。你也在第二个数字中使用了%。使用
int num, cube, sum = 0, j=1;
scanf("%d", &num);
代替
scanf("%d", %num);
int num, cube, sum = 0, j=1;
考虑一下这个起始片
long double sumcubs(int n)
{
int i;
long double ret = 0;
for (i = 1; i <= n; ++i)
ret += (i * i * i);
return ret;
}
一旦你封装了这个多维数据集的功能,就可以更容易地组织和编写其余的代码。