C语言编程>第二十三周 ⑧ 下列给定程序中,函数fun的功能是:统计一个无符合整数中各位数字值为0的个数,通过形参传回主函数,并把该整数中各位上最大的数字值作为函数值返回。

248 阅读3分钟

例题:下列给定程序中,函数fun的功能是:统计一个无符合整数中各位数字值为0的个数,通过形参传回主函数,并把该整数中各位上最大的数字值作为函数值返回。

例如。若输入无符号整数10080,则数字值为0的个数为3,各位上数字值最大的是8。
注意:不要改动main函数,不能增行或删行,也不能更改程序的结构。

代码如下:

#include<stdio.h>
int fun(unsigned m,int*z)
{
	int n=0,max=0,t;
	do
	{
		t=m%10;
		if(t==0)
			n++;
		if(max<t)
			max=t;
		m=m/10;
	}while(m);
	*z=n;
	return max;
}
main()
{
	unsigned m;
	int z,max;
	printf("\nInput m(unsigned):");
	scanf("%d",&m);
	max=fun(m,&z);
	printf("\nThe result:max=%d z=%d\n",max,z);
}

输出运行窗口如下:
在这里插入图片描述
本周其他练习

C语言程序设计专栏

C语言编程>第二十三周 ① 下列给定程序中,函数fun的功能是:求n!(n<20),所求阶乘的值作为函数值返回。例如,若n=5,则应输出120。

C语言编程>第二十三周 ② 请补充fun函数,该函数的功能是:交换数组a中最大和最小两个元素的位置,结果重新保存在原数组中,其它元素位置不变。注意数组a中没有相同元素。

C语言编程>第二十三周 ③ 下列给定程序中,函数fun的功能是:利用插入排序法对字符串中的字符按从小到大的顺序进行排序。插入法的基本算法是:先对字符串中的头两个元素进行排序;然后把第三字符插入到前两个字符中,插入后前三个字符依然有序;再把第四个字符插入到前三个字符中……待排序的字符串已在主函数中赋予。

C语言编程>第二十三周 ④ 请补充fun 函数,该函数的功能是:删除字符数组中比指定字符小的字符,指定字符从键盘输入,结果仍保存在原数组中。

C语言编程>第二十三周 ⑤ 请补充main函数,该函数的功能是:求1~100(不包括100)以内所有素数的平均值。

C语言编程>第二十三周 ⑥ 下列给定程序中函数fun的功能是:删除字符串s中的所有空白字符(包括Tab字符、回车符及换行符)。输入字符串时用 “#”结束输入。

C语言编程>第二十三周 ⑦ 请补充main函数,该函数的功能是:求n!。

C语言编程>第二十三周 ⑧ 下列给定程序中,函数fun的功能是:统计一个无符合整数中各位数字值为0的个数,通过形参传回主函数,并把该整数中各位上最大的数字值作为函数值返回。

越努力越幸运!
加油,奥力给!!!