数字中的最大整数

时间:2011-09-15 19:59:01

标签: 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";

我想到使用这样的东西,但我不知道如何让计算机读取每个单独的整数。另外,我是编程新手,所以我想让它易于理解。

谢谢!

4 个答案:

答案 0 :(得分:2)

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

因此,如果意图是145的每个数字都被解释为一个数字,只需在输入时用空格分隔,如下所示:1 4 5

如果他们一起输入,请将其读入char个变量,然后转换为数字(通过减去'0')。

答案 1 :(得分:0)

如果您的意思是数字而不是数字,那么您可以使用char类型的变量,然后将它们转换为整数(尽管通常只需要查看哪一个更大)。或者,您可以读取一个数字(这似乎是您想要的),并通过连续调用% 10, /= 10来获取每个数字。

答案 2 :(得分:0)

只需使用

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");
}

答案 3 :(得分:0)

最简单的解决方案:

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;