C语言【程序题设计12】

按照要求,设计和补充代码(从/ Program / 到 /********** End **********/ 之间)

题目:求100~999之间的回文素数之和。
说明:
(1)回文素数是一个素数,且从左向右和从右向左读是相同的,如:101,131,181是回文素数;
(2)要求使用循环实现。

---------------------------------------------------------------------*/

#include 
void PRINT(long s)
{
    FILE *out;
    printf("s=%ld\n",s);
    if((out=fopen("RESULT.DAT","w+"))!=NULL)
    fprintf(out,"s=%ld",s);
    fclose(out);
}
int main()
{ 
    int n,i,a,b;
    long s=0;
    /**********Program**********/
 // 遍历100到999之间的每个数
    for (n = 100; n < 1000; n++)
	{
		for (i = 2; i < n; i++)
		{
			mark = 1;                        //mark默认1
			if (n % i == 0)
			{
				mark = 0;                    //如果不符合素数要求,则把mark置为0
				break;                       //并跳出循环
			}
		}
		if (mark == 1)                        //判断是否素数
		{
			if (n / 100 == 0)                //判断是否两位数
			{
				if (n / 10 == n % 10)        //判断十位和各位是否相同
				{
					s+=n;
				}
			}
			else
			{
				if (n / 100 == n % 10)       //判断百位和个位是否相同
				{
					s+=n;
				}
			}
		}
	}
    /**********  End  **********/
    PRINT(s);
    return 0;
}

你可能感兴趣的:(c语言)