填空题 给定程序中,函数fun的作用是:统计整型变量m中各数字出现的次数,并存放到数组a中,其中:a[0]存放0出现的次数,a[1]存放1出现的次数,……a[9]存放9出现的次数。
例如,若m为14579233,则输出结果应为:0,1,1,2,1,1,0,1,0,1,
请在程序的下划线处填入正确的内容并把下划线删除,使程序得出正确的结果。
注意:不得增行或删行,也不得更改程序的结构!
试题程序:
#include<stdio.h>
void fun(int m,int a[10])
{int i;
for(i=0;i<10;i++)
/*********found*********/
1=0;
while(m>0)
{
/*********found*********/
i= 2;
a[i]++;
/*********found*********/
m= 3;
}
}
main()
{int m,a[10],i;
printf("请输入一个整数:”);
scanf("%d",&m);
fun(m,a);
for(i=0;i<10;i++)
printf("%d,",a[i]);
printf("/n");
}
【正确答案】
【答案解析】(1)a[i] (2)m%10 (3)m/10 [解析]
数组a各元素初始化为0,用求余和整除相结合的方法得到数字的每一位数字,并用它做为数组a的下标,相应元素加1。
填空1:数组a的10个元素赋值为0。
填空2:m%10可得到数m的最后一位数字。
填空3:m/10可使数字截短,即去掉最后一位。