1. 程式人生 > >C語言——生命遊戲(初始

C語言——生命遊戲(初始

tput output lib 數據的初始化 turn art hand windows.h pre

#include<stdio.h>
#include<stdlib.h>
#include<conio.h>
#include<windows.h>
#include<time.h>

#define High 25
#define Width 50          //遊戲畫面的尺寸

int cells[High][Width];    //所有位置細胞生為1,死亡為0

void gotoxy(int x,int y)    //將光標移到(x,y)位置
{
    HANDLE handle = GetStdHandle(STD_OUTPUT_HANDLE);
    COORD pos;
    pos.X 
= x; pos.Y = y; SetConsoleCursorPosition(handle,pos); } void startup() //數據的初始化 { int i,j; for(i = 0; i < High; i++) for(j = 0; j < Width; j++) { cells[i][j] = rand()%2; } } void show() //顯示畫面 { gotoxy(0,0); //光標移動到原點位置,以下重畫清屏
int i,j; for(i = 0; i <= High; i++) { for(j = 0; j <= Width; j++) { if(cells[i][j] == 1) printf("*"); //輸出活細胞 else printf(" "); //輸出死細胞 } printf("\n"); } Sleep(50); } void updateWithoutInput() //與用戶輸入無關的更新
{ } void updateWithInput() //與用戶輸入有關的更新 { } int main() { startup(); while(1) { show(); updateWithoutInput(); updateWithInput(); } return 0; } #include<stdio.h> #include<stdlib.h> #include<conio.h> #include<windows.h> #include<time.h> #define High 25 #define Width 50 //遊戲畫面的尺寸 int cells[High][Width]; //所有位置細胞生為1,死亡為0 void gotoxy(int x,int y) //將光標移到(x,y)位置 { HANDLE handle = GetStdHandle(STD_OUTPUT_HANDLE); COORD pos; pos.X = x; pos.Y = y; SetConsoleCursorPosition(handle,pos); } void startup() //數據的初始化 { int i,j; for(i = 0; i < High; i++) for(j = 0; j < Width; j++) { cells[i][j] = rand()%2; } } void show() //顯示畫面 { gotoxy(0,0); //光標移動到原點位置,以下重畫清屏 int i,j; for(i = 0; i <= High; i++) { for(j = 0; j <= Width; j++) { if(cells[i][j] == 1) printf("*"); //輸出活細胞 else printf(" "); //輸出死細胞 } printf("\n"); } Sleep(50); } void updateWithoutInput() //與用戶輸入無關的更新 { } void updateWithInput() //與用戶輸入有關的更新 { } int main() { startup(); while(1) { show(); updateWithoutInput(); updateWithInput(); } return 0; }

C語言——生命遊戲(初始