c++ - 如何编写向用户询问两个整数并在 C++ 中按以下顺序显示的内容?
问题描述
我是 C++ 的初学者,在这里几乎不需要帮助。如何创建一个从用户那里获取两个整数并使用嵌套循环以这种格式显示序列的 C++ 程序:
输入起始整数:11
输入结束整数:18
(11,11)(11,12)(11,13)(11,14)(11,15)(11,16)(11,17)(11,18)
(12,12)(12,13)(12,14)(12,15)(12,16)(12,17)
(13,13)(13,14)(13,15)(13,16)
(14,14)(14,15)
或者
输入起始整数:1
输入结束整数:5
(1,1)(1,2)(1,3)(1,4)(1,5)
(2,2)(2,3)(2,4)
(3,3)
我之前写过这样的代码:
int startingval;
cout << "Enter starting integer: ";
cin >> startingval;
int endingval;
cout << "Enter Ending integer: ";
cin >> endingval;
int looptime;
looptime = endingval;
endingval = startingval;
for (int i = 0; i < startingval; i++)
{
cout << "(" << startingval << ", " << endingval << ")";
endingval++;
if (endingval == looptime + 1)
{
i = startingval;
}
}
return 0;
但是,这不是我需要的。请帮我 :)
解决方案
首先,除了您的问题之外,您不能使用任何标签。您想要的序列与数组中所有元素之间的正常嵌套循环之间的唯一区别是结束点正在递减我建议您尝试以下代码:
int start;
cout << "Enter starting integer: ";
cin >> start;
int end;
cout << "Enter Ending integer: ";
cin >> end;
for(int i=start;i<=end;i++){
for(int j=i;j<=end;j++)
cout << "(" << i << ", " << j << ")";
cout<<endl;
end--;
}
希望对你有用,有问题请告诉我。