[心得] 5/27 程設
#include <stdio.h>
#include <stdlib.h>
#include <time.h>
#include <windows.h>
void print_matrix(int *p); //宣告副程式
int main(void)
{ int q[16]={0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0}; //答案陣列
int a[16]={0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0}; //問題陣列
int i,j,k,l,b=16;
srand(time(NULL));
for(j=1;j<=16;j++)
{ do
{ i=rand()%16; //設定要放入數字的隨機陣列位置
}while(a[i]!=0); //當陣列位置已放入數字重新尋找未放入數字得陣列位置
if(j<9)
{ a[i]=j;
}
else
{ a[i]=j-8;
} //設定第2組1~8
}
printf("===釣魚遊戲===\n");
print_matrix(q);
do
{ printf("請翻兩張牌\n");
scanf("%d %d",&k,&l);
q[k-1]=a[k-1]; //因正常的會填入1~16 不符合陣列使用規則故減1
q[l-1]=a[l-1]; //同上
print_matrix(q);
if(q[k-1]!=q[l-1])
{ printf("在努力!!\n"); //加油!!
q[k-1]=0,q[l-1]=0; //若不是配對則答案欄歸零
}
else
{ printf("厲害唷!!\n"); //鼓勵!!
b=b-2; //猜對後減兩個猜出的數字
}
Sleep(2000); //系統暫停2秒鐘
system("cls"); //清除螢幕的系統指令
}while(b!=0); //在還沒完全猜出前迴圈
system("pause");
return(0);
}
void print_matrix(int *p) //副程式
{ int i;
for(i=0;i<16;i++)
{ printf("%3d",*(p+i)); //設定要填入數字的答案陣列
if(i%4==3)
{printf("\n");
}
}
}
--
※ 發信站: 批踢踢實業坊(ptt.cc)
◆ From: 140.136.162.61