本题要求计算并输出不超过n的最大的k个素数以及它们的和。
输入格式:
输入在一行中给出n(10≤n≤10000)和k(1≤k≤10)的值。
输出格式:
在一行中按下列格式输出:
素数1+素数2+…+素数k=总和值
#include<stdio.h>
int main()
{
int n,k,i,j,o=0;
int a[1000]={0},sum=0;
scanf("%d %d",&n,&k);
for (i=n;i>=10;i--)
{
for (j=2;j<i;j++)
{
if (i%j==0)
break;
else if (j==i-1)
{
a[o]=i;
o++;
}
else
continue;
}
}
for (i=0;i<k;i++)
{
sum+=a[i];
if (i==0)
printf("%d",a[i]);
else if (i==k)
printf("+%d=",a[i]);
else
printf("+%d",a[i]);
}
printf("%d",sum);
}
这个代码不对,有没有大佬知道错在哪
这段C++代码试图找出小于n的最大的k个素数并将它们相加。然而,代码存在错误。本文分析了代码逻辑并指出可能的问题,以帮助读者理解和修复。
1490

被折叠的 条评论
为什么被折叠?



