#include"stdio.h"void fenxi(int n);void shuchu(int n);main(){ int m; printf("\n\n\n"); printf("\t\t\t******纸牌游戏******\n"); printf("游戏规则如下:\n\n\n"); printf("\t编号为1-52张牌,正面向上,从第2张开始,以2为基数,是2的倍数的牌翻一次,\n"); printf(" 直到最后一张牌;然后,从第3张开始,以3为基数,是3的倍数的牌翻一次,直到最后\n"); printf(" 一张牌;然后…从第4张开始,以4为基数,是4的倍数的牌翻一次, 直到最后一张牌;\n"); printf(" 再依次5的倍数的牌翻一次,6的,7的 直到 以52为基数的 翻过,输出:这时正面向\n"); printf(" 上的牌有哪些?\n"); printf("\t*1.游戏分析:\n*2.输出结果:"); printf("请输入你的选择"); scanf("%d",&m); m=fenxi(m); m=shuchu(m);}
void fenxi(1){
int a[52]; int i,j; printf("游戏分析:\n\n"); printf("\t如下列数组,游戏开始时,所有牌面朝上,每张牌翻一下,则该张牌出现一次,若"); printf("出现偶数次的牌为正反抵消,依然为朝上的,所以朝上的为1和以下偶数次出现的数。\n"); for(i=1;i<=53;i++) { for(j=2;j<=53;j++) if(i%j==0) { printf("%d ",i);
} printf("\n"); } retnrn}void shuchu(2){ int a[52]; int i,j; printf("\n\n第五十二次翻牌过后正面向上的有:\n\n"); for(i=1;i<=52;i++) { a[i]=-1; } for(i=1;i<=53;i++) {
for(j=2;j<=53;j++) { if(i%j==0) {
a[i]=a[i]*-1; } } }
printf("正面向上的牌有:\n"); for(i=1;i<=52;i++) { if(a[i]*-1==1) printf("%d ",i); } getch(); }
#include"stdio.h"
void fenxi(int n);
void shuchu(int n);
void fenxi(int n)
{
int a[52];
int i,j;
printf("游戏分析:\n\n");
printf("\t如下列数组,游戏开始时,所有牌面朝上,每张牌翻一下,则该张牌出现一次,若");
printf("出现偶数次的牌为正反抵消,依然为朝上的,所以朝上的为1和以下偶数次出现的数。\n");
for(i=0;i<52;i++)
{
for(j=2;j<52;j++)
if(i%j==0)
{
printf("%d ",i);
}
printf("\n");
}
}
void shuchu(int n)
{
int a[52];
int i,j;
printf("\n\n第五十二次翻牌过后正面向上的有:\n\n");
for(i=0;i<52;i++)
{
a[i]=-1;
}
for(i=0;i<52;i++)
{
for(j=2;j<52;j++)
{
if(i%j==0)
{
a[i]=a[i]*-1;
}
}
}
printf("正面向上的牌有:\n");
for(i=0;i<52;i++)
{
if(a[i]*-1==1)
printf("%d ",i);
}
//getch();
}
void main()
{
int m;
printf("\n\n\n");
printf("\t\t\t******纸牌游戏******\n");
printf("游戏规则如下:\n\n\n");
printf("\t编号为1-52张牌,正面向上,从第2张开始,以2为基数,是2的倍数的牌翻一次,\n");
printf(" 直到最后一张牌;然后,从第3张开始,以3为基数,是3的倍数的牌翻一次,直到最后\n");
printf(" 一张牌;然后…从第4张开始,以4为基数,是4的倍数的牌翻一次, 直到最后一张牌;\n");
printf(" 再依次5的倍数的牌翻一次,6的,7的 直到 以52为基数的 翻过,输出:这时正面向\n");
printf(" 上的牌有哪些?\n"); printf("\t*1.游戏分析:\n*2.输出结果:");
printf("请输入你的选择");
scanf("%d",&m);
fenxi(m);
shuchu(m);
}