- html - 出于某种原因,IE8 对我的 Sass 文件中继承的 html5 CSS 不友好?
- JMeter 在响应断言中使用 span 标签的问题
- html - 在 :hover and :active? 上具有不同效果的 CSS 动画
- html - 相对于居中的 html 内容固定的 CSS 重复背景?
好的,我有这个程序,但我在使用它时遇到了一些问题。在 addRows 和 subtractRows 函数中,程序卡住并且总和也不正确。任何人都可以看看这个并指出我的错误吗?谢谢。
#include "stdafx.h"
#include <iostream>
#include <fstream>
#include <iomanip>
using namespace std;
const int ROW1MAX = 100;
const int COL1MAX = 100;
const int ROW2MAX = 100;
const int COL2MAX = 100;
void inputInfo(double[][COL1MAX], int , int );
void addRows(double AR[][COL2MAX], int ROW1, int RW2);
void subtractRows(double array[][COL2MAX], int RW1, int RW2);
void addColumns(double ar[][COL2MAX], int COL1, int COL2);
void subtractColumns(double RAY[][COL2MAX], int CL1, int CL2);
void printAry(int ary[ROW1MAX][COL1MAX]);
//void copyAry(double RR[][COL2MAX], int RZ, int CZ);
void rowLargestNumber(double RY[100][100], int RS, int COS);
void columnLargestNumber(double XC[100][100], int X, int Y);
void rowSmallestNumber(double BK[100][100], int RB, int CB);
void columnSmallestNumber(double QU[100][100], int ROWB, int COLB);
void replace(double VW[100][100], int D, int H);
void printAry(double GH[100][100], int A, int B);
int rows;
int colm;
double ary1[ROW1MAX][COL1MAX];
double ary2[ROW2MAX][COL2MAX];
ofstream jfOutputFile;
int main()
{
jfOutputFile.open("2D_Array_Stuff");
inputInfo(ary1, ROW1MAX, COL1MAX);
addRows(ary1, ROW1MAX, ROW1MAX);
subtractRows(ary1, ROW1MAX, ROW1MAX);
addColumns(ary1, COL1MAX, COL1MAX);
subtractColumns(ary1, COL1MAX, COL1MAX);
//copyAry(ary1, ROW1MAX, COL1MAX);
rowLargestNumber(ary2, ROW2MAX, COL2MAX);
columnLargestNumber(ary2, ROW2MAX, COL2MAX);
rowSmallestNumber(ary2, ROW2MAX, COL2MAX);
columnSmallestNumber(ary2, ROW2MAX, COL2MAX);
replace(ary2, ROW2MAX, COL2MAX);
printAry(ary2, ROW2MAX, COL2MAX);
jfOutputFile.close();
return 0;
}
void inputInfo(double inputInfo[][COL2MAX], int ROW1MAX, int COL1MAX)
{
cout << "How many rows are in your first array?: ";
cin >> ROW1MAX;
cout << "How many columns are in your first array?: ";
cin >> COL1MAX;
cout << "\nEnter the information for each row and column:\n";
for (rows = 0; rows < ROW1MAX; rows++)
{
for (colm = 0; colm < COL1MAX; colm++)
{
cout << "Row " << (rows + 1);
cout << ", Column " << (colm + 1)<< " : ";
cin >> inputInfo[rows][colm];
}
}
cout << "\nThe first array is: \n";
cout<<endl;
printAry(inputInfo, ROW1MAX, COL1MAX);
addRows(inputInfo, ROW1MAX, ROW1MAX);
subtractRows(inputInfo, ROW1MAX, ROW1MAX);
addColumns(inputInfo, COL1MAX, COL1MAX);
subtractColumns(inputInfo, COL1MAX, COL1MAX);
}
void addRows(double addRows[][COL2MAX], int row1, int row2)
{
double rowSum1 = 0;
double rowSum2 = 0;
for(colm = 0; colm < COL1MAX; colm++)
{
rowSum1 = rowSum1 + addRows[row1][colm];
cout<<rowSum1<<endl;
}
for(colm = 0; colm < COL1MAX; colm++)
{
rowSum2 = rowSum2 + addRows[row2+4][colm];
}
cout << "\nthe sum of two rows is: " << rowSum1 + rowSum2 << ".\n";
for (int r = 0; r < ROW1MAX; r++)
{
rowSum1 = 0;
for (int c = 0; c < colm; c++)
rowSum1 += addRows[r][c];
}
}
void subtractRows(double subRows[][COL2MAX], int rows1, int rows2)
{
int rowDif1 = 0;
int rowDif2 = 0;
for(colm = 0; colm < COL1MAX; colm++)
{
rowDif1 = rowDif1 - subRows[rows1][colm];
}
for(colm = 0; colm < COL1MAX; colm++)
{
rowDif2 = rowDif2 - subRows[rows2][colm];
}
int subRowSum = rowDif2 - rowDif1;
cout << "\nThe difference between two rows is: " << subRowSum << ".\n";
}
void addColumns(double addCols[][COL2MAX], int colm1, int colm2)
{
double colSum1;
double colSum2;
colSum1 = 0;colSum2=0;
for(rows = 0; rows < ROW1MAX; rows++)
{
colSum1 = colSum1 + addCols[rows][colm1];
}
for(rows = 0; rows < ROW1MAX; colm++)
{
colSum2 = colSum2 + addCols[rows][colm2];
}
cout << "\nThe sum of 2 columns is: " << colSum1 + colSum2 << ".\n";
}
void subtractColumns(double subCols[][COL2MAX], int colm1, int colm2)
{
double colDif1;
double colDif2;
colDif1 = 0;
colDif2 = 0;
for(rows = 0; rows < ROW1MAX; rows++)
{
colDif1 = colDif1 - subCols[rows][colm1];
}
for(rows = 0; rows < ROW1MAX; rows++)
{
colDif2 = colDif2 - subCols[rows][colm2];
}
cout << "\nThe difference between 2 columns is: " << colDif2 - colDif1 << ".\n";
}
void copyAry(double copyAry[100][100], int RA, int CB)
{
for (rows = 0; rows < RA; rows++)
{
for (colm = 0; colm < CB; colm++)
{
copyAry[RA][CB] = ary2[ROW2MAX][COL2MAX];
}
}
cout << "\nThe copied array is:\n" << ary2[ROW2MAX][COL2MAX] << ".\n";
}
void rowLargestNumber(double rowLgstNum[100][100], int RS, int COS)
{
double highest;
for (int rw = 0; rw < RS; rw++)
{
highest = rowLgstNum[rw][0];
for (int clm = 0; clm < COS; clm++)
{
if ( rowLgstNum[rw][clm] > highest)
{
highest = rowLgstNum[rw][clm];
}
}
}
cout << "The highest number in Row " << ROW2MAX << "is " << highest << ".\n";
}
void columnLargestNumber(double colLgstNum[100][100], int X, int Y)
{
double HIGH;
for (int CM = 1; CM < Y; CM++)
{
HIGH = colLgstNum[0][CM];
for (int RW = 0; RW < X; RW++)
{
if ( colLgstNum[RW][CM] > HIGH)
{
HIGH = colLgstNum[RW][CM];
}
}
}
cout << "The highest number in Column " << COL2MAX << "is " << HIGH << ".\n";
}
void rowSmallestNumber(double rowSmstNum[100][100], int RB, int CB)
{
double lowest;
for (int rx = 1; rx < RB; rx++)
{
lowest = rowSmstNum[rx][0];
for (int cx = 0; cx < CB; cx++)
{
if ( rowSmstNum[rx][cx] < lowest)
{
lowest = rowSmstNum[rx][cx];
}
}
}
cout << "The lowest number in Row " << ROW2MAX << "is " << lowest << ".\n";
}
void columnSmallestNumber(double colSmstNum[100][100], int ROWB, int COLB)
{
double LOW;
for (int CN = 0; CN < COLB; CN++)
{
LOW = colSmstNum[0][CN];
for (int rH = 0; rH < ROWB; rH++)
{
if ( colSmstNum[rH][0] < LOW)
{
LOW = colSmstNum[rH][CN];
}
}
cout << "The lowest number in Column " << COL2MAX << "is " << LOW << ".\n";
}
}
void replace(double replace[100][100], int D, int H)
{
for (int f = 0; f < D; f++)
{
for (int c = 0; c < H; c++)
{
replace[1][1] = 100;
}
}
}
void printAry(double prtAry[ROW1MAX][COL1MAX], int A, int B)
{
for (int a = 0; a < A; a++)
{
for (int b = 0; b < B; b++)
{
cout << prtAry[a][b] << " ";
if(b==B)
{
cout<<endl;
}
}
}
cout << "\n";
}
最佳答案
这里有几个问题。首先,永远不要对变量使用与您的方法/函数相同的名称。当我们将“addRows”同时视为变量和函数时,这会让人感到困惑。
特别是关于为什么 addRows 失败的问题,您将数组的大小声明为 ROW1MAX,但试图访问行 ROW1MAX。在声明中(创建数组的地方),您指定行数。当您实际访问数组时,它是一个基于 0 的索引。因此,具有 5 行的数组将具有第 0、1、2、3 和 4 行。没有 5。
关于c++ - C++ 中的二维数组,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/22058833/
我正在尝试创建一个包含 int[][] 项的数组 即 int version0Indexes[][4] = { {1,2,3,4}, {5,6,7,8} }; int version1Indexes[
我有一个整数数组: private int array[]; 如果我还有一个名为 add 的方法,那么以下有什么区别: public void add(int value) { array[va
当您尝试在 JavaScript 中将一个数组添加到另一个数组时,它会将其转换为一个字符串。通常,当以另一种语言执行此操作时,列表会合并。 JavaScript [1, 2] + [3, 4] = "
根据我正在阅读的教程,如果您想创建一个包含 5 列和 3 行的表格来表示这样的数据... 45 4 34 99 56 3 23 99 43 2 1 1 0 43 67 ...它说你可以使用下
我通常使用 python 编写脚本/程序,但最近开始使用 JavaScript 进行编程,并且在使用数组时遇到了一些问题。 在 python 中,当我创建一个数组并使用 for x in y 时,我得
我有一个这样的数组: temp = [ 'data1', ['data1_a','data1_b'], ['data2_a','data2_b','data2_c'] ]; // 我想使用 toStr
rent_property (table name) id fullName propertyName 1 A House Name1 2 B
这个问题在这里已经有了答案: 关闭13年前。 Possible Duplicate: In C arrays why is this true? a[5] == 5[a] array[index] 和
使用 Excel 2013。经过多年的寻找和适应,我的第一篇文章。 我正在尝试将当前 App 用户(即“John Smith”)与他的电子邮件地址“jsmith@work.com”进行匹配。 使用两个
当仅在一个边距上操作时,apply 似乎不会重新组装 3D 数组。考虑: arr 1),但对我来说仍然很奇怪,如果一个函数返回一个具有尺寸的对象,那么它们基本上会被忽略。 最佳答案 这是一个不太理
我有一个包含 GPS 坐标的 MySQL 数据库。这是我检索坐标的部分 PHP 代码; $sql = "SELECT lat, lon FROM gps_data"; $stmt=$db->query
我需要找到一种方法来执行这个操作,我有一个形状数组 [批量大小, 150, 1] 代表 batch_size 整数序列,每个序列有 150 个元素长,但在每个序列中都有很多添加的零,以使所有序列具有相
我必须通过 url 中的 json 获取文本。 层次结构如下: 对象>数组>对象>数组>对象。 我想用这段代码获取文本。但是我收到错误 :org.json.JSONException: No valu
enter code here- (void)viewDidLoad { NSMutableArray *imageViewArray= [[NSMutableArray alloc] init];
知道如何对二维字符串数组执行修剪操作,例如使用 Java 流 API 进行 3x3 并将其收集回相同维度的 3x3 数组? 重点是避免使用显式的 for 循环。 当前的解决方案只是简单地执行一个 fo
已关闭。此问题需要 debugging details 。目前不接受答案。 编辑问题以包含 desired behavior, a specific problem or error, and the
我有来自 ASP.NET Web 服务的以下 XML 输出: 1710 1711 1712 1713
如果我有一个对象todo作为您状态的一部分,并且该对象包含数组列表,则列表内部有对象,在这些对象内部还有另一个数组listItems。如何更新数组 listItems 中 id 为“poi098”的对
我想将最大长度为 8 的 bool 数组打包成一个字节,通过网络发送它,然后将其解压回 bool 数组。已经在这里尝试了一些解决方案,但没有用。我正在使用单声道。 我制作了 BitArray,然后尝试
我们的数据库中有这个字段指示一周中的每一天的真/假标志,如下所示:'1111110' 我需要将此值转换为 boolean 数组。 为此,我编写了以下代码: char[] freqs = weekday
我是一名优秀的程序员,十分优秀!