首先我们需要一个n来了表示小明买的彩票张数,再用三个数组来表示中奖号码和自己的中奖号码,还有情况,如下:
int right_answer[7],my_answer[1000][7],right[7],n;
然后循环输入:
cin>>n;
for(int v=0;v<7;v++) cin>>right_answer[v];
for(int i=0;i<n;i++) for(int v=0;v<7;v++) cin>>my_answer[i][v];
随后调查自己每个奖券与中奖号码的相同情况,并存入情况数组
for(int i=0;i<n;i++){
int sum=0;
for(int v=0;v<7;v++) for(int c=0;c<7;c++) if(right_answer[c]==my_answer[i][v]) {sum++;break;}
right[sum-1]++;
}
注(因下标从0开始所以sum-1)
最后输出就可以了
下面是完整代码:
#include<iostream>
using namespace std;
int right_answer[7],my_answer[1000][7],right[7],n;
int main(){
cin>>n;
for(int v=0;v<7;v++) cin>>right_answer[v];
for(int i=0;i<n;i++) for(int v=0;v<7;v++) cin>>my_answer[i][v];
for(int i=0;i<n;i++){
int sum=0;
for(int v=0;v<7;v++) for(int c=0;c<7;c++) if(right_answer[c]==my_answer[i][v]){sum++;break;}
right[sum-1]++;
}
for(int i=6;i>=0;i--) cout<<right[i]<<" ";
return 0;
}
记得点赞哦!!!!