zoukankan      html  css  js  c++  java
  • C语言之二维数组棋盘游戏

    #include<iostream>
    
    #include<stdio.h>
    using namespace std;
    int main()
    {
    //-1 没人赢 0:O赢 1:X赢
    int size;
    printf("0表示“甲方”,1表示“乙方”
    
    ");
    printf("请输入矩阵的大小
    ");
    while (scanf("%d", &size) == 1)
    {
    int board[100][100];
    int num_of_O;
    int num_of_X;
    int result = -1;
    int i, j;
    for (i = 0; i < size; i++)
    for (j = 0; j < size; j++)
    {
    scanf("%d", &board[i][j]);
    }
    
    //检查行
    for (i = 0; i < size&&result == -1; i++)
    {
    num_of_O = num_of_X = 0;
    for (j = 0; j < size; j++)
    {
    if (board[i][j] == 1)
    {
    num_of_X++;
    }
    else if(board[i][j] == 0)
    {
    num_of_O++;
    }
    }
    if (num_of_O == size)
    {
    result = 0;
    }
    else
    if (num_of_X == size)
    {
    result = 1;
    }
    }
    
    //检查列
    if (result == -1)
    {
    for (j = 0; j < size&&result == -1; j++)
    {
    num_of_O = num_of_X = 0;
    for (i = 0; i < size; i++)
    {
    if (board[i][j] == 1)
    {
    num_of_X++;
    }
    else
    if (board[i][j] == 0)
    {
    num_of_O++;
    }
    }
    if (num_of_O == size)
    {
    result = 0;
    }
    else
    if (num_of_X == size)
    {
    result = 1;
    }
    }
    }
    //检查正对角线
    num_of_O = num_of_X = 0;
    for (i = 0; i < size; i++)
    {
    if (board[i][i] == 1)
    {
    num_of_X++;
    }
    else
    if (board[i][i] ==0 )
    {
    num_of_O++;
    }
    
    }
    
    if (num_of_O == size)
    {
    result = 0;
    }
    else
    if (num_of_X == size)
    {
    result = 1;
    }
    
    //检查反对角线
    num_of_O = num_of_X = 0;
    for (i = 0; i < size; i++)
    {
    if (board[i][size - 1 - i] == 1)//反对角线计算方法
    {
    num_of_X++;
    }
    else
    if (board[i][size - 1 - i] == 0)
    {
    num_of_O++;
    }
    }
    
    if (num_of_O == size)
    {
    result = 0;
    }
    else
    if (num_of_X == size)
    {
    result = 1;
    }
    
    if (result == -1)
    {
    printf("抱歉啊,没有人赢哦!
    不服,再战!
    ");
    }
    else
    if (result == 0)
    {
    printf("恭喜!!!甲方赢啦
    ");
    }
    else
    if (result == 1)
    {
    printf("恭喜!!!乙方赢啦
    ");
    }
    printf("请输入矩阵的大小
    ");
    }
    return 0;
    }
    以大多数人努力程度之低,根本轮不到去拼天赋~
  • 相关阅读:
    configure: error: no acceptable cc found in $PATH
    SQL server的错误日志导致服务器C盘满
    域名/IP 正则表达式
    rpm 基本命令
    VB TO C#
    yum 的基本操作
    在服务器上怎么检查一个网站的在线连接数有多大。
    MSSQL2005不能连接远程有非法字符密码的数据库
    按账目类型和日期查看账目
    梦断代码读书笔记(二)
  • 原文地址:https://www.cnblogs.com/gcter/p/5746743.html
Copyright © 2011-2022 走看看