赞
踩
目录
█ 开发工具:Dev C++
分为读取和储存,即分为 File_out() 和 File_in();
- /**
- * 储存最高分进文件
- */
- void File_in()
- {
- FILE *fp;
- fp = fopen("save.txt", "w+"); //以读写的方式建立一个名为save.txt的文件
- fprintf(fp, "%d", score); //把分数写进文件中
- fclose(fp); //关闭文件
- }
-
-
-
- /**
- * 在文件中读取最高分
- */
- void File_out()
- {
- FILE *fp;
- fp = fopen("save.txt", "a+"); //打开文件save.txt
- fscanf(fp, "%d", &HighScore); //把文件中的最高分读出来
- fclose(fp); //关闭文件
- }

✔ 文件中写入数据的步骤,首先使用fopen()方法来打开文件,如果要打开的文件不存在,那么创建此文件;然后通过fprintf()方法把数据写入文件;最后使用fclose()方法关闭文件。
- //隐藏光标
- void HideCursor()
- {
- CONSOLE_CURSOR_INFO curInfo; //定义光标信息的结构体变量
- curInfo.dwSize = 1; //如果没赋值的话,隐藏光标无效
- curInfo.bVisible = FALSE; //将光标设置为不可见
- HANDLE handle = GetStdHandle(STD_OUTPUT_HANDLE); //获取控制台句柄
- SetConsoleCursorInfo(handle, &curInfo); //设置光标信息
- }
- /**
- * 初始化蛇身,画蛇身
- */
- void initsnake()
- {
- snakee *tail; //定义蛇尾指针
- int i;
- tail=(snakee*)malloc(sizeof(snakee)); //初始化指针,给指针开辟一块初始空间
- //从蛇尾开始,头插法,以x,y设定开始的位置//
- tail->x=24; //蛇的初始位置(24,5)
- tail->y=5;
- tail->next=NULL;
- for(i=1;i<=4;i++) //设置蛇身,长度为5
- {
- head=(snakee*)malloc(sizeof(snakee)); //初始化蛇头 lgm 前面已经全局变量蛇头指针 snake *head
- head->next=tail; //蛇头的下一位为蛇尾
- head->x=24+2*i; //设置蛇头位置
- head->y=5;
- tail=head; //蛇头变成蛇尾,然后重复循环
- }
- while(tail!=NULL) //从头到尾,输出蛇身
- {
- gotoxy(tail->x,tail->y);
- color(2);
- printf("★"); //输出蛇身,蛇身使用★组成
- tail=tail->next; //蛇头输出完毕,输出蛇头的下一位,一直输出到蛇尾
- }
- }

