C语言课程设计猜拳游戏

合集下载

猜拳C语言

猜拳C语言
default:printf("您出的是剪刀,电脑出的是布.....您赢了!\n");
}
}
else if(a==3)
{
switch(n)
{
case 1:printf("您出的是布,电脑出的是石头......您赢了!\n");break;
case 2:printf("您出的是布,电脑出的是剪刀......电脑赢了\n");break;
default:printf("双方出的都是布......平手\n");
}
}
else if(a==4)
{
goto tuichu;
}
else
{
printf("输入的数字有误!请重新输入!\n");
}
printf("........................................................\n");
Hale Waihona Puke #include<time.h>
void main()
{
int n;
int a;
int b;
b=1;
printf("这是一个猜拳小游戏!\n");
while(b<=20)
{
srand((unsigned)time(NULL));/*随机种子*/
n=rand()%(3-1+1)+1;/*n为1~3之间的随机数*/
printf("1:石头\n2:剪刀\n3:布(第%d场)\n4:不玩了,退出\n",b);
printf("输入相应的数字进行猜拳:\n");

c猜拳小游戏课程设计

c猜拳小游戏课程设计

c 猜拳小游戏课程设计一、课程目标知识目标:1. 学生能够理解猜拳小游戏的规则及基本算法。

2. 学生能够掌握运用条件语句和循环结构进行程序设计。

3. 学生能够运用基本的算术运算和比较运算完成猜拳游戏的逻辑判断。

技能目标:1. 学生能够运用所学编程知识,独立设计并实现一个简单的猜拳小游戏。

2. 学生能够通过编写代码,培养逻辑思维和问题解决能力。

3. 学生能够通过团队协作,提高沟通与协作能力。

情感态度价值观目标:1. 学生对编程产生兴趣,增强学习信息技术的积极性。

2. 学生能够体验编程的乐趣,培养创新意识和实践能力。

3. 学生在团队协作中学会互相尊重,培养良好的合作精神。

课程性质:本课程为信息技术学科,以实践操作为主,注重培养学生的动手能力和逻辑思维能力。

学生特点:六年级学生具备一定的信息素养,对计算机操作和编程有一定的基础,好奇心强,喜欢动手实践。

教学要求:课程要求学生在掌握基本编程知识的基础上,能够独立设计并实现猜拳小游戏,培养其编程兴趣和实际操作能力。

教师应将课程目标分解为具体的学习成果,通过引导、辅导和评估,帮助学生达成课程目标。

二、教学内容1. 猜拳游戏规则介绍:介绍猜拳游戏的基本规则,引导学生理解游戏胜负判断的逻辑。

2. 编程环境准备:指导学生熟悉编程环境,掌握基本的输入输出操作。

- 教材章节:《信息技术》第3章“编程环境与基本操作”3. 算法设计与分析:讲解猜拳游戏中的算法设计,引导学生学会运用条件语句和循环结构。

- 教材章节:《信息技术》第4章“算法设计与分析”4. 编程实现:教授如何运用所学知识编写猜拳游戏的代码。

- 教材章节:《信息技术》第5章“程序设计基础”5. 逻辑判断与算术运算:讲解猜拳游戏中逻辑判断和算术运算的应用。

- 教材章节:《信息技术》第6章“逻辑判断与算术运算”6. 测试与调试:指导学生进行猜拳游戏的测试与调试,确保程序正常运行。

- 教材章节:《信息技术》第7章“程序测试与调试”教学进度安排:第1课时:介绍猜拳游戏规则,熟悉编程环境与基本操作。

项目实战1 猜拳游戏C语言

项目实战1 猜拳游戏C语言

工具
猜拳游戏使用的编程工具是Microsoft Visual Studio 2010。
2016/3/6
中国职业教育联盟课程体系
8
1.4阶段划分
猜拳游戏实现阶段划分 阶段名称 第一阶段 第二阶段 第三阶段 用时 30分钟 65分钟 25分钟 描述 设计游戏界面、理清游戏思路,打印游戏 标题、规则。 实现电脑和用户出拳及比较。 实现统计并显示游戏结果。
游戏运行效果
2016/3/6
中国职业教育联盟课程体系
2
1.2问题分析
1、思考:用户如何出拳 ?
while(user<1 || user>3) 在游戏中只有三种拳式,即石头、剪刀、布。我们可 { 以先将这三种拳式进行编号(如 1、2、3),定义一 … //省略 scanf("%d",&user); 个变量用于存储用户当前局次的出拳,并提示用户怎 //判断出拳是否正确,若不正确 么出拳 给出提示 if(user <1 || user >3) 还要验证用户输入是否在规定范围内 提示信息如下: 接收用户输入,即用户出拳: 定义变量表示用户出拳: { scanf(“%d”,&user) printf("\t2. int user=0; 游戏中您可以输入 //表示用户的出拳,默认为 1、2、3printf("\t 分别代表出石头、剪刀、布。 0表示未出拳 \n"); 〖提示〗:出 ; 错了,只能选择1(石头)、2(剪刀)、3(布 代码提示: )!\n"); } …//省略 }
} else {
printf("您这次运气不错!需要再来一次吗(y/n)?\n"); } printf("请输入:"); fflush(stdin); //清空缓存 }while(scanf("%c",&in),in=='y' || in == 'Y');

C课程设计猜拳游戏

C课程设计猜拳游戏

课程设计说明书课程名称:高级语言程序设计设计题目:石头剪刀布游戏院部:计算机科学与信息工程学院学生:学号:专业班级:计算机科学与技术(信息技术方向)指导教师:2015年 6月课程设计任务书目录一前言 (1)二需求分析 (1)三概要设计 (1)四详细设计 (3)五改进或增加功能模块说明 (4)六程序测试 (4)七课程设计总结 (5)八致 (5)九参考文献 (5)十源程序 (6)五子棋游戏一前言猜拳游戏是由锤子、剪刀、布三部分组成。

玩家可以在游戏区逐次猜拳,系统会给出玩家每次猜拳后的提示,显示成功或者失败或者是平手。

二需求分析1 要求(1)用C语言实现程序设计;(2)定义各个函数分别完成不同功能,如背景设计,判断等;(3)画出查询模块的流程图;(4)系统的各个功能用函数调用的形式实现;(5)界面友好(良好的人机互交),程序要有注释。

2 任务(1)定义各类头文件,变量及宏定义;(2)图形模块,设计出棋盘背景界面;(3)设定玩家操作模块和胜负判断模块;(4)画出部分模块的流程图;(5)编写代码;(6)程序分析与调试。

3 运行环境(1)WINDOWS2000/XP系统(2)TurboC2.0编译环境4 开发工具C语言三概要设计1 模块组成图功能模块图2 查询函数流程图猜拳游戏从开始到结束的操作步骤的系统流程图函数流程图四详细设计在程序的开头部分定义要用到的头文件,以及各种常量,设定选手及游戏模式。

#include<stdio.h> /*标准输入/输出函数库*/#include<stdlib.h> / *标准函数库*/#include<string.h>#include<time.h>#include<windows.h>#inlcude<iostream>using namespace std;void SetColor(unsigned shortForeColor,unsigned short BackGroundColor){HANDLE hCon = GetStdHandle(STD_OUTPUT_HANDLE);SetConsoleTextAttribute(hCon,(ForeColor%16)|(BackgrundColor%16*16));}void face();void shuoming();void shezhi();void zuce();void tuichu();void paixu();void paihangbang();int cmp();int N = 20,maxx = 0,M;struct PP{char name[10];int score;}P[1000];输入函数,即为选手每一次出拳,用1、2、3分别表示石头、剪刀、布,通过输入数字来确定要出的是哪一个,每出一次进行判断是否合理(如是否是三者中的一个)并通过调用函数记录比赛的结果,则通过变量记录下获胜的次数,如果比赛完了主函数void youxi(){int wan = 1;while(wan <= M){P[wan - 1].score = 0;system("CLS");SetColor(14,0);printf("\n\n\n\n\n\n\n\n\n\t\t\t 下面有请 ");SetColor(12,0);printf("玩家 %d",wan);SetColor(14,0);printf(" 准备比赛!");SetColor(12,0);printf("\n\n\n\n\n\n\n\n\n\n\n\t\t\t\t\t\t\t【按任意键开始游戏】"); _sleep(2000);getchar();getchar();int a,i = 0;for(; i < N; i++){system("CLS");srand((unsigned)time(NULL));/*随机种子*/int n=rand()%(3-1+1)+1;/*n为1~3之间的随机数*/SetColor(13,0);printf("\n\n\n\n\t\t\t\t每 %d 回合为一轮\n",N);SetColor(14,0);printf("\n\n\t\t\t\t\t\t\t (第 %d 回合)",i+1);SetColor(15,0);printf("\n\n\n\n\n\t请输入你的要出的: ");SetColor(12,0);scanf("%d",&a);//getchar();system("CLS");printf("\n\n\n\n\n\n\n\n\n\n\t\t\t");SetColor(13,0);if(a==1){switch(n){case 1:printf("双方都是石头......平手\n");break;case 2:printf("您出的是石头,电脑出的是剪刀,......您赢了!\n"),P[wan-1].score++;break;default:printf("您出的是石头,电脑出的是布......电脑赢了\n");_sleep(1000);}}else if(a==2){switch(n){case 1:printf("您出的是剪刀,电脑出的是石头......电脑赢了\n");break;case 2:printf("双方出的都是剪刀......平手\n");break;default:printf("您出的是剪刀,电脑出的是布.....您赢了!\n"),P[wan-1].score++;_sleep(1000);}}else if(a==3){switch(n){case 1:printf("您出的是布,电脑出的是石头......您赢了!\n"),P[wan-1].score++;break;case 2:printf("您出的是布,电脑出的是剪刀......电脑赢了\n");break;default:printf("双方出的都是布......平手\n");_sleep(1000);}}else{printf("你输入的有误,请重新输入!");i--;}SetColor(13,0);printf("\n\n\t\t\t\t战斗仍未结束,同志还需努力!");printf("\n\n\n\n\n\n\n 【按t退出当前玩家】\t 【按T退出到主页面】\t【按其他任意键继续游戏】\n");getchar();char c;scanf("%c",&c);if(c == 't'){break;}if(c == 'T'){face();}}wan++;if(i >= N){P[wan-1].score = (P[wan-1].score/N)*100;}else{P[wan - 1].score = 0;}paixu();}system("CLS");SetColor(12,0);printf("\n\n\n\n\n\n\n\n\n\n\t\t\t\t所有的对局已结束!");printf("\n\n\n\n\n\n\n\n\n\n\t\t\t\t\t\t\t\【按任意键返回主页面】\n");getchar();getchar();face();}五改进或增加功能模块说明在游戏运行过程中,没次比赛结束,此程序中都会产升新的对决界面,在屏幕上显示相对比较繁琐,因此这里用到了屏幕刷新函数system("cls");,为了让界面好看,添加了改变字体颜色的函数SetColor(7,0);代码如下。

C语言猜拳游戏代码

C语言猜拳游戏代码
{
CBrush brushes[3];
brushes[0].CreateSolidBrush(RGB(100, 60, 30));
brushes[1].CreateSolidBrush(RGB(20, 120, 90));
brushes[2].CreateSolidBrush(RGB(30, 80, 150));
NULL, NULL);
CRect rect (0, 0, 600, 600);
CalcWindowRect (&rect);
SetWindowPos(NULL, 0, 0, rect.Width(), rect.Height(),
SWP_NOZORDER | SWP_NOMOVE | SWP_NOREDRAW);
#define SHITOU 0
#define JIANDAO 1
#define BU 2
#include <stdlib.h>
#include <stdio.h>
#include <time.h>
int main()
{
int x,y;
srand ((unsigned)time(NULL));
printf("电脑-布,玩家-布,平\n");
break;
}
break;
}
return 0;
}
WINDOWS模式下的,用MFC写成(可视,但我不会画那些图案,只好用文字代替):
(PRS.h)
#define SHITOU 0
#define JIANDAO 1
}
break;

