Online Compiler C

#include<stdio.h> int main(){ int num,temp; int max_digit=0,min_digit=9; scanf("%d",&num); temp=num; while(temp!=0){ int digit=temp%10; if(digit>max_digit){ max_digit=digit; } if(digit<min_digit){ min_digit=digit; } temp/=10; } int a=max_digit-min_digit; printf("%d\n",a); return 0; }
1) 这段代码读取一个整数,然后找出该整数中最大和最小的数字,最后计算并输出它们的差值。

2) 提示:注意代码中 `min_digit` 的初始值设为9,如果输入的数字是0,循环不会执行,`min_digit` 将保持为9,这会导致错误的结果。另外,考虑如何处理负数的情况,因为当前的代码没有处理负数的逻辑。