輸出101~200之間的素數﹐中間碰到一個回車問題﹐請高手幫忙解釋﹗
程序代码:
#include <stdio.h> void main() { int i,j,count1=0,count2=0; for(i=101;i<=200;i++) { for(j=2;j<=i-1;j++) /*除以從2開始一直到它本身的前一個*/ if(i%j==0) count1++; /*如果除的盡就計數count1++*/ if(count1==0) /*如果從2開始一直到它本身的前一個﹐沒一個能除盡﹐就輸出*/ { printf("%d ",i); count2++;/*統計結果次數*/ if(count2%10==0) printf("\n");/*結果每十個一行*/ } count1=0;/*初始化計數count1,因為循環一次count1已經變了*/ } printf("\ntotal:%d",count2); getch(); }上面的代碼是正確的﹐我想問下如果把" if(count2%10==0) printf("\n");/*結果每十個一行*/"這一行放到大括號外面﹐結果就多輸出一個回車﹐求解釋﹗
PS﹕
if(count1==0) /*如果從2開始一直到它本身的前一個﹐沒一個能除盡﹐就輸出*/
{ printf("%d ",i);
count2++;/*統計結果次數*/
}
if(count2%10==0) printf("\n");/*結果每十個一行*/
count1=0;/*初始化計數count1,因為循環一次count1已經變了*/
}
這樣每十個一行時﹐輸出有兩個回車﹐如果把那一行代碼放到括號里就只有一個回車﹐求高手解釋﹗