C++ 数中最大的整数

C++ 数中最大的整数,c++,C++,我想做一个程序,允许您输入一个数字(比如145)。它读取3个整数并打印最大的一个 int a, b, c, max; cout << "Enter a, b and c: "; cin >> a >> b >> c; max = a; if (b>max) max = b; if (c>max) max = c; cout << "Max is " << max << "\n";

我想做一个程序,允许您输入一个数字(比如145)。它读取3个整数并打印最大的一个

int a, b, c, max;

cout << "Enter a, b and c: ";
cin >> a >> b >> c;

max = a;
if (b>max)
    max = b;
if (c>max)
    max = c;
cout << "Max is " << max << "\n";
inta、b、c、max;
cout>a>>b>>c;
max=a;
如果(b>最大值)
max=b;
如果(c>最大值)
max=c;

cout您读取数字的方式(
cin>>a>>b>>c
)要求它们用空格分隔

因此,如果意图是将
145
的每个数字单独解释为一个数字,只需在输入时用空格分隔它们,如:
1 4 5


如果必须同时输入,请将它们读入
char
变量,然后转换为数字(通过减去
'0'
)。

如果您指的是数字而不是数字,则可以使用
char
类型的变量,然后将其转换为整数(虽然通常不需要只看哪个更大)。或者,您可以读取单个数字(这似乎是您想要的),然后依次调用
%10、/=10来获取每个数字,只需使用

char a, b, c, max; 
而不是

int a, b, c, max;
你会得到你想要的。 其他一切都保持不变

int main()
{

    char a, b, c, max;

    cout << "Enter a, b and c: ";
    cin >> a >> b >> c;

    max = a;
    if (b>max)
        max = b;
    if (c>max)
        max = c;
    cout << "Max is " << max << "\n";
    system("pause");
}
intmain()
{
字符a、b、c、最大值;
cout>a>>b>>c;
max=a;
如果(b>最大值)
max=b;
如果(c>最大值)
max=c;
cout最简单的解决方案:

int number;
int max = 0;

cout << "Enter a number : ";
cin >> number;

while (number != 0)
{
    if ((number % 10) > max) //Remainder of number / 10
    {
        max = number % 10;
    }
    number /= 10;  //remove the last digit
}

cout << "The largest number was " << max;
整数;
int max=0;
数量;
while(数字!=0)
{
if((编号%10)>max)//编号/10的余数
{
最大值=数量%10;
}
number/=10;//删除最后一个数字
}

欢迎来到Stack Overflow!你能澄清你的问题吗?你说的“让计算机读取每个整数”是什么意思吗?你上面的代码实际上会从用户那里读取三个整数。因此,你希望输入像“145”这样的数字,而不是像“1[enter]4[enter]5[enter]”那样的数字?简单的解决方案是用字符替换
int
,如果你能指定输入,你期望输出和实际输出是什么,那就太好了。是的,我刚刚意识到我可以用字符来工作,我只是不知道怎么做!我想让comp.读取145并打印这三个字符中最大的一个。但是作为一个数字,不能分开!@john:
ch-'0'
其中
ch
是一个包含十进制数字的字符变量。这不起作用,因为我希望程序是实数145,只有一个字符。然后打印5是最大的数字。使用我用于比较3个独立数字的逻辑。145输入,它说5最大。我输入145,它说5是最大的最大。您希望最大的是什么?是的,但它是单独输入的。我想输入144或124,程序会说哪个数字最大。输入145,然后按enter,您就会得到答案。这是我的控制台屏幕的副本:
输入a、b和c:132 Max是3
这就是您想要看到的吗?但是我ts正在单独输入!我希望输入为单个[enter]在
int digit\u a=char\u a-“0”的行中有一些东西。但是我如何分离每个数字呢?这就是我完全丢失的地方。如果你读取字符,那么你读取的是字符形式的每个数字。如果你读取一个整数,你可以使用%10和/=10将其分离为数字,必须有很多关于如何分割的例子以10位为基数的数字。