首页
学习
活动
专区
圈层
工具
发布
首页
学习
活动
专区
圈层
工具
MCP广场
社区首页 >问答首页 >打印伪多维数组时出错

打印伪多维数组时出错
EN

Stack Overflow用户
提问于 2015-10-24 16:17:22
回答 1查看 563关注 0票数 1

我试图打印一个伪多维数组(不要问为什么是XD),但是当我这样做的时候出于某种原因。

代码语言:javascript
运行
复制
#include <iostream>

#define Row_sz 3
#define Col_sz 4

using namespace std;

int main()
{
    int row, col;
    int arr[Row_sz*Col_sz];

    cout<<"Printing a multi-dimensional array."<<endl;
    do{
        cout<<"Enter the number of rows: "<<endl;
        cin>>row;
    }while(row>Row_sz||row<0);
    do{
        cout<<"Enter the number of columns: "<<endl;
        cin>>col;
    }while(col>Col_sz||col<0);

    for (int x=0;x<row;x++){
        for(int y=0;y<col;y++){
            cout<<"Enter the value: "<<endl;
            cin>>arr[x*y];
        }

    }
    cout<<"The array matrix: "<<endl;
    for (int x=0;x<row;x++){
        for(int y=0;y<col;y++){
            cout<<arr[x*y]<<" ";
        }
        cout<<endl;
    }
}

例如:5,4,3,2,1,6,7,8,9,11,12,13

代码语言:javascript
运行
复制
                                                         9 9 9 9
                                                         9 6 11 8
                                                         9 11 12 13

而不是:

代码语言:javascript
运行
复制
                                                 5 4 3 2
                                                 1 6 7 8
                                                 9 11 12 13

或者类似的东西。

EN

Stack Overflow用户

回答已采纳

发布于 2015-10-24 16:53:47

替换

代码语言:javascript
运行
复制
 x*y

使用

代码语言:javascript
运行
复制
x*Col_sz+y

*运算符是乘法。您的数组有12个元素长。你想要填充元素0,1,2,3,4,5,6…11。如果你看看x*y产生了什么,你会发现这不是你想要的。

票数 1
EN
查看全部 1 条回答
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/33320389

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档