C语言素数
2024-09-25 10:24:45
求1-10000之间的素数,并打印出来。
使用了sbrk和brk函数,采用直接操作内存的方式,尽量减少循环次数,每次进行素数判断仅与之前的素数进行相除。该代码并不健壮,仅作练习用。
#include <stdio.h>
#include <stdlib.h>
#include <unistd.h> int *p; int Primer(int a,int *size);
main()
{
int a=;
int size;
p=sbrk();
Primer(a,&size);
int i=;
for(;i<size;i++)
{
printf("%d\n",p[i]);
}
} int Primer(int a,int *size)
{ int i=;
int *r;
int sizePr;
if(a<)
{
*size=a;
r=p;
for(;i<a;i++)
{
brk(r+);
*r=i+;
r=sbrk();
}
}
else
{
Primer(,&sizePr);
int j=;
for(;j<=a;j++)
{
int si=;
r=&p[sizePr];
int c=;
for(;si<sizePr;si++)
{
if(j%p[si]==)
{
c=;
break;
}
}
if(c==)
{
brk(r+);
*r=j;
r=sbrk();
sizePr++;
}
}
*size=sizePr;
}
printf("Primer:%p\n",p) ;
return ;
}
最新文章
- Java 中 手动抛出异常: throw new Exception(";错误信息";) 错误信息的获得
- mysql-1
- Asp.NET MVC JSON序列化问题
- HTML5 Audio and JavaScript Control
- C语言 文件操作8--fputs()和fgets()
- mac平台下面ruby环境搭建
- 类似github的框架
- POJ 1273 Drainage Ditches(网络流dinic算法模板)
- hdu5772-String problem(最大权闭合子图问题)
- AndroidTv Home界面实现原理(一)——Leanback 库的使用
- AutoStartUtil【打开自启动设置界面】
- Anaconda安装及配置
- python 操作数据库
- vue学习生命周期(created和mounted区别)
- cJSON库的简单介绍及使用
- jquery.form.js mvc 上传文件 layer 选择框与等待效果
- VirtualBox vbox not found
- 51nod 1225 余数之和 数论
- 【转】html之file标签 --- 图片上传前预览 -- FileReader
- Mybatis学习笔记(四) —— SqlMapConfig.xml配置文件