C Language Logo
C语言二级在线二级在线
首页选择题程序题成为会员帮助其他科目

统计零个数和最大值

请修改编辑器中的代码,完成以下功能:编写一个程序,统计一个无符号整数中最大数字和数字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);
}

控制台

调试终端

准备就绪