Warning: file_get_contents(/data/phpspider/zhask/data//catemap/6/cplusplus/154.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
C++ 创建一个3x3x3数组。用0到9之间的随机值填充它。输出数组。找到输出的3个最小值和3个最大值_C++_Arrays_Multidimensional Array - Fatal编程技术网

C++ 创建一个3x3x3数组。用0到9之间的随机值填充它。输出数组。找到输出的3个最小值和3个最大值

C++ 创建一个3x3x3数组。用0到9之间的随机值填充它。输出数组。找到输出的3个最小值和3个最大值,c++,arrays,multidimensional-array,C++,Arrays,Multidimensional Array,创建一个3x3x3数组。用0到9之间的随机值填充它。输出数组。找到输出的3个最小值和3个最大值。我继续从编译器中得到错误,并说明初始化问题。我不知道为什么 `#include <iostream> #include <cstdlib> #include <ctime> using namespace std; void initialize(int x[3][3][3]) int column; int row; int layer; int large1;

创建一个3x3x3数组。用0到9之间的随机值填充它。输出数组。找到输出的3个最小值和3个最大值。我继续从编译器中得到错误,并说明初始化问题。我不知道为什么

`#include <iostream>
#include <cstdlib>
#include <ctime>
using namespace std;

void initialize(int x[3][3][3]) int column; int row; int layer; int large1;
void find(int x[3][3][3]);              //to find number to fill


int main(){
    srand(time(NULL));
    int x[3][3][3];
    int large1, large2, large3, small1, small2, small3, row, column, layer;

    initialize(x[3][3][3]);
    int x = RAND() % 0 + 10;
}

void initialize(int x[3][3][3]){
    int large1, large2, large3, small1, small2, small3;

    large1 = large2 = large3 = INT_LARGE;

    for (int r = 0; r < 3; r++){
        for (int c = 0; c < 3; c++){
            for (int l = 0; l < 3; l++){
                if (x[r][c][l]>large1){
                    large3 = large2;
                    large2 = large1;
                    large1 = x[r][c][l];
                }
            }
        }
    }

    cout << large1 << large2 << large3 << endl;
    system("pause");
}

`
`include
#包括
#包括
使用名称空间std;
无效初始化(int x[3][3][3])int列;int行;int层;国际大酒店1;
无效查找(int x[3][3][3])//查找要填充的数字
int main(){
srand(时间(空));
int x[3][3][3];
int-large1,large2,large3,small1,small2,small3,行,列,层;
初始化(x[3][3][3]);
int x=RAND()%0+10;
}
无效初始化(int x[3][3][3]){
int-large1,large2,large3,small1,small2,small3;
大1=大2=大3=整数大;
对于(int r=0;r<3;r++){
对于(int c=0;c<3;c++){
对于(int l=0;l<3;l++){
如果(x[r][c][l]>large1){
大3=大2;
大2=大1;
大1=x[r][c][l];
}
}
}
}

如果没有错误信息,就很难猜测出哪里出了问题

也就是说,
int x=RAND()%0+10;
像灯塔一样突出,所以我猜这是你的问题。你不能用模(或除)加0,模在加法之前。你可以用括号解决这个问题
  • 删除代码开头和结尾的“垃圾邮件”
  • void initialize(int x[3][3][3])
    int column;int row;int layer;int large1;
  • initialize(x[3][3][3]);
    不正确,因为它的访问超出范围。请使用
    initialize(x);
  • int x=RAND()%0+10;
    中有三个错误:
    • x
      int x[3][3][3]冲突;
      请更改其名称
    • RAND()
      不在标准中。您的意思是
      RAND()
    • 不要将整数除以0
  • INT\u LARGE
    未定义。请在使用前在某处定义它

  • 第一个问题是,
    initialize
    的声明不是以分号结尾,而是后跟
    …])int column;int row;int layer;int large1;
    。这不会解析

    第二个问题是,
    int x=RAND
    行完全没有意义。它重新定义了
    x
    ,并且会在
    initialize
    之后发生。这是一个坏名字,因为它不初始化任何内容,而是对元素进行排序


    此时,你真的应该回到书本上,然后回到高级任务。确保
    initialize
    确实初始化了
    x
    ,然后将实际的排序逻辑放入
    find
    。看起来你被要求完成一个程序,而你完全忘记了
    find

    不要让你s猜测。包括错误消息。我怀疑在
    int x=RAND…
    行上至少有一个,因为您已经定义了
    x
    。错误2错误C2660:“初始化”:函数不接受1个参数错误3错误C2040:“x”:“int”与“int[3][3][3]的间接级别不同“错误4错误C3861:'RAND':找不到标识符错误5错误C2065:'large1':未声明的标识符错误6错误C2065:'large1':未声明的标识符错误7错误C2065:'row':未声明的标识符错误8错误C2065:'column':未声明的标识符错误9错误C2065:'layer':未声明的标识符10 IntelliSense:无实例”重载函数“initialize”的ce与参数列表匹配参数类型为:(int)13 IntelliSense:标识符“row”未定义14 IntelliSense:标识符“column”未定义15 IntelliSense:标识符“layer”未定义11 IntelliSense:标识符“RAND”未定义12 IntelliSense:标识符“large1”很抱歉,这是我第一次使用它。这看起来很像家庭作业,请确保您提出问题,以便从中学习。阅读变量和Java语法。