++v2 输出在我的第一个变量之前停止
++v2 output to stop before my first variable
我正在尝试一个非常基本的 C++ 练习:
编写一个程序,提示用户输入两个整数。打印这两个整数指定范围内的每个数字。
这是我的程序:
#include <iostream>
int main()
{
std::cout << "Write two numbers: " << std::endl;
int v1 = 0, v2 = 0;
std::cin >> v1 >> v2;
std::cout << "The numbers between " << v1 << " and " << v2 << " are: " << std::endl;
while (v1 > v2)
{
std::cout << ++v2 << std::endl;
}
}
我的输出显示如下:
Write two numbers:
10
5
The numbers between 10 and 5 are:
6
7
8
9
10
我的问题是,如何只输出 6 到 9,而不输出 10?
我是基础知识,所以我不需要 for 或循环或其他更高级的东西,只需要 while
和 ++v2
。
while(v1 != v2 - 1)
{
std::cout << ++v1 << std::endl;
}
我终于添加了这段代码,以便按照之前建议的评论工作和阅读这两种情况:
#include <iostream>
int main()
{
std::cout << "Write two numbers: " << std::endl;
int v1 = 0, v2 = 0;
std::cin >> v1 >> v2;
std::cout << "The numbers between " << v1 << " and " << v2 << " are: " << std::endl;
while (v2 < v1 && ++v2 < v1)
{
std::cout << v2 << std::endl;
}
while (v1 < v2 && ++v1 < v2)
{
std::cout << v1 << std::endl;
}
}
如果太新手,请告诉我,也许还有另一种方法可以使它看起来更简单(只需使用while
)。
我正在尝试一个非常基本的 C++ 练习:
编写一个程序,提示用户输入两个整数。打印这两个整数指定范围内的每个数字。
这是我的程序:
#include <iostream>
int main()
{
std::cout << "Write two numbers: " << std::endl;
int v1 = 0, v2 = 0;
std::cin >> v1 >> v2;
std::cout << "The numbers between " << v1 << " and " << v2 << " are: " << std::endl;
while (v1 > v2)
{
std::cout << ++v2 << std::endl;
}
}
我的输出显示如下:
Write two numbers:
10
5
The numbers between 10 and 5 are:
6
7
8
9
10
我的问题是,如何只输出 6 到 9,而不输出 10?
我是基础知识,所以我不需要 for 或循环或其他更高级的东西,只需要 while
和 ++v2
。
while(v1 != v2 - 1)
{
std::cout << ++v1 << std::endl;
}
我终于添加了这段代码,以便按照之前建议的评论工作和阅读这两种情况:
#include <iostream>
int main()
{
std::cout << "Write two numbers: " << std::endl;
int v1 = 0, v2 = 0;
std::cin >> v1 >> v2;
std::cout << "The numbers between " << v1 << " and " << v2 << " are: " << std::endl;
while (v2 < v1 && ++v2 < v1)
{
std::cout << v2 << std::endl;
}
while (v1 < v2 && ++v1 < v2)
{
std::cout << v1 << std::endl;
}
}
如果太新手,请告诉我,也许还有另一种方法可以使它看起来更简单(只需使用while
)。