#1086: 不知哪裡錯了 麻煩大大教一下


rex6l (魔の宇~)

學校 : 臺北市立成功高級中學
編號 : 4866
來源 : [118.169.96.16]
最後登入時間 :
2008-12-24 13:43:00
a007. 判斷質數 | From: [118.166.73.76] | 發表日期 : 2008-12-19 22:48

  1. #include <stdio.h>   
  2.   
  3.   
  4.  main() {   
  5.  int i,a,x=1,j;   
  6.   while((a=scanf("%d",&i))!= EOF){   
  7.   for(j=2;j<=sqrt(i);j++){   
  8.     if(i%j==0) x=0;          
  9.          }                 
  10.       x==0||i==1?printf("非質數\n"):printf("質數\n");   
  11.      }   
  12. }  
 
#1145: Re:不知哪裡錯了 麻煩大大教一下


marco79423 (兩大類)

學校 : 國立交通大學
編號 : 5072
來源 : [140.113.247.114]
最後登入時間 :
2010-09-21 23:22:13
a007. 判斷質數 | From: [140.113.247.114] | 發表日期 : 2009-01-08 16:54

  1. #include    
  2.   
  3.   
  4.  main() {   
  5.  int i,a,x=1,j;   
  6.   while((a=scanf("%d",&i))!= EOF){   
  7.   for(j=2;j<=sqrt(i);j++){   
  8.     if(i%j==0) x=0;          
  9.          }                 
  10.       x==0||i==1?printf("非質數\n"):printf("質數\n");   
  11.      }   
  12. }  


你錯在忘記初始化了

 如果有一數是非質數,那x就會改成0,但最後你沒變回來~~~~

還有啊,我很好奇你的a是為了什麼而設的?

 
ZeroJudge Forum