c语言随机生成100个3位正整数
来源:学生作业帮 编辑:拍题作业网作业帮 分类:综合作业 时间:2024/04/28 06:38:32
c语言随机生成100个3位正整数
(1)求出其中素数的个数.(2)把求出的所有素数按照从大到小的顺序排序并输出.
(1)求出其中素数的个数.(2)把求出的所有素数按照从大到小的顺序排序并输出.
#include "stdio.h"
#include "time.h"
#include "stdlib.h"
int isprime(int n)//判断n是否是素数,是返回1,不是返回0
{
int i;
for(i=2;i<=n/2;i++)
if(n%i==0)
return 0;
return 1;
}
int main()
{
int a[100]={0};
int b[100]={0};
int i,j,count=0,tmp;
srand(time(NULL));
for(i=0;i<100;i++)//3位整数 100~999
{
a[i]=rand()%900+100; //rand()%900 899 加上100则是 100~999
if(isprime(a[i])==1) //如果是素数,则存到b数组中,同时用count变量计数
{
b[count++]=a[i];
}
}
//素数数组排序从大到小:
for(i=0;i<count-1;i++)
for(j=i+1;j<count;j++)
if(b[i]<b[j])
{
tmp=b[i];
b[i]=b[j];
b[j]=tmp;
}
printf("随机产生的100个3位数中素数共有%d个\n",count);
printf("从大到小输出素数:\n");
for(i=0;i<count;i++)
printf("%d\t",b[i]);
printf("\n");
}
再问: 大神 最后那个for循环是为了干什么的?
再答: 输出存在b数组中的素数啊,
再问: 哦哦 我把它上面的那个printf看成已经输出了。 感谢! 自己再研究一下流程图吧~ 不懂的地方还要请教啊~
#include "time.h"
#include "stdlib.h"
int isprime(int n)//判断n是否是素数,是返回1,不是返回0
{
int i;
for(i=2;i<=n/2;i++)
if(n%i==0)
return 0;
return 1;
}
int main()
{
int a[100]={0};
int b[100]={0};
int i,j,count=0,tmp;
srand(time(NULL));
for(i=0;i<100;i++)//3位整数 100~999
{
a[i]=rand()%900+100; //rand()%900 899 加上100则是 100~999
if(isprime(a[i])==1) //如果是素数,则存到b数组中,同时用count变量计数
{
b[count++]=a[i];
}
}
//素数数组排序从大到小:
for(i=0;i<count-1;i++)
for(j=i+1;j<count;j++)
if(b[i]<b[j])
{
tmp=b[i];
b[i]=b[j];
b[j]=tmp;
}
printf("随机产生的100个3位数中素数共有%d个\n",count);
printf("从大到小输出素数:\n");
for(i=0;i<count;i++)
printf("%d\t",b[i]);
printf("\n");
}
再问: 大神 最后那个for循环是为了干什么的?
再答: 输出存在b数组中的素数啊,
再问: 哦哦 我把它上面的那个printf看成已经输出了。 感谢! 自己再研究一下流程图吧~ 不懂的地方还要请教啊~
c语言随机生成100个3位正整数
随机生成20个100以内的两位正整数,统计其中有多少个不相同的数?
随机生成20个100以内的两位正整数,统计其中有多少个不相同的数
怎样用随机函数写猜数字当中生成随机4位数字?用c语言
C语言,随机生成矩阵
随机生成20个100以内的两位正整数,统计其中有多少个不相同的数?(求VB编程答案!)
随机生成20个100以内的两位正整数,统计其中有多少个不相同的数的vb代码
C语言如何生成一个随机矩阵
随机生成20个100以内的正整数,统计其中有多少个不同的数
C语言 已知一个大小为15的数组,随机生成15个100-200之间的数存入该数组中并显示出数组中的偶数
VB随机生成一个两位的正整数,放在变量A1中
c语言 如果是随机产生1000个4位自然数,将其中素数降序排列后输出.