#include<stdio.h>
#include<string.h>
void initialize(char a[3][3]);
void print(char a[3][3]);
int judge(char a[3][3]);
void Input1P(char a[3][3]);
void Input2P(char a[3][3]);
int main(void)
{
char a[3][3];
initialize(a);
int count=1;
print(a);
while(judge(a)!=1&&judge(a)!=2&&count!=10){
if(count%2==1){
printf("It is 1P time\n");
Input1P(a);
}
else{
printf("It is 2P time\n");
Input2P(a);
}
count++;
print(a);
}
if(count<=10){
switch(judge(a)){
case 1:printf("1P is winer\n");return 0;
case 2:printf("2P is winer\n");return 0;
}
}
printf("This is draw\n");
return 0;
}
void initialize(char a[3][3])
{
int i,j;
for(i=0;i<=2;i++)
for(j=0;j<=2;j++)
a[i][j]=‘ ‘;
}
void print(char a[3][3])
{
int i;
for(i=0;i<=2;i++)
printf("%c|%c|%c\n",a[i][0],a[i][1],a[i][2]);
}
int judge(char a[3][3])
{
if(((a[0][0]==a[0][1]&&a[0][1]==a[0][2])&&a[0][0]==‘x‘)||
((a[1][0]==a[1][1]&&a[1][1]==a[1][2])&&a[1][0]==‘x‘)||
((a[2][0]==a[2][1]&&a[2][1]==a[2][2])&&a[2][0]==‘x‘)||
((a[0][0]==a[1][0]&&a[1][0]==a[2][0])&&a[0][0]==‘x‘)||
((a[0][1]==a[1][1]&&a[1][1]==a[2][1])&&a[0][1]==‘x‘)||
((a[0][2]==a[1][2]&&a[1][2]==a[2][2])&&a[0][2]==‘x‘)||
((a[0][0]==a[1][1]&&a[1][1]==a[2][2])&&a[0][0]==‘x‘)||
((a[0][2]==a[1][1]&&a[1][1]==a[2][0])&&a[0][2]==‘x‘))
return 1;
else if(((a[0][0]==a[0][1]&&a[0][1]==a[0][2])&&a[0][0]==‘o‘)||
((a[1][0]==a[1][1]&&a[1][1]==a[1][2])&&a[1][0]==‘o‘)||
((a[2][0]==a[2][1]&&a[2][1]==a[2][2])&&a[2][0]==‘o‘)||
((a[0][0]==a[1][0]&&a[1][0]==a[2][0])&&a[0][0]==‘o‘)||
((a[0][1]==a[1][1]&&a[1][1]==a[2][1])&&a[0][1]==‘o‘)||
((a[0][2]==a[1][2]&&a[1][2]==a[2][2])&&a[0][2]==‘o‘)||
((a[0][0]==a[1][1]&&a[1][1]==a[2][2])&&a[0][0]==‘o‘)||
((a[0][2]==a[1][1]&&a[1][1]==a[2][0])&&a[0][2]==‘o‘))
return 2;
else
return 0;
}
void Input1P(char a[3][3])
{
int x;
scanf("%d",&x);
switch(x)
{
case 7:a[0][0]=‘x‘;break;
case 8:a[0][1]=‘x‘;break;
case 9:a[0][2]=‘x‘;break;
case 4:a[1][0]=‘x‘;break;
case 5:a[1][1]=‘x‘;break;
case 6:a[1][2]=‘x‘;break;
case 1:a[2][0]=‘x‘;break;
case 2:a[2][1]=‘x‘;break;
case 3:a[2][2]=‘x‘;
}
}
void Input2P(char a[3][3])
{
int x;
scanf("%d",&x);
switch(x)
{
case 7:a[0][0]=‘o‘;break;
case 8:a[0][1]=‘o‘;break;
case 9:a[0][2]=‘o‘;break;
case 4:a[1][0]=‘o‘;break;
case 5:a[1][1]=‘o‘;break;
case 6:a[1][2]=‘o‘;break;
case 1:a[2][0]=‘o‘;break;
case 2:a[2][1]=‘o‘;break;
case 3:a[2][2]=‘o‘;
}
}
计导实验报告 丼字走三关(人人对战)
时间: 2024-10-06 22:02:22
计导实验报告 丼字走三关(人人对战)的相关文章
13计本人工智能实验报告
贵州师范大学计算机科学与技术 实验报告 课程名称:人工智能 班级:13计本 实验日期:2016-4-27 学号:136201010507 姓名:任廷婷 成绩: 一·实验名称 线性回归预测系统 二·实验目的及要求 理解和掌握线性回归预测的基本方法,能够编程实现简单的线性回归预测系统 1.熟悉matlab 2.线性回归预测函数,代价函数的预测和实现 3.使用梯度下降算法进行参数学习 三·实验工具 Matlab,O
13计本136201010496茅智强AI实验报告
课程名称: 人工智能 班级: 13 级计本 实验日期: 5 月5日 学号: 136201010496 姓名: 茅智强 成绩: 一.实验名称 线性回归预测系统 二.实验目的及要求 理解和掌握线性回归预测的基本方法,能够编程实现简单的线性回归预测系 统. 1.熟悉 Octave 编程语言: 2.线性回归预测函数.代价函数的设计和实现: 3.使用梯度下降算法进行参数学习 三.实验工具 Octave notepad++ 四.实验内容与步骤 1.安装编
第三次实验报告 之 五子棋
https://github.com/1246251747/3/blob/master/12.txt 实 验 报 告 实验名称: 五子棋实验报告 姓名: 王文政 学 号: 201303011159 班级:计科13-1 学院: 信息学院 五子棋JAVA实验报告 一.实验目的和要求 1.能够用编程语言实现一个简单的五子棋程序 2.在实际系统中使用.实现人工智能的相关算法 3.进一步加深对人工智能算法的理解 二.五子棋的基本常识与原理 1.五子棋的起源 五子棋,是一
汇编语言程序设计实验报告四
南京信息工程大学实验报告 实验名称 实验 4 [bx]和loop的使用 实验日期 得分 学院 计软院 专业 计算机科学与技术 年级 2017级 班次 5班 姓名 陈奕明 学号 20171308194 一.实验目的 1. 理解和掌握寄存器间接寻址方式[bx] 2. 通过汇编指令loop的使用理解编程语言中循环的本质 3. 熟练掌握使用debug按需调试完整汇编源程序的方法 二.实验准备 1. 学习/复习第 5章使用[bx]和loop实现循环的编程应用示例(教材 5.5节,5.8节) 2. 复习第3
2019JAVA第五周实验报告
Java实验报告 班级 计科二班 学号 20188442 姓名 吴怡君 完成时间 2019.9.24 评分等级 实验三 String类的应用 一.实验目的 掌握类String类的使用: 学会使用JDK帮助文档: 二.实验内容 1.已知字符串:"this is a test of java".按要求执行以下操作:(要求源代码.结果截图.) 2.统计该字符串中字母s出现的次数. 3.统计该字符串中子串"is"出现的次数. 4.统计该字符串中单词"is"
130702010012吴佳卫AI实验报告.
130702010012吴佳卫AI实验报告 贵州师范大学计算机实验报告 课程名称: 人工智能 班级: 13级计本 实验日期: 2015.05.12 学号: 130702010012 姓名: 吴佳卫 成绩: 一.实验名称 线性回归预测系统 二.实验目的及要求 理解和掌握线性回归预测的基本方法,能够编程实现简单的线性回归预测系统. 1.熟悉matlab编程语言: 2.线性回归预测函数.代价函数的设计和实现: 3.使用梯度下降算法进行参数学习:
20135239益西拉姆第四次实验报告
北京电子科技学院(BESTI) 实验报告 课程:JAVA第四次实验报告 班 级: 1352 姓 名:益西拉姆 学 号:20135239 成 绩: / 指导教师: 娄嘉鹏 实验日期: 2015.06.09 实验密级: / 预习程度: / 实验时间:15:00--18:00 仪器组次:39 必须/选修: 选修 实验序号:04 实验名称: 第四次实验 实验仪器: 名称 型号 数量 PC机 DELL 1 实验内容: 1:编写网络通信程序.(基于TCP) 2:对通信内容使用对称加密算法进行加密. 3:使用
实验报告:统计字符串中子字符串出现的次数
实验报告 源程序: 1 #include<iostream> 2 #include<cstring> 3 using namespace std; 4 int cntstring(char *source,char *substr); 5 void main() 6 { 7 char str1[50],str2[20]; //str1 为主字符串,str2 为子字符串 8 cout<<"input source string:"; 9 cin.get
《人工智能》实验报告一
贵州师范大学计算机实验报告 课程名称: 人工智能 班级: 13 级计本 实验日期: 5 月 9日 学号: 136201010511 姓名: 杨金城 成绩: 一.实验名称 线性回归预测系统 二.实验目的及要求 理解和掌握线性回归预测的基本方法,能够编程实现简单的线性回归预测系 统. 1.熟悉 matlab 编程语言: 2