统计一个无符号整数中各位数字值为零的个数
相关主题
- 1、下载文档前请自行甄别文档内容的完整性,平台不提供额外的编辑、内容补充、找答案等附加服务。
- 2、"仅部分预览"的文档,不可在线预览部分如存在完整性等问题,可反馈申请退款(可完整预览的文档不适用该条件!)。
- 3、如文档侵犯您的权益,请联系客服反馈,我们会尽快为您处理(人工客服工作时间:9:00-18:30)。
下列给定程序中,函数fun实现的功能是:统计一个无符号整数中各位数字值为零的个数,通过形参传回主函数;并把该整数中各位上最大的数字值作为函数值返回。例如,若输入无符号整数30800,则数字值为零的个数为3,各位上数字值最大的是8。
请改正函数fun中的错误,使它能得出正确的结果。
注意:不要改动main函数,不得增行或删行,也不得更改程序的结构。
试题程序:
#include
int fun(unsigned n,int *zero)
{
int count=0 , max=0 , t;
do
{
t=n%10;
/********found********/
if (t=0)
count++;
if (max 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); } (1)错误:if ( t=0) 正确:if(t==0) (2)错误:zero=count 正确:*zero=count;