📄 8_1.cpp
字号:
/***
*
*题目:分歧终端机 v3.0
*
*班级:河北师范大学 软件学院
*
*姓名:高伟龙
*
*学号:2008013521
*
****/
#include <stdio.h>
#include <conio.h>
#include <ctype.h>
#include <windows.h>
#include <time.h>
#include <stdlib.h>
int main()
{
char name[15];
char ch1; //人出的
char ch2; //计算机出的
int a;
int flag1 = 0;
int flag2 = 0;
int b = 0; //第几回合
int c = 0; //参战人赢的回合
int d = 0; //计算机赢的回合
int e = 0; //战平的回合
printf(" =============================================\n");
printf(" 分歧终端机 v3.0 ------人机对战\n\n");
printf(" 作者:高伟龙\n");
printf(" 身份:学生\n");
printf(" =============================================\n");
printf("欢迎您参加人机BSJ对战大赛!\n");
printf("请输入您的尊姓大名:");
gets(name);
printf("祝您好运!\n");
printf("请按任意键进入比赛-----");
getch();
system("CLS");
while(flag2 == 0)
{
while(flag1 == 0)
{
printf("第 %d 回合 %s: %d 计算机: %d 战平: %d\n",b,name,c,d,e);
printf("------------------------------------------------------------------\n\n\n");
printf("%s:",name);
ch1 = getch();
putch(ch1);
printf("\n");
//验证代码
if(isdigit(ch1))
{
printf("\nERROR: 您输入的是数字!\n");
printf("USAGE: 请输入B(布)J(剪刀)和S(石头)三个字母中的一个,而且必须是大写!\n\n");
printf("请按任意键继续----\n");
getch();
system("CLS");
}
else if(islower(ch1))
{
printf("\nERROR: 您输入的是小写字母!\n");
printf("USAGE: 请输入B(布)J(剪刀)和S(石头)三个字母中的一个,而且必须是大写!\n\n");
printf("请按任意键继续----\n");
getch();
system("CLS");
}
else if(iscntrl(ch1))
{
printf("\nERROR: 您输入的是控制字符!\n");
printf("USAGE: 请输入B(布)J(剪刀)和S(石头)三个字母中的一个,而且必须是大写!\n\n");
printf("请按任意键继续----\n");
getch();
system("CLS");
}
else if(isspace(ch1))
{
printf("\nERROR: 您输入的是空白字符!\n");
printf("USAGE: 请输入B(布)J(剪刀)和S(石头)三个字母中的一个,而且必须是大写!\n\n");
printf("请按任意键继续----\n");
getch();
system("CLS");
}
else if(!isalpha(ch1))
{
printf("\nError: 未知错误!\n");
printf("USAGE: 请输入B(布)J(剪刀)和S(石头)三个字母中的一个,而且必须是大写!\n\n");
printf("请按任意键继续----\n");
getch();
system("CLS");
}
else if(isupper(ch1))
{
if(ch1 != 'B' && ch1 != 'S' && ch1 != 'J')
{
printf("\nERROR: 您输入的是大写字母,但是不是B、J和S其中之一!\n");
printf("USAGE: 请输入B(布)J(剪刀)和S(石头)三个字母中的一个,而且必须是大写!\n\n");
printf("请按任意键继续----\n");
getch();
system("CLS");
}
else
{
flag1 = 1;
}
}
}
flag1 = 0;
//计算机随机出的
srand(time(NULL));
a = (int)rand()%3;
if(a==0) ch2='B';
else if(a==1) ch2='S';
else if(a==2) ch2='J';
printf("计算机:%c",ch2);
//结果
if(ch1 == 'B'&&ch2 == 'B')
{
printf("\n\n-----------\n");
printf("\n战平!!\n");
printf("退出比赛请按数字键0,按任意键进入下一回合-----");
++e;
}
if(ch1 == 'B'&&ch2 == 'J')
{
printf("\n\n-----------\n");
printf("\n计算机 赢!!\n");
printf("退出比赛请按数字键0,按任意键进入下一回合-----");
++d;
}
if(ch1 == 'B'&&ch2 == 'S')
{
printf("\n\n-----------\n");
printf("%s 赢!!\n",name);
printf("退出比赛请按数字键0,按任意键进入下一回合-----");
++c;
}
if(ch1 == 'J'&&ch2 == 'B')
{
printf("\n\n-----------\n");
printf("\n%s 赢!!\n",name);
printf("退出比赛请按数字键0,按任意键进入下一回合-----");
++c;
}
if(ch1 == 'J'&&ch2 == 'J')
{
printf("\n\n-----------\n");
printf("\n战平!!\n");
printf("退出比赛请按数字键0,按任意键进入下一回合-----");
++e;
}
if(ch1 == 'J'&&ch2 == 'S')
{
printf("\n\n-----------\n");
printf("\n计算机 赢!!\n");
printf("退出比赛请按数字键0,按任意键进入下一回合-----");
++d;
}
if(ch1 == 'S'&&ch2 == 'B')
{
printf("\n\n-----------\n");
printf("\n计算机 赢!!\n");
printf("退出比赛请按数字键0,按任意键进入下一回合-----");
++d;
}
if(ch1 == 'S'&&ch2 == 'J')
{
printf("\n\n-----------\n");
printf("\n%s 赢!!\n",name);
printf("退出比赛请按数字键0,按任意键进入下一回合-----");
++c;
}
if(ch1 == 'S'&&ch2 == 'S')
{
printf("\n\n-----------\n");
printf("\n战平!!\n");
printf("退出比赛请按数字键0,按任意键进入下一回合-----");
++e;
}
if(getch()!='0')
{
system("CLS");
++b;
}
else
{
flag2 = 1;
}
}
return 0;
}
⌨️ 快捷键说明
复制代码
Ctrl + C
搜索代码
Ctrl + F
全屏模式
F11
切换主题
Ctrl + Shift + D
显示快捷键
?
增大字号
Ctrl + =
减小字号
Ctrl + -