2006年9月全國(guó)等級(jí)考試三級(jí)c語(yǔ)言上機(jī)題庫(kù)(三十四)

字號(hào):

★☆題目34(無(wú)憂id 73,102 素?cái)?shù)題)
    無(wú)憂id 102 題提供了求素?cái)?shù)isPrime()函數(shù)
    程序prog1.c的功能是:選出100以上1000之內(nèi)所有個(gè)位數(shù)字與十位數(shù)字之和被10除所得余數(shù)恰是百位數(shù)字的素?cái)?shù)(如293)。計(jì)算并輸出上述這些素?cái)?shù)的個(gè)數(shù)cnt以及這些素?cái)?shù)值的和sum。請(qǐng)考生編寫函數(shù)countValue( )實(shí)現(xiàn)程序要求,最后調(diào)用函數(shù)writeDAT()把結(jié)果cnt和sum輸出到文件bc10.out中。
    注意:部分源程序存放在文件prog1.c中。
    請(qǐng)勿改動(dòng)主函數(shù)main( )和輸出數(shù)據(jù)函數(shù)writeDAT()的內(nèi)容。
    #include
    int cnt, sum ;
    void countValue()
    { int i,j,bw,sw,gw;
    for(i=100;i<1000;i++)
    { bw=i/100; sw=i%100/10; gw=i%10;
    for(j=2;j    if(i%j==0) break;
    if((i==j) &&(gw+sw)%10==bw) { cnt++; sum+=i;}
    }
    }
    void main()
    {
    cnt=sum=0;
    countValue() ;
    printf("素?cái)?shù)的個(gè)數(shù)=%d\n", cnt) ;
    printf("滿足條件素?cái)?shù)值的和=%d", sum) ;
    writeDAT() ;
    }
    writeDAT()
    {
    FILE *fp ;
    fp = fopen("bc10.out", "w") ;
    fprintf(fp, "%d\n%d\n", cnt, sum) ;
    fclose(fp) ;
    }
    輸出結(jié)果為:
    素?cái)?shù)的個(gè)數(shù)=15
    滿足條件素?cái)?shù)值的和=6825