#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,死亡为0void 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] = 1;}
}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("*");    //输出活细胞elseprintf(" ");     //输出死细胞
    }printf("\n");}Sleep(50);
}void updateWithoutInput()       //与用户输入无关的更新
{int NewCells[High][Width];int NeibourNumber;int i,j;for(i = 1; i <= High-1; i++)for(j = 1; j <= Width-1; j++){NeibourNumber = cells[i-1][j-1]+cells[i-1][j]+cells[i-1][j+1]+cells[i][j-1]+cells[i][j+1]+cells[i+1][j-1]+cells[i+1][j]+cells[i+1][j+1];if(NeibourNumber == 3)NewCells[i][j] = 1;else if(NeibourNumber == 2)NewCells[i][j] = cells[i][j];elseNewCells[i][j] = 0;}for(i = 1; i <= High-1; i++)for(j = 1; j <= Width-1; j++)cells[i][j] = NewCells[i][j];
}void updateWithInput()          //与用户输入有关的更新
{}int main()
{startup();while(1){show();updateWithoutInput();updateWithInput();}return 0;
}

转载于:https://www.cnblogs.com/JAYPARK/p/10273336.html

C语言——生命游戏(进阶相关推荐

  1. 细胞生命游戏一维c语言,生命游戏一维细胞自动机 笔记

    de 生命游戏是一种简单的聚合模型,展示了事物是如何聚合的,是自动机(CA)模型的一种.由剑桥大学约翰康威发明,其规则为: 1. 每个细胞拥有八个邻居,细胞状态只有存活(黑)和死亡(白)两种: 2.处 ...

  2. 细胞生命游戏一维c语言,生命游戏 细胞死亡问题

    [c]代码库#include #include #include #define MAXROW 10 #define MAXCOL 25 #define DEAD 0 #define ALIVE 1 ...

  3. C语言——生命游戏(初始

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

  4. c语言生命游戏代码大全,c++生命游戏源码

    该楼层疑似违规已被系统折叠 隐藏此楼查看此楼 glViewport( 0, 0, width, height ); glMatrixMode( GL_PROJECTION ); glLoadIdent ...

  5. Go语言生命游戏 GameofLife GOL

    目录 CSA Coursework: Game of Life Task Overview Introduction Skeleton Code Stage 1 - Parallel Implemen ...

  6. 伍六七带你学算法 进阶篇-生命游戏

    有趣的算法题–生命游戏 难度-中等 根据 百度百科 ,生命游戏,简称为生命,是英国数学家约翰·何顿·康威在 1970 年发明的细胞自动机. 想要体验生命游戏的小伙伴可以到这里-->生命游戏 进入 ...

  7. c语言设计生命游戏,C语言实现生命游戏.doc

    C语言实现生命游戏 本世纪70年代,人们曾疯魔一种被称作"生命游戏"的小游戏,这种游戏相当简单.假设有一个像棋盘一样的方格网,每个方格中放置一个生命细胞,生命细胞只有两种状态:&q ...

  8. Go语言模拟康威生命游戏Conway‘s Game of Life

    康威生命游戏是一种很有意思的游戏,显示的是细胞的生死状态取决于周边细胞(相邻8个细胞)的存活状态,是一种模拟生命的演化过程. 反过来看,还可模拟病毒的传染,患者传染给接触者,也可以设定概率,另外是否戴 ...

  9. C语言零基础项目:生命游戏!详细思路+源码分享

    每天一个C语言小项目,提升你的编程能力! 程序简介 生命游戏也叫康威生命游戏.细胞自动机.元胞自动机等. 生命游戏不需要任何玩家,它是一个二维矩形世界,这个世界中的每个方格居住着一个活细胞或为空. 一 ...

最新文章

  1. 钉钉、支付宝合种树,2-4天领证,限量9个名额
  2. python中文解释-python是解释型语言么
  3. hibernate 时间 默认值 -(mysql) 注解_注解@ -shihchang
  4. ubuntu mysql medium_ubuntu mysql远程连接+phpmyadmin安装
  5. python魔法函数(二)之__getitem__、__len__、__iter__
  6. 韩国小哥哥用Pytorch实现谷歌最强NLP预训练模型BERT | 代码
  7. b丅151组成的充电器电路_宜家LIVBOJ 无线充电器拆解,这设计一目了然
  8. linux 动态输出函数名,控制linux动态链接库导出函数
  9. poj -- 1042 Gone Fishing(枚举+贪心)
  10. 【随感】我觉得,世界上最美好的乐器是钢琴和架子鼓
  11. python程序应用经典实例-精心整理!9个 Python 实用案例分享
  12. python归一化函数_机器学习-归一化方法
  13. 1stOpt简单使用介绍
  14. 小程序上对接阿里的语音识别
  15. Morphia DAOs
  16. 用户行为分析大数据平台之(一)项目介绍
  17. AOP技术介绍--(AOP技术基础)
  18. javascript-轮播图
  19. 【机器学习】如何成为当下合格的算法工程师
  20. 【MATLAB实验】MATLAB图形绘制相关函数与定积分计算

热门文章

  1. 如何快速的将视频转成音频
  2. Unity TouchScript插件+G4 雷达+使用淘宝买的雷达信心采集模拟点击软件 实现多点触控操作
  3. 冲着当时撞过来的车速苏青青还以为自己是死定了了
  4. c语言中向计算机输入,C语言中字符数据的输入和输出
  5. LDO:A 318 nA quiescent IEEE文章解读
  6. idea去除无用的包_IDEA一键完成格式化、去除无用引用、编译的操作
  7. android学习日记一
  8. 深信服EDR远程命令执行
  9. 解决TypeError:insert()缺少1个必需的位置参数:’chars’
  10. 洛谷P1536村村通(并查集模板题)