C语言实现猜拳游戏

C语言实现猜拳游戏

C语⾔实现猜拳游戏⼀、问题C语⾔实现猜拳游戏,⽤户⾃⼰选择对⼿,可以创建玩家⾓⾊。

可以记录当前对战情况(对战局数,得分情况)⼆、解决思路猜拳游戏⼤家都不陌⽣,从⼩玩到⼤,遇到棘⼿的选择,猜拳往往是最能服众的处理办法。

那么今天我们就⽤C语⾔来实现这个⼩游戏。

这题⽐较简单,创建两个字符数组,对应对⼿和玩家。

接着⽤户选择要出的(⽯头,剪⼑,布),然后是电脑选择,最后把两个选择进⾏对⽐,判断输赢。

三、代码实现第⼀步,编写game.h头⽂件,把需要⽤到的函数声明及⼀些宏定义写在⾥⾯#ifndef __GAME_H__#define __GAME_H__#include <stdio.h>#include <windows.h>#include <time.h>#pragma warning(disable:4996)void menu();void gamestart(int com, char* comname, char* name);int judge(int choice, int c);int computer_round();void show(int count, int ptimes, int ctimes, char* comname, char* name);#endif第⼆步,编写main函数,从这⾥调⽤函数#include "game.h"int main(){menu();//调⽤menu函数system("pause");return 0;}第三步,编写game.c,把需要⽤到的函数都写在⾥⾯。

