填空题
下列给定程序中,函数fun实现的功能是:统计一个无符号整数中各位数字值为0的个数,通过形参传回主函数,并把该整数中各位上最大的数字值作为函数值返回。例如,若输入无符号整数30800,则数字值为0的位的个数为3,各位上数字值最大的是8。
请改正函数fun中的错误,使它能得出正确的结果。
注意:不要改动main函数,不得增行或删行,也不得更改程序的结构。
试题程序:
#include<stdio.h>
int fun(unsigned n, int *zero)
{
int count=0, max=0, t;
do
{
t=n%10;
/**********found**********/
if(t=0)
count++;
if(max<t)
max=t;
n=n/10;
}while(n);
/**********found**********/
zero=count;
return max;
}
main()
{
unsigned n;
int zero, max;
printf("/nInput n(unsigned):");
scanf("%d", &n);
max=fun(n, &zero);
printf("/nThe result:max=%d zero=%d/n", max, zero);
}