素日期的定义如下:比如1993年5月1日,变成一个8位整数19930501(注意这里有时需补0),如果这个整数是素数,则定义该日期是素日期,据说生日是素日期的人,人气好!
input
3个数表示一个日期比如 1992 2 1 表示1992年2月1日
Output
判定19920201是不是素数,如果是输出"y"
不是输出"n"
Sample input
1992 2 1
sample output
n
那个可以被7整除……
追答你还是别用我的了,我的好像有错误,我试了几个数也都对,我还没看出来哪有毛病呢,我刚才想取消了
我知道我哪错了,我那里不应该用BREAK
#include
#include
int isPrime(int m) //判断是不是素数
{
int i;
int a=sqrt(m);
for(i=2;i<a;i++)
{
if(m%i==0)//不是素数
{
return 0;
}
else
{
return 1;
}
}
}
void main()
{
int year,month,day,sum;
printf("sample input:\n");
scanf("%d %d %d",&year,&month,&day);
sum=year*1000+month*100+day;
if(isPrime(sum))
{
printf("sample output:\n");
printf("n\n");
}
else
{
printf("sample output:\n");
printf("y\n");
}
}
这个好像非正常结束……
追答什么叫好像,你用什么编译器,我用vc6.0没问题呀,你的问题在哪儿?