下列程序的功能是:選取出100以上1000以內所有個位數字與十位數字之和被10除所得余數恰是百位數字的素數(如293)。計算并輸出上述這些素數的個數CNT以及這些素數值的和SUM。請編寫函數COUNTvalue()實現程序要求,最后調用函數WRITEDAT()把結果CNT和SUM輸出到文件OUT.DAT中.注意:部分源程序已給出。請勿改動主函數main()和函數readwriteDAT()的內容。 #include <stdio.h>int cnt, sum;void countValue(){}void writeDAT(){FILE *fp;fp = fopen("out.dat", "w");fprintf(fp, "%d\n%d\n", cnt, sum);fclose(fp);}void main(){cnt = sum = 0;countValue();printf("素數的個數=%d\n", cnt);printf("滿足條件素數值的和=%d", sum);writeDAT();}我的解答是:int i, j, half, hun, ten, data,cnt=0,sum=0;for (i=101; i<1000; i++){hun = i/100;ten = i%100/10;data = i%10;if (hun == (ten+data)%10){half = i/2;for (j=2; j<half; j++)if (i%j == 0)break;if (j >= half){cnt++; sum += i;}}}輸出是:素數的個數=0滿足條件素數值的和=0
- 2 回答
- 0 關注
- 165 瀏覽
添加回答
舉報
0/150
提交
取消