求助,检查了好几遍,找不到错误在哪儿
查看原帖
求助,检查了好几遍,找不到错误在哪儿
436206
哥哥兜兜有糖楼主2021/12/21 16:05
#include <iostream>
#include <cstring>
using namespace std;

int main()
{
#ifdef LOCAL
    freopen("in", "r", stdin);
    freopen("out", "w", stdout);
#endif

    int n, m;
    cin >> n;
    int a[n + 2][7];//第0行存结果,第1行存中奖号码,2到n+2行存买到的彩票
    memset(a, 0, sizeof(a));//格式化数组
    for (int i = 1; i <= n + 1; i++)//从第一行开始遍历,输入数值
    {
        m = 0;//初始化计数器
        cin >> a[i][0] >> a[i][1] >> a[i][2] >> a[i][3] >> a[i][4] >> a[i][5] >> a[i][6];
        if (i != 1)//第一行中奖号码不参与比较
        {
            for (int j = 0; j <= 6; j++)//遍历每行彩票
            {
                for (int k = 0; k <= 6; k++)//遍历中奖号码
                {
                    if (a[i][j] == a[1][k])//如果彩票==中奖号码
                    {
                        m = m + 1;//计数器+1
                    }
                }
            }
            a[0][7 - m] += 1;//m为 彩票==中奖号码True 的个数,7-m为中了几等奖
        }
    }
    cout << a[0][0] << " " << a[0][1] << " " << a[0][2] << " " << a[0][3] << " " << a[0][4] << " " << a[0][5] << " " << a[0][6];
    // for (int i=0;i<=6;i++){
    //     cout<<a[0][i]<<" ";
    // }
    return 0;
}

2021/12/21 16:05
加载中...