C++ 如何输入整数并将其从最高到最低排序
如何输入整数并将其从最高到最低排序(例如,输入123456,输出654321,输入可以自定义)。我有一个大数字的问题 我有一个大数字的问题 整数类型的范围有限。为避免此类问题,请将输入视为字符串,然后对字符串中的字符进行排序C++ 如何输入整数并将其从最高到最低排序,c++,C++,如何输入整数并将其从最高到最低排序(例如,输入123456,输出654321,输入可以自定义)。我有一个大数字的问题 我有一个大数字的问题 整数类型的范围有限。为避免此类问题,请将输入视为字符串,然后对字符串中的字符进行排序 对于错误处理,您可能需要检查输入是否仅由数字组成。我认为下面的代码适用于您 #include <iostream> #include <string> #include <algorithm> using namespace std;
对于错误处理,您可能需要检查输入是否仅由数字组成。我认为下面的代码适用于您
#include <iostream>
#include <string>
#include <algorithm>
using namespace std;
bool Isnum(char ch)
{
if(ch >= 48 && ch <= 57)
return true;
else
return false;
}
bool compare(char a,char b)
{
return a>b;
}
int main()
{
string num;
cin >> num;
cout << num << endl;
int i;
for(i=0;i<num.length();i++)
{
if(!Isnum(num[i]))
{
cout << "Enter a valid number";
return 0;
}
}
sort(num.begin(),num.end(),compare);
cout << num;
return 0;
}
#包括
#包括
#包括
使用名称空间std;
bool-Isnum(char-ch)
{
如果(ch>=48&&ch b;
}
int main()
{
字符串数;
cin>>num;
能读到关于、等的书吗
//输入
std::string s=“123456”;
//降序排序
std::sort(s.begin()、s.end()、std::greater());
你想对字符串中的数字进行排序吗?你试过了吗?C不是C++,C++不是C……你试过了吗?请提供一个正确的语言标记。你说的“习惯”是什么意思?输入?欢迎使用堆栈溢出!请将您的问题显示出来。您应该包括您遇到问题的代码的一部分,然后我们可以尝试帮助解决具体问题。您还应该阅读。这个问题不涉及整数。它是关于文本操作的。请不要鼓励人们要求为我编写代码通过为他们编写代码。我在为新程序员共享代码方面似乎没有任何错误。那么你应该阅读,通读,如果没有这样做的话。回答这样的(代码请求)问题只会鼓励他们问更多问题(如果这个问题是离题的,为什么回答这个问题?!)。无论如何,我认为为某人提供代码没有任何价值-如果他们只是在学习,如果他们不尝试自己编写代码,并且刚刚获得代码,他们将一无所获。好的……接下来我将创建一个聊天室。没有很好的理由对ASCII值进行硬编码。使用字符常量,因为它们更容易阅读,也因为不需要嘿,你更方便携带。
// Input
std::string s = "123456";
// Sort descending
std::sort(s.begin(), s.end(), std::greater<char>());