将2—100之间的所有素数写入到一个磁盘文件num.dat中;再将数据读出并输出到屏幕上
#include<stdio.h>
#include<stdlib.h>
int main(void)
{
int i,j,flag;
int a[100];
FILE*fp;
fp=fopen("num.dat","w");
if(fp==NULL)
{
printf("fopen error\n");
return -1;
}
fprintf(fp, "%d ", 2);
for(i=3; i<=100; i++)
{
flag=0;
for(j=2; j<i; j++)
{
if(i%j==0)
{
flag=1;
break;
}
}
if(flag==0)
fprintf(fp, "%d ",i);
}
fclose(fp);
return 0;
}
b = {n if n in [2,3] or sum([1 if n % x ==0 else 0 for x in range(2,n)])==0 else 0 for n in range(2,101)}
b.remove(0)
c = ','.join([str(n) for n in b])
f = open('num.dat','w')
f.write(c)
f.close()
print('2-100之间的所有素数有:'+c)