C ++新手,在我的学习中有作业。
代码:
#include <iostream>
#include <iomanip>
using namespace std;
int main()
{
for (int i = 1, j = 1; i <= 9; i++, j++) {
cout << setw(5) << right << i;
if(j==3) {
j=0;
cout << "\n";
}
}
return 0;
}
产生此输出:
1 2 3
4 5 6
7 8 9
但是,我需要这个输出:
1 4 7
2 5 8
3 6 9
不允许使用数组。我认为这很简单(已经尝试了额外的 for 循环等),但无法弄明白。任何帮助将不胜感激。
答案 0 :(得分:1)
解决方案非常简单如下:
#include <iostream>
int main() {
for (int i = 1; i <= 3; i++) {
std::cout << i << "\t" << (i + 3) << "\t" << (i + 6) << "\n";
}
return 0;
}
我建议您应该考虑基本的数学逻辑来解决这些问题。
上面的代码将生成以下输出:
1 4 7
2 5 8
3 6 9
如果你看到每一行,你可以看到每个值增加3。
i = 1
时,第一个值是我自己。i+3
。i+6
。