menu函数,指引⽤户做出选择void menu()//menu函数,指引⽤户做出选择{printf("**************\n");printf("**猜拳,开始**\n");printf("**************\n");printf("请选择对⽅⾓⾊(1.奥特曼2.葫芦娃3.孙悟空)\n");int com = 0;char comname[20] = { 0 };int flag = 1;while (flag) { //为⽤户选择的对⼿创建名字scanf("%d", &com);switch (com) {case 1:strcpy(comname,"奥特曼");flag = 0;break;case 2:strcpy(comname, "葫芦娃");flag = 0;break;case 3:strcpy(comname, "孙悟空");flag = 0;break;default:printf("输⼊有误!\n");break;}}printf("请输⼊你的名字:");char name[20] = { 0 };scanf("%s", name);//⽤户⾃⼰创建⾓⾊printf("%sVS%s\n", name,comname);printf("要开始吗?(y/n)\n");char choice = 0;while (1) {if (flag) { // 判断⽤户是不是第⼀次进⾏游戏printf("要继续吗?(y/n)\n");}flag = 1;getchar();scanf("%c", &choice);switch (choice) {case 'y': gamestart(comname,name);//'y',开始游戏,调⽤gamestart函数break;case 'n': printf("拜拜!\n");//'n',游戏结束,函数调⽤结束return;default: printf("输⼊有误,请重新输⼊!\n");break;}}}gamestart函数,游戏开始void gamestart(char* comname,char* name){int static ptimes = 0;//⽤户赢的次数int static ctimes = 0;//电脑赢得次数int static count = 0; //游戏对战次数if (count) {show(count,ptimes,ctimes,comname,name); //如果不是第⼀次进⼊游戏,则显⽰当前对战情况 }count++;//每进⾏⼀次游戏,count⾃加⼀printf("请出拳:1.⽯头2.剪⼑3.布\n");int choice = 0;printf("你出拳:");int flag = 1;while (flag) {scanf("%d", &choice);switch (choice) {case 1:printf("⽯头\n");flag = 0;break;case 2:printf("剪⼑\n");flag = 0;break;case 3:printf("布\n");flag = 0;break;default:printf("输⼊有误,请重新输⼊!\n");}}printf("%s出拳:", comname);int result = judge(choice, computer_round());//先调⽤computer_round函数,得到电脑的选择//然后调⽤judge函数,判断输赢switch (result) {case -1:printf("很遗憾,你输了!\n");ctimes++; //记录电脑赢的次数break;case 0:printf("还不错,平局!\n");break;case 1:printf("恭喜你,你赢了!\n");ptimes++; //记录⽤户赢的次数break;}}judge函数,判断输赢int judge(int choice, int c)//judge函数,判断输赢{if (choice == c) { //如果两个选择相同,则平局return 0;}if (choice - c == 1 || choice - c == -2) { // choice是⽤户选择,若符合这两个结果,则证明⽤户输return -1;}else {return 1; //否则⽤户赢}}computer_round函数,电脑回合int computer_round()//computer_round函数,电脑选择出什么{srand((unsigned long)time(NULL));int c = rand() % 2 + 1; //与⼈的选项⼀样,1.⽯头2.剪⼑3.布if (c == 1) {printf("⽯头\n");}else if (c == 2) {printf("剪⼑\n");}else {printf("布\n");}return c;}show函数,显⽰当前对战情况void show(int count, int ptimes, int ctimes, char* comname, char* name) {system("cls");printf("%sVS%s\n", name, comname);printf("对战次数:%d\n", count);printf("姓名得分\n");printf("%6s %d\n", name, ptimes);printf("%6s %d\n", comname, ctimes);}四、运⾏结果五、写在最后既然在家都闲着没事,不如写个⼩游戏;不耽误学习,不耽误娱乐。

