0

该数字是整数,但我不确切知道哪个条件最适合使用,以便循环结束。

4

1 回答 1

2

最好的方法是检查传递的整数是否像这里一样为零

#include <stdio.h>
#include <stdlib.h>

int largest(int val, int lrg)
{
    int newlargest = abs(val % 10) > lrg ? abs(val % 10): lrg;
    val /= 10;
    if(val) newlargest = largest(val, newlargest);
    return newlargest;
}

int main()
{
    int num = -38543045;
    printf("%d - largest = %d\n", num, largest(num,0));
}

https://godbolt.org/z/asUUGV

于 2019-11-16T11:01:47.563 回答