• 大小: 0.07M
    文件类型: .rar
    金币: 1
    下载: 0 次
    发布日期: 2024-04-16
  • 语言: C/C++
  • 标签: 小游戏  猜拳  游戏  

资源简介


资源截图

代码片段和文件信息

/**************************************************************************/
/*功能:猜拳小游戏*********************************************************/
/*作者:李志龙************************************************************/
/*完成时间: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


评论

共有 条评论