问题标题: 酷町堂:4895

0
0
已解决
邵悦媛
邵悦媛
新手光能
新手光能

在计算机的硬件操作中,有很多地方都会用到数值置换器,具体规则如下:
给定一个M行N列二维数组以及一个参考数值a,将二维数组中所有第一次以后出现的a清0,请输出经过数值置换器之后的新数组。

输入描述 Input Description

输入为M+1行:
第一行为二维数组的行数M与列数N,以及参考值a,且M与N不超过50;
余下的M行为M行N列的二维数组,每一行之间的元素用单个空格隔开。

输出描述 Output Description

输出为M行N列的二维数组,表示的是经过数值置换器之后的新数组,没一行之间的元素用单个空格隔开。

样例输入 Sample Input

3 3 3 1 2 3 4 1 2 5 3 1

样例输出 Sample Output

1 2 3 4 1 2 5 0 1

数据范围及提示 Data Size & Hint

n,m<=50

int a[101][101];
int main(){
    bool f=0;
    int n,m,k;
    cin>>n>>m>>k; 
    for(int i=1;i<=n;i++){
        for(int j=1;j<=m;j++){
            cin>>a[i][j];
            if(a[i][j]==k)
            {
            f++;    
            }
            if(f>1&&a[i][j]==k){
                a[i][j]=0;

            }
        }
    }
    for(int i=1;i<=n;i++){
        for(int j=1;j<=m;j++){
            cout<<a[i][j]<<" ";
        }
        cout<<endl;
    }
    return 0;
}
我用了我万能头

 


0
0
邵悦媛
邵悦媛
新手光能
新手光能
int f=0;
    int n,m,k;
    cin>>n>>m>>k; 
    for(int i=1;i<=n;i++){
        for(int j=1;j<=m;j++){
            cin>>a[i][j];
            if(a[i][j]==k)
            {
            f++;    
            }
            if(f>1&&a[i][j]==k){
                a[i][j]=0;

            }
        }
    }
    for(int i=1;i<=n;i++){
        for(int j=1;j<=m;j++){
            cout<<a[i][j]<<" ";
        }
        cout<<endl;
    }

我发的不是整段代码,我没有发头文件和return 0;

我要回答