C语言石头、剪刀、布
发布日期:2021-08-20 07:55:05 浏览次数:2 分类:技术文章

本文共 4090 字,大约阅读时间需要 13 分钟。

hot3.png

学习C语言写的一个和“C语言狗”玩石头剪刀布(包剪揼)游戏!VC6下写的,还有很多不足,用来自娱自乐。---9-26

#include
#include
#include
#include
void win(int a,int b);void softgame();void lefttime();struct game{int i;char name[10];};struct game machine[3]={
{1,"石头"},{2,"剪刀"},{3,"布"}};void main(){ srand((unsigned)time(0)); while(1) { printf("--------------------------------------\n"); printf("和\"C语言狗\"玩石头、剪刀、布游戏\n\n"); softgame(); } }void softgame()//玩家选择{ char k; int mycard; printf("你选择出1石头2剪刀3布:"); scanf("%s",&k); switch(k) { case '1': mycard=7; printf("你出了:石头!\n"); break; case '2': mycard=6; printf("你出了:剪刀!\n"); break; case '3': mycard=5; printf("你出了:布!\n"); break; default : system("cls"); lefttime(); return; break; } int num=rand()%3; printf("电脑出了:%s\n",machine[num].name); win(machine[num].i,mycard); printf("\n\n"); printf("......按任意键进行下一次对决......\n"); getch();// system("cls");}void win(int a,int b)//判定胜负{ int sum; sum=a+b; if(sum==8) { printf("竟然是平局!"); }else if(sum==7||sum==10) { printf("很遗憾,\"C语言狗\"胜了!"); }else { printf("恭喜,你胜了!"); }}void lefttime(){ int i=3; for(int a=0;a<3;a++) { printf("选择错误,请输入1或2或3选择\n"); printf("%d秒后继续操作",i); i--; Sleep(1000); system("cls"); }}

-------9-27

第二天想了想。加了积分玩法,本人胜加10分,c语言狗胜减10分。user.txt存名字积分,名不能空格。

#include
#include
#include
#include
void win(int a,int b);void wait();void softgame();void lefttime();void gamestart();void readf();void writef();void startf();void zhifen();struct game{int i;char name[10];};struct game machine[3]={
{1,"石头"},{2,"剪刀"},{3,"布"}};char nname[]="";//writeint zfen;//积分writechar name[18];//readint zhif;//积分readint main(){ srand((unsigned)time(0)); startf(); return 0;} void zhifen()//名字积分 { printf("游戏前请输入名字(不能空格)和积分\n"); printf("输入名:"); scanf("%s",&nname); printf("输入积分:"); scanf("%d",&zfen); } void readf()//read文件 { FILE *file; file=fopen("user.txt","r"); if(file==NULL) { printf("没文件,已建,请重新打开一次"); FILE *fp; fp=fopen("user.txt","w"); fclose(fp); getch(); return; } if(fscanf(file,"%s %d",&name,&zhif)!=EOF) { fscanf(file,"%s %d",&name,&zhif); printf("\n"); printf("名:%s 积分:%d",name,zhif); printf("\n"); }else{ printf("文档为空\n"); zhifen(); writef(); readf(); gamestart(); return; } if(zhif<10) { printf("任意键继续\n"); getch(); system("cls"); printf("积分为0\n"); zhifen(); writef(); readf(); gamestart(); return; } fclose(file); gamestart(); } void writef()//write { FILE *file; file=fopen("user.txt","w"); if(file==NULL) { printf("不能打开文件!"); return; } fprintf(file,"%s %d",nname,zfen); fclose(file); } void startf() { //writef(); readf(); }void gamestart()//游戏开始{ while(1) { //wait(); printf("--------------------------------------\n"); printf("和\"C语言狗\"玩石头、剪刀、布游戏\n\n"); softgame(); }}void softgame()//玩家选出{ char k; int mycard; int num; printf("你选择出1石头2剪刀3布:"); scanf("%s",&k); switch(k) { case '1': mycard=7; printf("你出了:石头!\n"); break; case '2': mycard=6; printf("你出了:剪刀!\n"); break; case '3': mycard=5; printf("你出了:布!\n"); break; default : system("cls"); lefttime(); /* return; */ gamestart() break; } num=rand()%3; printf("电脑出了:%s\n",machine[num].name); win(machine[num].i,mycard);/* printf("\n\n"); printf("......按任意键进行下一次对决......\n"); getch(); system("cls");*/}void wait(){ printf("\n\n"); printf("......按任意键进行下一次对决......\n"); getch();// system("cls");}void win(int a,int b)//判定胜负{ int sum; sum=a+b; if(sum==8) { printf("***竟然是平局!***"); readf(); }else if(sum==7||sum==10) { printf("***很遗憾,\"C语言狗\"胜了!***"); zfen=zhif-10; strcpy(nname,name); writef(); readf(); }else { printf("***恭喜,你胜了!***"); zfen=zhif+10; strcpy(nname,name); writef(); readf(); }}void lefttime(){ int i=3; for(int a=0;a<3;a++) { printf("选择错误,请输入1或2或3选择\n"); printf("%d秒后继续操作",i); i--; Sleep(1000); system("cls"); } printf("\n"); printf("名:%s 积分:%d",name,zhif); printf("\n");}

开始玩玩。

转载于:https://my.oschina.net/oisanblog/blog/751939

转载地址:https://blog.csdn.net/weixin_33672109/article/details/92065179 如侵犯您的版权,请留言回复原文章的地址,我们会给您删除此文章,给您带来不便请您谅解!

上一篇:Aspnet SignalR 入门
下一篇:2.0 内建函数(1) 2.1 内建函数(2) 2.2 内建函数(3) 2.3 内建函数(4) 2.4 内建函数(5...

发表评论

最新留言

网站不错 人气很旺了 加油
[***.192.178.218]2024年04月09日 01时01分40秒