?? bye.c
字號:
/*顯示結束信息*/
void bye()
#define LIFE_WIDTH 100
#define LEFT 270
#define TOP 160
{
char orgData[LIFE_WIDTH][LIFE_WIDTH],
resData[LIFE_WIDTH][LIFE_WIDTH];/*分別記錄每次迭代的初始和結果狀態*/
int nCount,nRows,nCols,i,j,times; /*times記錄迭代次數*/
for (i=0;i<LIFE_WIDTH;i++) /*初始化數據,令每一個細胞為生*/
for (j=0;j<LIFE_WIDTH;j++)
orgData[i][j]=(char)(random(100)<50);
setbkcolor(BLACK);
hz(190,60,16*2,2,YELLOW,"生命不息,");
hz(290,100,16*2,2,YELLOW,"奮斗不止!");
hz(120,300,16*2,2,BLUE,"作者:");
hz(150,340,16*2,2,BLUE,"電子系0203班 韓海");
setcolor(WHITE);
rectangle(LEFT,TOP,LEFT+LIFE_WIDTH,TOP+LIFE_WIDTH);
while(!kbhit())
{
for (nRows=1;nRows<LIFE_WIDTH-1;nRows++)
{
for (nCols=1;nCols<LIFE_WIDTH-1;nCols++)
{
/*計算每一個細胞周圍的活的細胞數*/
nCount=orgData[nRows-1][nCols-1]+orgData[nRows-1][nCols]
+orgData[nRows-1][nCols+1]+orgData[nRows][nCols-1]
+orgData[nRows][nCols+1]+orgData[nRows+1][nCols-1]
+orgData[nRows+1][nCols]+orgData[nRows+1][nCols+1];
switch(nCount)
{
/*周圍有3個活細胞,該細胞為生,在屏幕上用紅色像素表示*/
case 3:
putpixel(nCols+LEFT,TOP+nRows,RED);
resData[nRows][nCols]=1;
break;
/*周圍有2個活細胞,該細胞不變,在屏幕顯示也不變*/
case 2:
resData[nRows][nCols]=orgData[nRows][nCols];
break;
/*其它情況下,細胞為死,在屏幕上用黑色像素表示*/
default:
resData[nRows][nCols]=random(300)==1;
putpixel(nCols+LEFT,TOP+nRows,BLACK);
}
}
}
for (i=1;i<LIFE_WIDTH-1;i++)
for (j=1;j<LIFE_WIDTH-1;j++)
orgData[i][j]=resData[i][j];
}
}
?? 快捷鍵說明
復制代碼
Ctrl + C
搜索代碼
Ctrl + F
全屏模式
F11
切換主題
Ctrl + Shift + D
顯示快捷鍵
?
增大字號
Ctrl + =
減小字號
Ctrl + -