- #include<mmsystem.h> //多媒体设备接口
- #pragma comment(lib,"winmm.lib") //预处理命令
- mciSendString("open music1.MP3",0,0,0);
- mciSendString("play music1.MP3 repeat",0,0,0);
✔ music1.MP3 是同路径下的一个MP3文件。
如果报错,可能需要在编译器环境里添加-lwinmm;即点击工具-->点击编译选项-->在下图位置添加。
注:有借鉴他人博客。
- //#include<stdafx.h> //vc自带头文件 在Dev-c++中不需要
- #include<stdio.h>
- #include<conio.h> //标准输入输出函数库
- #include<time.h> //用于获得随机数
- #include<windows.h> //控制dos界面
- #include<mmsystem.h> //多媒体设备接口
- #pragma comment(lib,"winmm.lib") //预处理命令
- #include<stdlib.h> //即standard library标志库头文件,里面定义了一些宏和通用工具函数
-
- //接收键盘输入输出
- /*******宏 定 义*******/
- #define U 1
- #define D 2
- #define L 3
- #define R 4 //蛇的状态,U:上 ;D:下;L:左 R:右
- /*******定 义 全 局 变 量 *******/
- typedef struct snake //蛇身的一个节点
- {
- int x;
- int y;
- struct snake *next;
- }snakee;
-
- int score=0,add=10; //总得分与每次吃食物得分
- int HighScore = 0; //最高分
- int status,sleeptime=400; //蛇前进状态,每次运行的时间间隔
- snakee *head, *food; //蛇头指针,食物指针
- snakee *q; //遍历蛇的时候用到的指针
- int endgamestatus=0; //游戏结束的情况,1:撞到墙;2:咬到自己;3:主动退出游戏。
- HANDLE hOut; //控制台句柄
-
- /*******函 数 声 明 *******/
- void gotoxy(int x,int y); //设置光标位置
- int color(int c); //更改文字颜色
- void printsnake(); //字符画---蛇
- void welcometogame(); //开始界面
- void createMap(); //绘制地图
- void scoreandtips(); //游戏界面右侧的得分和小提示
- void initsnake(); //初始化蛇身,画蛇身
- void createfood(); //创建并随机出现食物
- int biteself(); //判断是否咬到了自己
- void cantcrosswall(); //设置蛇撞墙的情况
- void speedup(); //加速
- void speeddown(); //减速
- void snakemove(); //控制蛇前进方向
- void keyboardControl(); //控制键盘按键
- void Lostdraw(); //游戏结束界面
- void endgame(); //游戏结束
- void choose(); //游戏失败之后的选择
- void File_out(); //在文件中读取最高分
- void File_in(); //储存最高分进文件
- void HideCursor(); //隐藏光标
- void explation(); //游戏说明
-
- //主函数
- int main()
- {
-
- HideCursor();
- mciSendString("open music1.MP3",0,0,0);
- mciSendString("play music1.MP3 repeat",0,0,0);
- system("mode con cols=100 lines=30"); //设置控制台的宽高
- printsnake(); //to draw the snake by character
-
- welcometogame(); //start to play game
- File_out();
- keyboardControl();
-
- endgame();
- return 0;
- }
-
- //
- /**
- * 设置光标位置
- */
- void gotoxy(int x,int y)
- {
- COORD c;
- c.X=x;
- c.Y=y;
- SetConsoleCursorPosition(GetStdHandle(STD_OUTPUT_HANDLE),c);
- }
-
- //隐藏光标
- void HideCursor()
- {
- CONSOLE_CURSOR_INFO curInfo; //定义光标信息的结构体变量
- curInfo.dwSize = 1; //如果没赋值的话,隐藏光标无效
- curInfo.bVisible = FALSE; //将光标设置为不可见
- HANDLE handle = GetStdHandle(STD_OUTPUT_HANDLE); //获取控制台句柄
- SetConsoleCursorInfo(handle, &curInfo); //设置光标信息
- }
-
- /**
- * 文字颜色函数 此函数的局限性:1、只能Windows系统下使用 2、不能改变背景颜色
- */
- int color(int c)
- {
- SetConsoleTextAttribute(GetStdHandle(STD_OUTPUT_HANDLE), c); //更改文字颜色
- return 0;
- }
-
- /*
- * 使用字符画---snake
- */
-
- void printsnake()
- {
- color(2);
- printf(" \n");
- printf(" __________ ___ \n");
- printf(" / \\ / \\ \\ |____ __\\__ \n");
- printf(" / ________ \\ / ___ \\ _/ __ | | / \n");
- printf(" | | |__| _/_ |_| / [|] |/ \n");
- printf(" | | | | | / _|_ \\__/ \n");
- printf(" \\ \\_______ / \\ |___/ ____ \n");
- printf(" \\ \\ ____ ____ ____ __ | | ___ ______ \n");
- printf(" \\_______ \\ | |/ \\ / \\_/ / | | / / / \\ \n");
- printf(" \\ \\ | ___ \\ / ____ / | |/ / / ____ \\ \n");
- printf(" __ | | | / \\ \\ | | | / | / | /____\\ | \n");
- printf(" \\ \\_______| | | | | | | |__| | | \\ | ________/ \n");
- printf(" \\ / | | | | \\ \\ | |\\ \\ \\ \\____ \n");
- printf(" \\__________/ |__| |__| \\___/\\__\\ |__| \\__\\ \\______/ \n");
- }
-
- void welcometogame()
- {
- int n;
- int i,j = 1;
- gotoxy(43,18);
- color(15);
- printf("贪 吃 蛇 大 作 战");
- color(15); //黄色边框
- for (i = 20; i <= 26; i++) //输出上下边框┅
- {
- for (j = 27; j <= 74; j++) //输出左右边框┇
- {
- gotoxy(j, i);
- if (i == 20 || i == 26)
- {
- printf("-");
- }
- else if (j == 27 || j == 74)
- {
- printf("|");
- }
- }
- }
- color(2);
- gotoxy(35, 22);
- printf("1.开始游戏");
- gotoxy(55, 22);
- printf("2.游戏说明");
- gotoxy(35, 24);
- printf("3.退出游戏");
- gotoxy(29,27);
- color(15);
- printf("请选择[1 2 3]:[ ]\b\b"); //\b为退格,使得光标处于[]中间
- color(2);
- scanf("%d", &n); //输入选项
- switch (n)
- {
- case 1:
- system("cls");
- createMap(); //创建地图
- initsnake(); //初始化蛇身
- createfood(); //创建食物
- keyboardControl(); //按键控制
- break;
- case 2:
- explation();
- break;
- case 3:
- exit(0); //退出游戏
- break;
- default: //输入非1~3之间的选项
- color(12);
- gotoxy(40,28);
- printf("请输入1~3之间的数!");
- getch(); //输入任意键
- system("cls"); //清屏
- printsnake();
- welcometogame();
- }
- }
-
- /**
- * 创建地图
- */
- void createMap()
- {
- int i,j;
- for(i=0;i<58;i+=2) //打印上下边框
- {
- gotoxy(i,0);
- color(2); //深紫色的边框
- printf("□");
- gotoxy(i,26);
- printf("□");
- }
- for(i=1;i<26;i++) //打印左右边框
- {
- gotoxy(0,i);
- printf("□");
- gotoxy(56,i);
- printf("□");
- }
- for(i = 2;i<56;i+=2) //打印中间网格
- {
- for(j = 1;j<26;j++)
- {
- gotoxy(i,j);
- color(15);
- printf("■");
- }
- }
- }
- /**
- * 游戏界面右侧的得分和小提示
- */
- void scoreandtips()
- {
- File_out();
- gotoxy(64,4);
- color(11);
- printf("☆最高记录☆:%d",HighScore);
- gotoxy(64,8);
- color(14);
- printf("得分:%d ",score);
- gotoxy(64,9);
- color(14);
- printf("等级:%d",score/100);
- color(13);
- gotoxy(73,11);
- printf("小 提 示");
- gotoxy(60,13);
- color(6);
- printf("╬ ┅┅┅┅┅┅┅┅┅┅┅┅┅┅┅ ╬");
- gotoxy(60,25);
- printf("╬ ┅┅┅┅┅┅┅┅┅┅┅┅┅┅┅ ╬");
- color(3);
- gotoxy(64,14);
- printf("每个食物得分:%d分",add);
- gotoxy(64,16);
- printf("不能穿墙,不能咬到自己");
- gotoxy(64,18);
- printf("用↑ ↓ ← →分别控制蛇的移动");
- gotoxy(64,20);
- printf("F1 为加速,F2 为减速");
- gotoxy(64,22);
- printf("space:暂停游戏");
- gotoxy(64,24);
- printf("ESC :退出游戏");
- }
-
-
-
- /**
- * 初始化蛇身,画蛇身
- */
- void initsnake()
- {
- snakee *tail; //定义蛇尾指针
- int i;
- tail=(snakee*)malloc(sizeof(snakee)); //初始化指针,给指针开辟一块初始空间
- //从蛇尾开始,头插法,以x,y设定开始的位置//
- tail->x=24; //蛇的初始位置(24,5)
- tail->y=5;
- tail->next=NULL;
- for(i=1;i<=4;i++) //设置蛇身,长度为5
- {
- head=(snakee*)malloc(sizeof(snakee)); //初始化蛇头 lgm 前面已经全局变量蛇头指针 snake *head
- head->next=tail; //蛇头的下一位为蛇尾
- head->x=24+2*i; //设置蛇头位置
- head->y=5;
- tail=head; //蛇头变成蛇尾,然后重复循环
- }
- while(tail!=NULL) //从头到尾,输出蛇身
- {
- gotoxy(tail->x,tail->y);
- color(2);
- printf("★"); //输出蛇身,蛇身使用★组成
- tail=tail->next; //蛇头输出完毕,输出蛇头的下一位,一直输出到蛇尾
- }
- }
-
- /**
- * 随机出现食物
- */
- void createfood()
- {
- snakee *food_1; //定义临时食物指针
- //srand((unsigned)time(NULL)); //初始化随机数
-
- food_1=(snakee*)malloc(sizeof(snakee)); //初始化food_1
- srand(time(NULL)); //初始化随机数
-
- //保证其为偶数,使得食物能与蛇头对其,然后食物会出现在网格线上
- food_1->x=rand()%52+2;
- //food_1->x=23;
- while((food_1->x%2)!=0)
- {
- food_1->x=rand()%52+2; //食物随机出现
- }
- food_1->y=rand()%24+1;
- q=head;
- while(q->next==NULL)
- {
- if(q->x==food_1->x && q->y==food_1->y) //判断蛇身是否与食物重合
- {
- free(food_1); //如果蛇身和食物重合,那么释放食物指针
- createfood(); //重新创建食物
- }
- q=q->next;
- }
- gotoxy(food_1->x,food_1->y);
- food=food_1;
- color(12);
- printf("◎"); //输出食物
- }
-
-
- /**** to see if the snake bite himdelf**/
- int biteself()
- {
- snakee *self; //定义self为蛇身上的一个节点
- self=head->next; //self是蛇头之外的蛇身上的节点,从蛇头的下一个节点开始
- while(self!=NULL)
- {
- if(self->x==head->x && self->y==head->y) //如果self和蛇身上的节点重合
- {
- return 1; //返回1
- }
- self=self->next;
- }
- return 0;
- }
- /**
- * 设置蛇撞墙的情况
- */
- void cantcrosswall()
- {
- if(head->x==0 || head->x==56 ||head->y==0 || head->y==26) //如果蛇头碰到了墙壁
- {
- endgamestatus=1; //返回第一种情况
- endgame(); //出现游戏结束界面
- }
- }
- /**
- * 加速,蛇吃到食物会自动提速,并且按F1会加速
- */
- void speedup()
- {
- if(sleeptime>=50) //如果时间间隔大于等于50
- {
- sleeptime=sleeptime-10; //时间间隔减10
- add=add+2; //每吃一次食物,得分加2
-
- }
- }
- /**
- * 减速,按F2会减速
- */
- void speeddown()
- {
- if(sleeptime<350) //如果时间间隔小于350
- {
- sleeptime=sleeptime+30; //时间间隔加上30
- add=add-2; //每吃一次食物的得分减2
-
- }
- }
- void keyboardControl()
- {
- status=D; //初始蛇向下移动
- while(1)
- {
- scoreandtips();
- if(GetAsyncKeyState(VK_UP) && status!=D) //GetAsyncKeyState函数用来判断函数调用时指定虚拟键的状态
- {
- status=U; //如果蛇不是向下前进的时候,按上键,执行向上前进操作
- }
- else if(GetAsyncKeyState(VK_DOWN) && status!=U) //如果蛇不是向上前进的时候,按下键,执行向下前进操作
- {
- status=D;
- }
- else if(GetAsyncKeyState(VK_LEFT)&& status!=R) //如果蛇不是向右前进的时候,按左键,执行向左前进
- {
- status=L;
- }
- else if(GetAsyncKeyState(VK_RIGHT)&& status!=L) //如果蛇不是向左前进的时候,按右键,执行向右前进
- {
- status=R;
- }
- if(GetAsyncKeyState(VK_SPACE)) //按暂停键,执行pause暂停函数
- {
- while(1)
- {
- Sleep(300); //sleep()函数,头文件#include <unistd.h> 另进程暂停,知道达到里面设定的参数的时间。
- if(GetAsyncKeyState(VK_SPACE)) //按空格键暂停
- {
- break;
- }
-
- }
- }
- else if(GetAsyncKeyState(VK_ESCAPE))
- {
- endgamestatus=3; //按esc键,直接到结束界面
- break;
- }
- else if(GetAsyncKeyState(VK_F1)) //按F1键,加速
- {
- speedup();
- }
- else if(GetAsyncKeyState(VK_F2)) //按F2键,减速
- {
- speeddown();
-
- }
- Sleep(sleeptime);
- snakemove();
- }
- }
-
- /**
- * 控制方向
- */
- void snakemove() //蛇前进,上U,下D,左L,右R
- {
- snakee *nexthead;
- cantcrosswall();
- nexthead=(snakee*)malloc(sizeof(snakee)); //为下一步开辟空间
- //
- // 向上运动程序段
- //
- if(status==U)
- {
- nexthead->x=head->x; //向上前进时,x坐标不动,y坐标-1
- nexthead->y=head->y-1;
- nexthead->next=head;
- head=nexthead;
- q=head; //指针q指向蛇头
- if(nexthead->x==food->x && nexthead->y==food->y) //如果下一个有食物 下一个位置的坐标和食物的坐标相同
- {
-
- while(q!=NULL)
- {
- gotoxy(q->x,q->y);
- color(2);
- printf("★"); //原来食物的位置,从●换成★
- q=q->next; //指针q指向的蛇身的下一位也执行循环里的操作
-
- }
- score=score+add; //吃了一个食物,在总分上加上食物的分
- speedup();
- createfood(); //创建食物
- }
- else
- {
- while(q->next->next!=NULL) //如果没遇到食物
- {
- gotoxy(q->x,q->y);
- color(2);
- printf("★"); //蛇正常往前走,输出当前位置的蛇身
- q=q->next; //继续输出整个蛇身
- }
- gotoxy(q->next->x,q->next->y); //经过上面的循环,q指向蛇尾,蛇尾的下一位,就是蛇走过去的位置
- color(15);
- printf("■");
- free(q->next); //进行输出■之后,释放指向下一位的指针
- q->next=NULL; //指针下一位指向空
- }
- }
- //
- // 向下运动程序段
- //
- if(status==D)
- {
- nexthead->x=head->x; //向下前进时,x坐标不动,y坐标+1
- nexthead->y=head->y+1;
- nexthead->next=head;
- head=nexthead;
- q=head;
- if(nexthead->x==food->x && nexthead->y==food->y) //有食物
- {
-
- while(q!=NULL)
- {
- gotoxy(q->x,q->y);
- color(2);
- printf("★");
- q=q->next;
- }
- score=score+add;
- speedup();
- createfood();
- }
- else //没有食物
- {
- while(q->next->next!=NULL)
- {
- gotoxy(q->x,q->y);
- color(2);
- printf("★");
- q=q->next;
- }
- gotoxy(q->next->x,q->next->y);
- color(15);
- printf("■");
- free(q->next);
- q->next=NULL;
- }
- }
- //
- // 向左运动程序段
- //
- if(status==L)
- {
- nexthead->x=head->x-2; //向左前进时,x坐标向左移动-2,y坐标不动
- nexthead->y=head->y;
- nexthead->next=head;
- head=nexthead;
- q=head;
- if(nexthead->x==food->x && nexthead->y==food->y)//有食物
- {
- while(q!=NULL)
- {
- gotoxy(q->x,q->y);
- color(2);
- printf("★");
- q=q->next;
- }
- score=score+add;
- speedup();
- createfood();
- }
- else //没有食物
- {
- while(q->next->next!=NULL)
- {
- gotoxy(q->x,q->y);
- color(2);
- printf("★");
- q=q->next;
- }
- gotoxy(q->next->x,q->next->y);
- color(15);
- printf("■");
- free(q->next);
- q->next=NULL;
- }
- }
- //
- // 向右运动程序段
- //
- if(status==R)
- {
- nexthead->x=head->x+2; //向右前进时,x坐标向右移动+2,y坐标不动
- nexthead->y=head->y;
- nexthead->next=head;
- head=nexthead; //此句以为让蛇不断前进
- q=head;
- if(nexthead->x==food->x && nexthead->y==food->y)//有食物
- {
- while(q!=NULL)
- {
- gotoxy(q->x,q->y);
- color(2);
- printf("★");
- q=q->next;
- }
- score=score+add;
- speedup();
- createfood();
- }
- else //没有食物
- {
- while(q->next->next!=NULL)
- {
- gotoxy(q->x,q->y);
- color(2);
- printf("★");
- q=q->next;
- }
- gotoxy(q->next->x,q->next->y);
- color(15);
- printf("■");
- free(q->next);
- q->next=NULL;
- }
- }
- //
- if(biteself()==1) //判断是否会咬到自己
- {
- endgamestatus=2;
- endgame();
- }
- }
- /**
- * 控制键盘按键控制蛇的前进方向
- */
-
- /**
- * 储存最高分进文件
- */
- void File_in()
- {
- FILE *fp;
- fp = fopen("save.txt", "w+"); //以读写的方式建立一个名为save.txt的文件
- fprintf(fp, "%d", score); //把分数写进文件中
- fclose(fp); //关闭文件
- }
-
- /**
- * 在文件中读取最高分
- */
- void File_out()
- {
- FILE *fp;
- fp = fopen("save.txt", "a+"); //打开文件save.txt
- fscanf(fp, "%d", &HighScore); //把文件中的最高分读出来
- fclose(fp); //关闭文件
- }
-
- /*
- * 游戏说明
- */
- void explation()
- {
- int i,j = 1;
- system("cls");
- color(13);
- gotoxy(44,3);
- printf("游戏说明");
- color(2);
- for (i = 6; i <= 22; i++) //输出上下边框===
- {
- for (j = 20; j <= 75; j++) //输出左右边框||
- {
- gotoxy(j, i);
- if (i == 6 || i == 22) printf("=");
- else if (j == 20 || j == 75) printf("||");
- }
- }
- color(3);
- gotoxy(30,8);
- printf("tip1: 不能穿墙,不能咬到自己");
- color(10);
- gotoxy(30,11);
- printf("tip2: 用↑.↓.←.→分别控制蛇的移动");
- color(14);
- gotoxy(30,14);
- printf("tip3: F1 为加速,F2 为减速");
- color(11);
- gotoxy(30,17);
- printf("tip4: 按空格键暂停游戏,再按空格键继续");
- color(4);
- gotoxy(30,20);
- printf("tip5: ESC :退出游戏.space:暂停游戏");
- getch(); //按任意键返回主界面
- system("cls");
- printsnake();
- welcometogame();
- }
-
-
-
- /**
- * 结束游戏
- */
- void endgame()
- {
- system("cls");
- if(endgamestatus==1)
- {
-
- Lostdraw();
- gotoxy(35,9);
- color(12);
- printf("对不起,您撞到墙了。游戏结束!");
- }
- else if(endgamestatus==2)
- {
-
- Lostdraw();
- gotoxy(35,9);
- color(12);
- printf("对不起,您咬到自己了。游戏结束!");
- }
- else if(endgamestatus==3)
- {
- Lostdraw();
- gotoxy(40,9);
- color(12);
- printf("您已经结束了游戏。");
- }
- gotoxy(43,12);
- color(13);
- printf("您的得分是 %d",score);
-
-
- gotoxy(43,14);
- color(13);
- printf("游戏等级为 %d",score/100);
-
-
- if(score >= HighScore)
- {
- color(10);
- gotoxy(33,16);
- printf("创纪录啦!最高分被你刷新啦,真棒!!!");
- File_in(); //把最高分写进文件
- }
- else
- {
- color(10);
- gotoxy(33,16);
- printf("继续努力吧~ 你离最高分还差:%d",HighScore-score);
- }
- choose();
- }
-
- /**
- * 边框下面的分支选项
- */
- void choose()
- {
- int n;
- gotoxy(25,23);
- color(12);
- printf("我要重新玩一局-------1");
- gotoxy(52,23);
- printf("不玩了,退出吧-------2");
- gotoxy(46,25);
- color(11);
- printf("选择:");
- scanf("%d", &n);
- switch (n)
- {
- case 1:
- system("cls"); //清屏
- score=0; //分数归零
- sleeptime=200; //设定初始速度
- add = 10; //使add设定为初值,吃一个食物得分10,然后累加
- printsnake(); //返回欢迎界面
- welcometogame();
- break;
- case 2:
- exit(0); //退出游戏
- break;
- default:
- gotoxy(35,27);
- color(12);
- printf("※※您的输入有误,请重新输入※※");
- system("pause >nul");
- endgame();
- choose();
- break;
- }
-
- }
- /**
- * 失败界面
- */
- void Lostdraw()
- {
- system("cls");
- int i;
- gotoxy(45,2);
- color(6);
- printf("\\\\\\|///");
- gotoxy(43,3);
- printf("\\\\");
- gotoxy(47,3);
- color(15);
- printf(".-.-");
- gotoxy(54,3);
- color(6);
- printf("//");
-
- gotoxy(44,4);
- color(14);
- printf("(");
-
- gotoxy(47,4);
- color(15);
- printf(".@.@");
-
- gotoxy(54,4);
- color(14);
- printf(")");
-
- gotoxy(17,5);
- color(11);
- printf("+------------------------");
-
- gotoxy(35,5);
- color(14);
- printf("oOOo");
-
- gotoxy(39,5);
- color(11);
- printf("----------");
-
- gotoxy(48,5);
- color(14);
- printf("(_)");
-
- gotoxy(51,5);
- color(11);
- printf("----------");
-
- gotoxy(61,5);
- color(14);
- printf("oOOo");
-
- gotoxy(65,5);
- color(11);
- printf("-----------------+");
-
- for(i = 6;i<=19;i++) //竖边框
- {
- gotoxy(17,i);
- printf("|");
- gotoxy(82,i);
- printf("|");
- }
-
- gotoxy(17,20);
- printf("+---------------------------------");
-
- gotoxy(52,20);
- color(14);
- printf("〝 ☆☆☆ 〞");
-
- gotoxy(60,20);
- color(11);
- printf("----------------------+");
-
- }
-

Copyright © 2003-2013 www.wpsshop.cn 版权所有,并保留所有权利。