C语言猜拳游戏代码及分析

C语言猜拳游戏代码及分析

C语言猜拳游戏代码及分析猜拳游戏需求分析说明书1.引言1.编写目的小时候,我们喜欢以猜拳来赢得奖励。

现在,我们希望能开发一个猜拳的游戏。

2.定义需求:用户解决问题或达到目标所需的条件或功能;系统或系统部件要满足合同、标准,规范或其它正式规定文档所需具有的条件或权能。

而且其很强的交互性及简单易行性,可以让人在很短时间内熟悉它的操作方法,不论用户文化水平如何,都会很轻松的学会使用它。

2.任务概述1.目标2.用户的特点由于本程序简单易操作,交互性好,对用户没什么特别要求。

一般用户经过几分钟练系都可以熟悉本系统的规则。

3.系统功能示例3.需求细则1.对功能的规定1.1界面友好属性:必选描述:用户的一些操作前后做出一些必要的提示或确认。

所有完成的功能都需要友好,例如:●增加失败提示;●删除失败和成功提示、删除前的确认;●修改失败和成功提示、修改前/后的确认;●查找失败提示、查找成功的确认;●退出系统时,要提示是否退出;●其它方面的界面问题;1.2用户注册属性:必选描述:登录界面可以用户注册,注册信息包含用户名和密码,例如:●不能使用已经存在的用户名●密码不能少于6个字符1.3用户登录属性:必选描述:用户通过登录界面进行登录,必须输入正确的用户名和密码方可进入系统,例如:●提示输入用户名●提示输入密码●用户名和密码验证,都符合则进入系统,不然回到第一步,超过三次登录,则提示登录次数超过三次,退出系统1.4开始游戏属性:必选描述:金额大于1的用户可以开始游戏●下注:提示用户下注的金额数●猜拳:(必须先下注,如果用户下注金额小于等于0,不能进行游戏)与电脑进行猜拳游戏,如果猜输了,扣除你的金额(由下注决定),胜利将随机获得1~5倍的下注金额奖励n提示:电脑随机出拳,胜利奖励也是随机的,例如:n随机获得1~5数字代码:nsrand((unsigned)time(NULL));nint radio = rand() % 5 + 1;//radio 为随机 1~5的整数●如果金额少于下注数,将不能进行猜拳,給出充值提示1.5充值属性:必选描述:用户可以进行充值●充值金额●充值的时候,必须输入充值密码(由5个字符组成,随机包括数字0~9和所有小写字母)●如果充值密码正确,充值成功,不然充值失败1.6修改用户信息属性:必选描述:用户可以注销(删除)自己的账户、或者修改个人信息● 修改个人信息n修改用户密码● 注销用户(本人)n删除用户所有信息(删除完毕将返回登录界面,用户账号已经不存在)1.7查看用户信息属性:必选描述:用户登录成功后,可以选择查看用户自己信息或者所有用户信息● 查看用户自己信息:(本人)用户名密码金额胜率● 查看所有用户信息:所有用户名金额胜率1.8排序属性:必选描述:用户可以对所有用户信息进行排序操作,便于查看● 金额排序● 胜率排序对性能的规定本系统在设计方面本着方便、实用的宗旨,性能方面应遵循如下原则:●执行效率(时间):软件运行应该尽量高效;避免没有必要的循环处理、重复处理;●资源损耗(空间):设计尽量节约资源(内存、数组、链表等);不用的资源要及时释放;●初始化:变量、数组、内存块;●健壮性:不能出现野指针、内存泄露、数组越界访问等等:◎声明指针后,立即将指针设置为NULL,防止产生&ldquo;野指针&rdquo;;◎函数的入参必须进行有效性判断;用户输入、函数返回值(如果用到的话)都要判断;◎switch-case一定要有default;if-else if等后要有else,除非if满足后返回或退出;◎不允许出现goto语句;◎数组的下标不要溢出。

C语言实现的猜拳游戏代码分享

C语言实现的猜拳游戏代码分享

C语⾔实现的猜拳游戏代码分享这是⼀个简单的猜拳游戏(剪⼦包⼦锤),让你与电脑对决。

你出的拳头由你⾃⼰决定,电脑则随机出拳,最后判断胜负。

下⾯的代码会实现⼀个猜拳游戏,让你与电脑对决。

你出的拳头由你⾃⼰决定,电脑则随机出拳,最后判断胜负。

启动程序后,让⽤户出拳,截图:⽤户出拳,显⽰对决结果:截图:代码实现:#include <stdio.h>#include <stdlib.h>#include <time.h>int main(){char gamer; // 玩家出拳int computer; // 电脑出拳int result; // ⽐赛结果// 为了避免玩⼀次游戏就退出程序,可以将代码放在循环中while (1){printf("这是⼀个猜拳的⼩游戏,请输⼊你要出的拳头:\n");printf("A:剪⼑\nB:⽯头\nC:布\nD:不玩了\n");scanf("%c%*c",&gamer);switch (gamer){case 65: //Acase 97: //agamer=4;break;case 66: //Bcase 98: //bgamer=7;break;case 67: //Ccase 99: //cgamer=10;break;case 68: //Dcase 100: //dreturn 0;default:printf("你的选择为 %c 选择错误,退出...\n",gamer);getchar();system("cls"); // 清屏return 0;break;}srand((unsigned)time(NULL)); // 随机数种⼦computer=rand()%3; // 产⽣随机数并取余,得到电脑出拳result=(int)gamer+computer; // gamer 为 char 类型,数学运算时要强制转换类型printf("电脑出了");switch (computer){case 0:printf("剪⼑\n");break; //4 1case 1:printf("⽯头\n");break; //7 2case 2:printf("布\n");break; //10 3}printf("你出了");switch (gamer){case 4:printf("剪⼑\n");break;case 7:printf("⽯头\n");break;case 10:printf("布\n");break;}if (result==6||result==7||result==11) printf("你赢了!");else if (result==5||result==9||result==10) printf("电脑赢了!");else printf("平⼿");system("pause>nul&&cls"); // 暂停并清屏}return 0;}代码分析1) ⾸先,我们需要定义3个变量来储存玩家出的拳头(gamer)、电脑出的拳头(computer)和最后的结果(result),然后给出⽂字提⽰,让玩家出拳。

  1. 1、下载文档前请自行甄别文档内容的完整性,平台不提供额外的编辑、内容补充、找答案等附加服务。
  2. 2、"仅部分预览"的文档,不可在线预览部分如存在完整性等问题,可反馈申请退款(可完整预览的文档不适用该条件!)。
  3. 3、如文档侵犯您的权益,请联系客服反馈,我们会尽快为您处理(人工客服工作时间:9:00-18:30)。
设计题目的要求: ①游戏要设置开始,结束操作控制 ②游戏要有操作流程的提示语 ③游戏能显示比赛结果
二、 设计思路
系统功能模块图: 输入:计算机随机输入选择,用户输入选择,并将数据储存。 计算:根据计算机和用户的选择,计算大小,并判断输赢,计算用户的胜负 率,并储存。 输出:根据用户的输入,将用户的游戏结果显示在屏幕上。
三、 主要问题的解决方法及关键技术
游戏功能需求分析: 输入数据: 计算机随机输入数据; 用户输入合法的数据 存储数据: 存储计算机的输入数据; 存储用户的合法输入数据; 判断用户的输赢: 根据用户的选择,比较用户与计算机的胜负
四、 程序流程图
① 获取计算机的输入
② 获取用户的合法输入
③ 判断用户的输赢
case 7:printf("石头\n");break; case 10:printf("布\n");break; } if (result==6||result==7||result==11) printf("你赢了!"); else if (result==5||result==9||result==10) printf("电脑赢了!"); else printf("平手"); system("pause>nul&&cls"); // 暂停并清屏 } return 0; } 六、 程序运行结果 测试: 1 显示主菜单界面
srand((unsigned)time(NULL)); // 随机数种子 computer=rand()%3; // 产生随机数并取余,得到电脑出拳 result=(int)gamer+computer; // gamer 为 char 类型,数学 运算时要强制转换类型 printf("电脑出了"); switch (computer) {
一、 选题背景
通过一个学期的 C 语言课程的学习,《C 语言程序设计》课程已结束,根据 学校课程学习的安排,要进行一周的 C 语言实习,自己动手编写游戏和系统。根 据老师布置的设计任务书,按照学委的安排,根据个人的能力及意愿,我选择了 设计一格小游戏:石头剪子布。
实验准备:做游戏前,首先,自己详细看了《C 语言程序设计》(教科书), 理解了相关函数的用法和作用;另外,上网查询了很多相关资料,还有找了很多 相关的游戏设计的代码,都详细的看了一遍,加深了对 C 语言以及相关内容进一 步理解。根据实际情况设计出一款比较理想的小游戏。
case 67 | 99: // C | c gamer=10; break; case 68 | 100: // D | d return 0; default: printf("你的选择为 %c 选择错误,退出...\n",gamer); getchar();
system("cls"); // 清屏 return 0; break; }
五、 源程序清单
#include <stdio.h>
#include <stdlib.h>
#include <time.h> int main() {
char gamer; // 玩家出拳
int computer; // 电脑出拳
int result; // 比赛结果
// 为了避免玩一次游戏就退出程序,可以将代码放在循环中
--学校--学院
2014-2015 学年第一学期 《C 程序设计》课程设计
题目名称:
趣味小游戏
姓名 学号 班级 指导教师 编写日期
2015-1-5——2015-1-25
成绩:
目录:
一、 选题背景 .............................................. 二、 设计思路 .............................................. 三、 主要问题的解决方法及关键技术 ...... 四、 程序流程图 .......................................... 五、 源程序清单 .......................................... 六、 程序运行结果 ...................................... 七、设计总结 .............................................. 八、参考文献……...………………………. 九、致谢………...………………………….
2 输入界面
③ 输出界面 ④游戏结束界面
七、 设计总结
此的程序实设计实验是对我进入大学以来学习程序设计语言成果的一个检 验。自己动手,自己发现和解决问题,学会了独立,自主的思考,发现了自己的 许多不足。平时没有掌握好的知识在这次实验中彻底暴露出来,经过不断思考, 不断查阅资料和上机运行,解决其中大部分问题,当然还存在一些问题没有解决。 我相信在以后的学习能够解决好它们。但是,收获还是不小的,我不仅对 C 的 操作有了进一步的掌握,还了解到了程序设计的书写风格及其注释的格式。
当我选择编写小游戏“石头剪子布”这个题目时,一开始想运用大量函数及 循环来完成,但是在慢慢琢磨之后,觉得这个程序可以简化,于是改变了编程思 路。当然还有不少文件的读写问题,不过还是通过不断测试之后顺利解决了。另 外一点要说的就是这个程序用了很多的选择循环,因此对于循环的控制要十分小 心。
还有一点体会就是,书上和老师教的内容是有限的,我们需要不断地靠自己 去学习,向他人请教,学会利用网络等了解知识的平台去学习和掌握更多的知识, 这样我们才能编出更好的 C 程序。
case 0:printf("剪刀\n");break; //4 1 case 1:printf("石头\n");break; //7 2 case 2:printf("布\n");break; //10 3 } printf("你出了"); switch (gamer) { case 4:printf("剪刀\n");break;
while (1) {
printf("这是一个猜拳的小游戏,请输入你要出的拳头:\n");
printf("A:剪刀\nB:石头\nC:布\nD:不玩了\n");
scanf("%c%*c",&gamer); switch (gamer){ case 65 | 97: // A | a gamB | b gamer=7; break;
八、参考文献
《数据结构(c 语言版)例题详解与课程设计指导》第二版 袁志祥、秦锋 主编 中国科学技术大学出版社出版
《C 语言程序设计(第四版)》 谭浩强 清华大学出版社出版
九、致谢
本设计是在某某老师的悉心指导下完成的,老师渊博的知识,严谨的治学态 度,一丝不苟的工作作风,平易近人的性格都是我学习的楷模。在课程设计及整 理期间,老师给了我很大的支持和鼓励,才使得此课程设计得以顺利的完成,在 此谨向老师表示忠心的感谢和崇高的敬意。同时感谢电子阅览室的老师们,他们 给我们提供了必要的作业工具,提供了很大的方便。同时感谢同班同学,在课程 设计期间,他们不仅在学习上对我有很大的帮助,还在生活上提供方便。最后, 要感谢学校为我们提供这次课程设计机会。
相关文档
最新文档