作业帮 > 综合 > 作业

随机产生20个1~50之间的正整数放入数组A中,输出这组随机数.C语言(VC++6.0)

来源:学生作业帮 编辑:神马作文网作业帮 分类:综合作业 时间:2024/11/11 16:54:08
随机产生20个1~50之间的正整数放入数组A中,输出这组随机数.C语言(VC++6.0)
然后,选出其中的素数放入数组B中,输出这些素数,并计算素数之和.

只是希望给个思路,大一初学,刚教完数组.
如何判定A数组中的数为素数并且将这些数放入数组B中,定义数组B时如何定义数组B中的元素数量.
随机产生20个1~50之间的正整数放入数组A中,输出这组随机数.C语言(VC++6.0)
#include <stdio.h>
#include <stdlib.h>
#include <time.h>

bool isprime(int n)          //判断n是否是素数,是返回true,否则返回false
{
\x09int j=0;
\x09for(int i=1;i<=n;i++)
\x09\x09if(n%i == 0)
\x09\x09\x09j++;
\x09if(j==2)
\x09\x09return true;
\x09return false;
}
int main()
{
\x09int i,j=0,A[20],B[20];
\x09srand(unsigned(time(NULL)));
\x09for(i=0;i<20;i++)
\x09{
\x09\x09A[i] = rand()%50+1;
\x09\x09if(isprime(A[i]))  //如果是素数,把A[i]给B[j]
\x09\x09{
\x09\x09\x09B[j] = A[i];
\x09\x09\x09j++;
\x09\x09}
\x09}

\x09for(i=0;i<j;i++)
\x09\x09printf("%d ",B[i]);
\x09printf("\n");
\x09return 0;
}其实,你的疑问就是思路,当然,如果你需要源程序,我们可以交流

再问: 没见过bool,我再去百度下吧,谢谢你的解答。
再答: 你可以把bool当做int看待,然后把true当做1,false当做0,效果一样
再问: 好的