统计零个数和最大值
请修改编辑器中的代码,完成以下功能:编写一个程序,统计一个无符号整数中最大数字和数字0的个数,并将结果输出到屏幕上。程序需要从用户输入一个无符号整数,然后计算该整数中最大数字和数字0的出现次数。注意在计算过程中要正确处理数字0的统计,并确保最大数字的计算逻辑正确。 输入格式: 用户输入一个无符号整数。 输出格式: 输出最大数字和数字0的个数,格式为:The result: max=<最大数字> zero=<数字0的个数> 输入输出示例: Input n(unsigned): The result: max=7 zero=1 输出示例: Input n(unsigned): The result: max=7 zero=1 输入示例: 12340567 输入为unsigned int可表示的非负整数。本题do-while使输入0按一位数字处理:最大数字0,零个数1。
#include <stdio.h>
#pragma warning (disable:4996)
int fun(unsigned n, int *zero)
{ int count=0,max=0,t;
do
{ t=n%10;
if(t=0)
count++;
if(max<t) max=t;
n=n/10;
}while(n);
zero=count;
return max;
}
int main(void)
{ unsigned n; int zero,max;
printf("\nInput n(unsigned): "); scanf("%u",&n);
max = fun( n,&zero );
printf("\nThe result: max=%d zero=%d\n",max,zero);
}
控制台
调试终端
