纸牌游戏
纸牌游戏
任务:编号为1-52张牌,正面向上,从第2张开始,以2为基数,是2的倍数的牌翻一次,直到最后一张牌;然后,从第3张开始,以3为基数,是3的倍数的牌翻一次,直到最后一张牌;然后…从第4张开始,以4为基数,是4的倍数的牌翻一次, 直到最后一张牌;...再依次5的倍数的牌翻一次,6的,7的直到 以52为基数的 翻过,输出:这时正面向上的牌有哪些?
高手们,谢谢你们的帮忙!!!!!!!!!
晕。我怎么觉得直接模拟过程就出来了。又不用多少时间。
#include<stdio.h>
void main()
{
int i,j;
int number[53];
for(i=1;i<53;i++)
{
number[i]=1;
}
for(j=2;j<53;j++)
{
for(i=2;i<53;i++)
{
if(i%j==0)
{
if(number[i]==1)
{
number[i]=-1;
}
number[i]=1;
}
}
}
for(i=1;i<=52;i++)
{
if(number[i]==1)
printf("正面:%d\n",i);
}
}
到底哪错了