1~50000までの素数を出して、それをテキストファイルに並べて書き込みたいのですが、うまく移せません。今回移す先は、34.txtとしています。また、2が素数として出されるコードが書けないので、そのところも教えていただけると幸いです。以上よろしくお願いいたします。
c
1#include <stdio.h> 2#include <stdlib.h> 3#include <math.h> 4FILE *filepointer; 5char filename[5000]; 6int n; 7void Sosuu(); 8 9int main(){ 10 sprintf( filename,"34.txt"); 11 Sosuu(); 12 fclose(filepointer); 13 return 0; 14 } 15 16void Sosuu(){ 17 int y,x,i; 18 for(n=2; n<50001; n++) 19 { 20 y=0; 21 22 for(i=2; i<n; i++){ 23 x=n%i; 24 if(x==0){ 25 break; 26 } 27 if( i == (n-1) ){ 28 y++; 29 break; 30 } 31 } 32 33 if(y!=0){ 34 35 36 if( NULL == (filepointer=fopen(filename,"w"))) 37 { 38 printf("\n %s cannot be opened \n",filename); 39 exit(1); 40 } 41 fprintf(filepointer,"%d\n",n); 42 43 44 } 45 } 46} 47
回答2件
あなたの回答
tips
プレビュー
バッドをするには、ログインかつ
こちらの条件を満たす必要があります。
2016/10/09 16:30
2016/10/10 02:38