c语言入门基础100题 游戏c语言编程


c语言入门基础100题 游戏c语言编程

文章插图
还记得我发的小白第一篇吗?上面记载了一些简单的随机数控制台程序的需求 。
毕竟这也算得上是小小的游戏吧,除了一些必要的机制之外,自然需要像文章那般润色 。现在,这篇文章将会分享一些有关的代码 。各位如果有更好的方法,欢迎在评论区发表看法 。
颜色每个人都不希望看到一成不变的黑色在控制台这里,那么,如何输出有颜色的文字呢?如何更改控制台背景色呢?
其中一种方法可以直接在printf()语句里加一些转义符号 。颜色的控制通过ESC字符(33)加”[“加颜色代码加”m”实现 。ESC的ASCII码是十进制的27,八进制的033(33) 。听上去很懵,没关系,举个栗子就好啦
这里搬上一个最全的例子:
printf(“33[1;40;32m color!!! 33[0m hellon”);33 声明了转义序列的开始,然后是 [ 开始定义颜色 。后面的 1 定义了高亮显示字符 。然后是背景颜色,这里面是40,表示黑色背景 。接着是前景颜色,这里面是32,表示绿色 。我们用 33[0m 关闭转义序列,33[0m 是终端默认颜色 。而下面的代码会产生什么结果呢?
printf("33[36m**********猜猜随机数2.5************n33[0m");printf("**************进入游戏请按:1*****************n");printf("**************游戏说明请按:2*****************n");printf("***************退出请按:3******************n");printf("**************************************************n");这是结果
其中这里可以通过调整36m来调整字体颜色 。
/*颜色列表如下:none= "33[0m"black= "33[0;30m"dark_gray= "33[1;30m"blue= "33[0;34m"light_blue= "33[1;34m"green= "33[0;32m"light_green -= "33[1;32m"cyan= "33[0;36m"light_cyan= "33[1;36m"red= "33[0;31m"light_red= "33[1;31m"purple= "33[0;35m"light_purple = "33[1;35m"brown= "33[0;33m"yellow= "33[1;33m"light_gray= "33[0;37m"white= "33[1;37m"字背景颜色范围:40--49字颜色: 30--3940: 黑30: 黑41:红31: 红42:绿32: 绿43:黄33: 黄44:蓝34: 蓝45:紫35: 紫46:深绿36: 深绿47:白色37: 白色*/其实调整颜色的方式不止一种,但是这种是小白学会的第一种方法 。还是很有纪念意义的 。
定点输出这个主要可以记录猜测过程中的步数等等 。如果不拘泥于这个随机数,还可以挂一个人物姓名,生命,时间等等在界面中不变的量 。但是我们总不能输出其他东西的时候空两格来输出这些 。所以,这时候就需要我们通过调整控制台光标坐标来达到定点输出的效果 。
比如此处的最佳记录
这里小白直接分享调整坐标的代码吧,通过调整坐标,我们就可以在控制台范围内输出任何东西 。
void zuobiao(int x,int y){COORD rd;rd.X = x;rd.Y = y;SetConsoleCursorPosition(GetStdHandle(STD_OUTPUT_HANDLE), rd);} //但是怎么用呢?zuobiao(58,9);printf("最佳记录:剩余%d次就猜中了 。",count); //酱紫就行啦,是不是很简单呢?


    以上关于本文的内容,仅作参考!温馨提示:如遇健康、疾病相关的问题,请您及时就医或请专业人士给予相关指导!

    「四川龙网」www.sichuanlong.com小编还为您精选了以下内容,希望对您有所帮助: