资源简介
代码片段和文件信息
/**************************************************************************/
/*功能:猜拳小游戏*********************************************************/
/*作者:李志龙************************************************************/
/*完成时间:2020.07.30***************************************************/
/*联系方式:lzl_sjlx12345@163.com ********************************/
/**********************************************************************/
#include“game.h“
//获取电脑随机生成的四个数
void Four_Randon(){
int temp;
do{
temp=rand()%(10000-1000+1)+1000;
a[0]=temp%10;
temp/=10;
a[1]=temp%10;
temp/=10;
a[2]=temp%10;
temp/=10;
a[3]=temp;
}while((a[0]==a[1])||(a[0]==a[2])||(a[0]==a[3])
||(a[1]==a[2])||(a[1]==a[3])||(a[2]==a[3])
||(a[0]==0)||(a[1]==0)||(a[2]==0)||(a[3]==0));//
printf(“%d%d%d%d“a[0]a[1]a[2]a[3]);
}
//处理用户输入的四个数
void Get_Four(int input_number){
b[0]=input_number/1000;
b[1]=input_number/100%10;
b[2]=input_number/10%10;
b[3]=input_number%10;
}
//生成A和B前面的数字
void CountAB(){
int countA=0;
int countB=0;
/*只允许在 C99 模式下使用‘for’循环初始化声明*/
int i;
int j;
int k;
int in_num;
printf(“please input four number:\n“);
scanf(“%d“&in_num);
//垃圾字符回收
getchar();
//对用户输入的四个数进行处理
Get_Four(in_num);
//生成A前面的数字
for(i=0;i<4;i++){
if(a[i]==b[i]){
countA++;
}
}
//生成B前面的数字
for(j=0;j<4;j++){
for(k=0;k<4;k++){
if(a[j]==b[k]){
countB++;
}
}
}
countB=countB-countA;
//存储A和B的值
count[0]=countA;
count[1]=countB;
}
//猜拳游戏
int Play_Game(MSG* msgsqlite3 * db){
//初始化
count[0]=0;
count[1]=0;
win_count=0;
printf(“**************************************************\n“);
printf(“*******************start game*********************\n“);
printf(“**************************************************\n“);
Four_Randon();
printf(“computer have make four random number\n“);
while(count[0]!=4){
CountAB();
win_count++;
printf(“%dA%dB\n“count[0]count[1]);
}
//数值清零,为下次游戏准备
count[0]=0;
count[1]=0;
printf(“**************************************************\n“);
printf(“*************************you win******************\n“);
printf(“**************************************************\n“);
printf(“%d\n“win_count);
//linux下int转string
char cishu[10];
sprintf(cishu“%d“win_count);
//游戏结束之后将获胜者的ID与获胜所需的次数写入数据库
char * errmsg;
char sql[128] = {0};
//若存在数据先清空
sprintf(sql“insert into history values(‘%s‘‘%s‘);“msg->namecishu);
if(sqlite3_exec(dbsqlNULLNULL&errmsg) != SQLITE_OK)
{
char sql2[128] = {0};
sprintf(sql2“delete from history where ID = ‘%s‘;“msg->name);
if(sqlite3_exec(dbsql2NULLNULL&errmsg) != SQLITE_OK)
{
printf(“%s“errmsg);
}
sqlite3_exec(dbsqlNULLNULL&errmsg);
}
return 0;
}
//排名信息打印函数
int displaycb(void *paraint ncolumnchar ** columnvaluechar *columnname[])
{
int i;
if(ncolumn>10){
ncolumn=10;
}
for(i = 0; i < ncolumn; i=i+2)
{
printf(“%s:%s“columnname[i]columnvalue[i]);
printf(“%s:%s“columnname[i+1]columnvalue[i+1]);
printf(“\n“);
}
属性 大小 日期 时间 名称
----------- --------- ---------- ----- ----
文件 7925 2020-07-30 20:39 猜拳游戏作业\game.c
文件 1090 2020-07-30 20:39 猜拳游戏作业\game.h
文件 150 2020-07-30 20:39 猜拳游戏作业\makefile
文件 71168 2020-07-30 20:05 猜拳游戏作业\游戏流程.vsd
目录 0 2020-08-12 16:49 猜拳游戏作业
----------- --------- ---------- ----- ----
80333 5
相关资源
- 扫雷游戏.cpp
- 杨中科游戏开发引擎
- 智商超高的中国象棋游戏源码(C++版
- c++ 扫雷游戏源码(控制台)
- C++跑跑卡丁车
- C++“倒忌时”小游戏
- XX游戏客户端源码
- c++小游戏源码.doc
- 基于ege图形的推箱子游戏
- C语言ege贪吃蛇游戏
- C++小游戏4款(源码)
- 推箱子小游戏源码
- 五子棋游戏源码(控制台)
- 猜数字游戏.sb3
- C++贪吃蛇控制台小游戏代码
- 扫雷游戏.cpp(较简单)
- MFC五子棋游戏
- VC++ 大富翁4_大富翁游戏源码
- c++常用游戏算法及数据结构设计
- c++的飞行鸟游戏
- 2048小游戏c语言实现
- c++编写简略单机对战小游戏
- c++各种小游戏我们老师的
- C++实现21点游戏
- c++自制小游戏--扑克牌
- 最后一战OL手游 全套完整源码+资源,
- 大富翁源代码
- VC++ 中国象棋经典游戏源代码
- C++程序源代码--21点的扑克牌游戏
- 基于Cocos2dx的炸弹人游戏
评论
共有 条评论