gpt4 book ai didi

c++ - 在 C++ 中,如何使数据文件中的整数均匀分布在 5 列中?

转载 作者:太空宇宙 更新时间:2023-11-04 16:08:52 31 4
gpt4 key购买 nike

我很难正确格式化来自程序的数据值。该程序的要点是在批处理中显示来自数据文件的值,格式如 5 列,每列有 5 个整数,如果数据文件中有超过 5 个整数,则创建另一行 5 个整数。

但是我的代码并没有以这种方式工作,即使它看起来应该如此

#include <iostream>
#include <iomanip>
using namespace std;
int main()
{
int data;// the data which will be inputted from the file
int count = 0;
int amount; // number of data integers in a column

cout << "Values read from file" << endl;
while (cin >> data)
{
for (int i = 0; i < 5; i++)
{
amount++;
cin >> data;
cout << setw(7) << data;
if (amount == 5)
{
i = 0;
cout << endl;
}
}
}
return 0;
}

这是我目前所拥有的,代码正在编译,但我得到的输出非常难看,最后的整数重复。

这就是我得到的格式

Values read from file 32 -4 707 22 33 -70000 370000 -43 17 0 96 96 96 96 96

最佳答案

使用模运算!

'mod' 运算符 % 将执行除法并返回余数。您可以使用它来确定何时打印新行:

while(stuff) {
if(amount % 5 == 0) {
cout << endl;
}
amount++;

//more stuff
}

作为旁注,您的代码现在无法正常工作的原因可能是因为您的 i=0 应该是 amount = 0,但是模块化算法会让您将金额作为总计。

关于c++ - 在 C++ 中,如何使数据文件中的整数均匀分布在 5 列中?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/31036367/

31 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com