微波EDA网,见证研发工程师的成长!
首页 > 硬件设计 > 嵌入式设计 > C语言猜拳游戏代码及分析

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

时间:12-01 来源:互联网 点击:

if(p1->money>p2->

if(p1->

if(p1->money>p2->

if(p1->

if(money>

ok(game_t *p,int *count,int *my){

intchose=0;

while(TRUE){

chose=0;

look_menu();

printf("请选择:");

scanf("%d",&chose);

fflush_in();

switch(chose){

case1: //个人

look_my(p,my);

break;

case2: //所有

look_all(p,count);

break;

case3: //返回

return;

break;

default:

printf("输入错误,请重新输入");

}

}

}

//查看所有

void look_all(game_t *p,int *count){

inti=0; //i表示游戏次数

intj=0; //j表示胜利次数

intk=0;

printf("用户 金额 胜率 ");

for(k=0;k<*count;k++){

i=p[k].times;

j=p[k].win;

printf("%s %.2f %.2lf%% ",p[k].name,

p[k].money,i==0?0:(double)j/i*100);

}

}

//查看个人

void look_my(game_t *p,int *my){

inti=0; //i表示游戏次数

intj=0; //j表示胜利次数

i=p[*my].times;

j=p[*my].win;

printf("用户名:%s",p[*my].name);

printf("密 码:%s",p[*my].password);

printf("金 额:%.2lf",p[*my].money);

printf("胜 率:%.2lf%%",i==0?0:(double)j/i*100);

}

//查看菜单

void look_menu(){

printf("1.个人 2.所有 3.返回");

}

//功能菜单函数

void ctrl_menu(){

printf("1.查看 2.游戏 3.充值 4.修改 5.排序 6.返回");

}

//登录控制函数

void log_ctrl(game_t *p,int *count,int*my){

intchose=0,chose2=0;

while(TRUE){

chose=0;

chose2=0;

log_menu();

printf("请选择:");

scanf("%d",&chose);

fflush_in();

switch(chose){

case1: //登录

if(log_in(p,count,my)==1)

printf("登录失败");

else{

printf("登录成功");

ctrl(p,count,my);

}

break;

case2: //注册

if(add_user(p,count)==1)

printf("注册失败");

else

printf("恭喜您,注册成功");

break;

case3: //退出

printf("是否退出?1.是 2.否");

printf("请选择:");

scanf("%d",&chose2);

fflush_in();

if(chose2==1){

if(exit_save(p,count)==0)

printf("信息保存成功");

else

printf("信息保存失败");

exit(0);

}

else

log_ctrl(p,count,my);

break;

default:

printf("输入错误,请重新输入");

}

}

}

//登录函数 0-成功 1-失败

int log_in(game_t *p,int *count,int *my){

inti=0,flag=0;

charname[30]="",pass[30]="";

printf("用户名:");

fgets(name,30,stdin);

name[strlen(name)-1]=;

flag=0;

for(i=0;i<*count;i++)

if(strcmp(p[i].name,name)==0){

*my=i;

flag=1;

break;

}

if(flag==0){

printf("用户不存在");

return1;

}

i=0;

while(i<3){

printf("密码:");

fgets(pass,30,stdin);

pass[strlen(pass)-1]=;

if(strcmp(p[*my].password,pass)==0){

return0;

}

printf("密码输入错误,请重新输入");

i++;

}

if(i==3){

printf("登录失败");

printf("登录次数超过三次,您将退出系统");

if(exit_save(p,count)==0) //保存信息

printf("信息保存成功");

else

printf("信息保存失败");

exit(1);

}

return0;

}

//注册函数 0-成功 1-失败

int add_user(game_t *p,int *count){

inti=0;

charname[30]="";

charpass[30]="",pass2[30]="";

if(*count>100){

printf("注册用户已满");

return1;

}

printf("提示:用户名长度为3-28");

printf("用户名:");

fgets(name,30,stdin);

name[strlen(name)-1]=;

if(strlen(name)<3||strlen(name)>28){ //用户名长度3-28

printf("用户

Copyright © 2017-2020 微波EDA网 版权所有

网站地图

Top