如何将数组打印为矢量形式
how I can print an array as a vector form
我想将数组作为行向量,但是当我写:
int main() {
int B[3]={0};
for (int w = 0; w <2; w++) {
cout <<"B="<<" "<< B[w] << " ";
}
cout << endl;
return 0;
}
输出B=0 B=0
但我希望输出是这样的:
B=(0 0)
对于只有固定大小的数组,我什至可能更喜欢这样的单行代码,因为我可以一眼看懂它:
cout << "B=(" << B[0] << " " << B[1] << " " << B[2] << ")n";
对于具有动态或大量元素B
的容器n
,您可能应该执行以下操作:
cout << "B=(";
if(n > 0)
{
cout << B[0];
// note the iteration should start at 1, because we've already printed B[0]!
for(int i=1; i < n; i++)
cout << ", " << B[i]; //I've added a comma here, so you get output like B=(0, 1, 2)
}
cout << ")n";
这样做的好处是,无论元素的数量如何,您最终都不会得到尾随逗号或不需要的空格。无论如何,我建议制作一个通用(模板)函数来打印数组/std::vector 内容 - 它对于调试目的非常有用!
int main() {
int B[3] = { 0 };
cout << "B=(";
for (int w = 0; w < 3; w++) {
cout << B[w];
if (w < 2) cout << " ";
}
cout << ")" << endl;
return 0;
}
输出现在应为: B=(0 0 0)
最简单的方法是:-
#include<iostream>
using namespace std;
int main()
{
int B[3]={0};
cout << "B=(";
for (int w = 0; w < 3; w++)
{
cout << B[w] << " ";
}
cout << ")" << endl;
return 0;
}
输出将为 B= (0 0 0 )
如果需要,可以尝试这个:
#include <iostream>
using namespace std;
int main() {
int B[3]={0};
cout << "B=(";
for (int w = 0; w <2; w++) {
cout << B[w];
if(w != 1) cout << " ";
}
cout << ")" << endl;
cout << endl;
return 0;
}
输出为:
B=(0 0)
该行if(w != 1)
检查是否已到达数组的最后一个元素。在这种情况下,最后一个索引是 1,但通常 if 语句应该是: if(w != n-1)
其中n
是数组的大小。
相关文章:
- 如何使用Crypto++并为RSA返回可打印的字节/字符数组
- 在一定长度后从数组中打印时缺少整数
- 数组元素打印的递归方法
- C++ 无法在字符数组中使用 for 循环打印字母模式
- 打印矢量数组中的所有元素
- 打印问题.我在数组中打印值时遇到一些问题
- 数组类 阵列的打印输出
- 动态分配的聊天数组打印缺失的数据和空
- 如何打印 2D 字符数组C++
- 如何修改代码以打印出数组 v2
- 在C++中初始化和打印 2D 数组
- 将浮点数转换为无符号字符数组并打印出来
- C++ 打印包含数据结构的数组
- 如何让字符数组在一行而不是多行中打印出来?
- 打印字符数组地址的正确方法
- 按字母顺序打印存储在字符数组中的信息
- 使用递归反转和打印出数组的内容
- 如何将文本文件读取到二维数组中并以 c++ 打印
- 如何在运行时在对象数组中动态追加新对象C++并打印它们
- 加载有空指针的字符数组的打印值