首页
外语
计算机
考研
公务员
职业资格
财经
工程
司法
医学
专升本
自考
实用职业技能
登录
计算机
给定程序MODll.C中函数fun的功能是:统计一个无符号整数中各位数字值为零的个数,通过形参传回主函数;并把该整数中各位上最大的数字值作为函数值返回。例如,若输入无符号整数30800,则数字值为零的个数为3,各位上数字值最大的是8。 请改正函数f
给定程序MODll.C中函数fun的功能是:统计一个无符号整数中各位数字值为零的个数,通过形参传回主函数;并把该整数中各位上最大的数字值作为函数值返回。例如,若输入无符号整数30800,则数字值为零的个数为3,各位上数字值最大的是8。 请改正函数f
admin
2013-03-29
33
问题
给定程序MODll.C中函数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
n=n/10;
}while(n);
/*****************found******************/
zero=count;
return max;
}
main()
{ unsigned n;int zero,max;
printf("\nlnput n(unsigned):");
scanf("%d",&n);
max=fun(n,&zeEo);
printf ("\nThe result:max=%d zero=
%d\n",max,zero);
}
选项
答案
(1)if(t==0) (2)*zero=count;
解析
(1)第一个标识下的if语句是判断t是否为0,而原题给出的“if(t=0)"是将0赋值给t,所以将第一个标识下的“if(t=0)"改为“if(t==0)"。
(2)第二个标识下的“zero=count;"语句,根据fun函数中zero的定义为指针型。所以,第二个标识下“zero=count;"应该改为“*zero=count;"。
转载请注明原文地址:https://jikaoti.com/ti/AIn0FFFM
本试题收录于:
二级C语言题库NCRE全国计算机二级分类
0
二级C语言
NCRE全国计算机二级
相关试题推荐
若有说明语句:charc=’\72’;则变量c
有如下程序main(){charch[2][5]={"6937","8254"},*p[2];inti,j,s=0;for(i=0;i<2;i++)p[i]=ch[i];
对于n个结点的单向链表(无表头结点),需要指针单元的个数至少为______。
以下程序的功能是对从键盘上输入的两个字符串进行比较,然后输出两个字符串中第一个不相同字符的ASCII码值之差。请填空。#include"stdio.h"main(){chara1[20],a2[20];intn=0,t;
以下程序的运行结果是【】。main(){char*k="aeiou";for(;*k;k++)printf("%c",*k);}
长度为n的顺序存储线性表中,当在任何位置上插入一个元素概率都相等时,插入一个元素所需移动元素的平均个数为【】。
以下程序建立一个带有头结点的单向链表,链表结点中的数据通过键盘输入,当输入数据为-1时,表示输入结束(键表头结点的data域不放数据,表空的条件是ph->next==NULL),请填空。#include<stdio.h>structlis
下面程序段的输出为#include"stdio.h"main(){printf("%d\n",12<<2);}
用筛选法可得到2~n(n
用筛选法可得到2~n(n
随机试题
拳是武术的基本手形之一,依据拳眼或拳心的方位将拳形分为()。
以下各项关于银行承兑汇票的描述不正确的是()
触酶是
主动脉瓣关闭不全肥厚型梗阻性心肌病
外毒素经何物处理后可变成类毒素
陈某为自己所有的房屋投保了财产险,保险合同成立后,房屋的危险程度增加,以下说法正确的是()。
财务报表分析的方法主要有()。Ⅰ.估值法Ⅱ.比较分析法Ⅲ.因素分析法Ⅳ.重置成本法
洛克是________的代表,代表作是《教育漫话》。
人格障碍的测量和诊断一般有()
下列关于《论十大关系》的内容表述正确的有
最新回复
(
0
)